diff --git a/.metadata/.bak_0.log b/.metadata/.bak_0.log deleted file mode 100644 index 3d63a5e..0000000 --- a/.metadata/.bak_0.log +++ /dev/null @@ -1,14220 +0,0 @@ -!SESSION 2015-11-26 21:19:17.303 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -This is a continuation of log file D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\.metadata\.bak_0.log -Created Time: 2015-11-26 22:01:11.109 - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:11.109 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:11.361 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:12.103 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:12.550 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:13.031 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:13.383 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:13.994 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:14.611 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:17.425 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:25.390 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:26.258 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:26.941 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:28.278 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:01:29.505 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-26 22:01:54.825 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:11.331 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:11.477 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:11.710 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:12.519 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:12.778 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:13.188 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:22.167 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:22.724 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:22.917 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:22.917 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:23.102 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:02:23.863 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:09.232 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:09.524 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:15.658 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:19.051 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:19.887 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:20.010 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:20.610 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:06:21.254 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:07:01.902 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:07:02.220 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:07:02.445 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:07:02.663 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:07:56.291 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:07:56.866 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:07:57.782 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-26 22:08:08.655 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:06.071 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:07.785 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:08.719 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:08.895 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:09.064 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-26 22:12:21.962 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:29.467 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:30.070 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:45.533 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:49.751 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:52.374 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:53.005 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:55.902 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:58.022 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:12:58.614 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:16:04.992 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:16:05.591 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:16:05.932 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-26 22:16:06.242 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-26 22:19:32.549 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) -!SESSION 2015-11-27 19:45:13.004 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-27 19:45:41.599 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-27 19:45:41.641 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 19:55:08.578 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 19:55:09.903 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 19:55:11.204 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 19:55:11.520 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 19:55:11.906 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 19:55:13.923 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 19:57:14.403 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 19:58:04.295 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:03:51.249 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:03:53.174 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:03:56.574 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:05:05.191 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:05:38.530 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:04.830 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:07.529 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:08.604 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:08.855 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:09.062 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:27.663 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:44.443 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:46.829 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:47.065 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:47.332 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:48.170 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:48.637 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:48.704 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:48.932 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:49.112 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:49.397 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:49.524 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:49.654 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:49.829 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:49.933 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:50.204 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:50.301 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:52.631 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:53.199 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:53.263 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:53.308 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:53.638 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:53.891 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:54.162 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:55.325 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:57.999 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:58.394 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:59.142 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:59.555 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:59.620 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:59.706 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:06:59.979 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:00.125 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:00.314 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:00.536 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:00.759 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:00.945 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:01.510 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:05.128 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:05.453 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:05.878 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:05.908 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:06.226 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:06.467 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:19.382 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:19.657 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:20.980 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:21.340 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:21.429 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:23.444 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:23.687 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:25.122 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:25.249 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:25.743 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:27.338 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:29.843 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:30.001 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:30.180 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:30.660 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:07:31.004 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:22.328 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:23.851 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:24.005 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:24.301 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:24.499 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:24.694 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:24.948 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:25.146 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:25.549 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:25.802 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:25.985 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:28.614 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:28.893 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:29.272 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:29.561 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:34.333 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:34.570 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:35.096 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:35.382 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:35.570 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:35.713 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:36.466 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:36.909 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:37.221 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:38.994 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:39.096 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:39.281 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:39.521 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:39.729 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:40.496 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:40.745 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:40.963 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:41.152 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:41.417 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:41.705 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:41.930 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:42.141 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:42.622 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:43.691 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:43.998 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:44.414 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:44.763 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:45.054 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:45.324 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:45.514 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:45.780 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:46.074 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:46.275 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:46.450 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:46.561 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:08:49.688 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:15.818 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:16.487 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:16.634 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:16.798 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:16.944 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:18.011 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:18.866 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:19.074 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:19.296 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:19.507 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:19.728 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:19.972 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:20.438 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:20.640 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:30.629 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:31.127 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:31.242 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:32.781 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:40.331 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:41.000 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:50.236 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:50.470 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:09:50.726 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:10:29.280 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:10:31.267 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:10:36.066 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:10:36.251 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:11:14.929 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:11:17.153 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:11:17.961 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:00.503 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:01.613 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:02.248 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:02.850 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:03.373 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:03.795 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:04.011 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:04.278 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:04.464 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:04.608 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:04.711 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:04.932 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:05.011 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:05.323 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:05.634 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:05.765 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:05.827 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:06.043 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:06.333 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:06.845 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:07.023 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:07.576 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:07.790 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:08.010 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:08.208 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:08.448 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:09.528 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:09.805 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:10.054 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:10.186 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:11.239 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:23.133 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:30.473 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:30.765 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:38.341 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:39.704 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:41.687 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:45.162 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:47.425 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:47.659 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:48.559 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:48.895 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:49.362 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:49.578 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:49.669 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:49.905 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:50.137 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:50.324 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:50.458 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:51.055 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:51.529 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:51.722 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:51.942 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:52.289 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:52.388 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:52.447 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:52.503 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:52.809 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:52.920 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:53.494 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:54.034 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:54.907 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:56.116 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:57.205 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:57.508 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:58.432 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:12:59.828 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:01.690 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:02.672 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:02.858 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:03.069 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:30.520 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:31.428 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:32.453 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:33.679 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:53.560 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:53.619 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:13:53.654 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:14:01.110 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:14:36.302 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:14:37.033 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:16:05.686 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:16:07.001 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:17:45.251 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:17:48.601 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:17:53.213 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:17.379 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:18.047 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:20.520 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:21.367 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:37.279 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:37.472 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:37.858 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:18:37.906 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:22:10.332 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:22:12.487 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:22:12.639 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:23:12.013 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:23:15.183 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:25:16.546 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:26:54.599 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:28:11.612 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:28:18.398 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:28:27.743 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:44.649 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:45.344 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:47.912 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:48.012 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:49.674 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:50.780 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:51.353 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:52.142 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:52.282 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:52.504 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:52.515 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:52.767 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:52.996 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:53.036 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:53.536 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:54.116 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:54.740 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:56.437 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:57.550 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:58.765 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:58.993 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:38:59.290 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:06.345 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:07.234 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:07.822 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:08.392 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:09.200 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:09.794 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:10.537 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:10.795 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:11.021 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:11.194 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:12.434 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:12.925 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:14.029 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:14.212 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:14.404 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:14.620 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:14.810 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:15.030 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:15.191 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:17.020 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:34.538 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:35.235 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:35.776 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:35.867 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:38.440 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:39:38.952 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:40:53.616 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:40:55.264 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:40:55.553 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:41:03.938 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:41:04.280 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:42:11.047 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:42:18.273 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:42:20.560 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:44:16.919 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:45:12.496 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:19.010 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:21.613 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:23.215 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:23.648 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:23.913 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:24.091 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:24.358 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:24.907 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:25.077 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:25.628 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:26.037 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:26.323 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:26.540 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:26.696 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:27.129 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:27.621 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:27.952 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:28.206 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:28.836 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:29.947 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:30.584 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:31.923 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:32.207 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:34.268 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:34.662 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:34.924 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:35.231 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:35.696 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:36.109 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:36.555 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:37.052 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:37.401 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:48.054 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:48.487 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:50.281 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:50.801 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:51.294 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:55.638 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:57.905 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:45:59.582 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:46:01.088 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:46:01.422 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:46:03.717 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:46:09.344 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:46:11.878 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:09.949 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:11.418 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:15.614 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:17.541 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:17.867 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:18.554 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:26.954 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:30.277 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:31.323 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:31.574 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:32.039 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:32.096 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:39.109 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:40.057 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:41.037 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:41.301 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:42.577 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:42.956 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:49.552 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:53:54.436 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:00.842 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:01.437 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:01.810 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:02.316 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:02.509 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:03.600 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:03.811 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:04.009 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:04.029 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:07.315 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:13.957 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:14.038 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:14.392 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:16.366 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:16.441 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:17.191 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:17.918 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:18.530 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:19.068 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:20.242 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:20.843 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:21.370 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:21.898 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:22.277 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:22.772 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:23.057 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 20:54:23.880 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:56:52.600 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:58:14.186 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:58:15.124 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:58:16.648 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:58:18.177 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:58:20.782 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 20:58:22.886 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 21:03:05.832 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 21:03:06.277 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 21:03:52.449 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-27 21:07:27.680 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 21:07:48.763 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 21:09:12.584 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-27 21:09:13.918 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 01:05:41.613 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 01:05:44.151 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 01:05:44.343 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 01:16:05.340 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) -!SESSION 2015-11-28 15:59:27.160 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-28 15:59:54.084 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-28 15:59:54.216 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 16:02:05.449 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:07.751 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:09.103 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:09.912 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:10.227 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:10.602 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:10.912 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:11.340 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:11.730 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:12.066 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:12.336 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:12.595 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:12.849 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:13.052 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:13.235 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:13.674 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:13.940 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:14.250 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:14.582 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:15.338 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:16.458 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:16.700 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:16.981 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:28.901 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 16:04:29.580 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface 2 0 2015-11-28 20:53:46.036 -!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation. -!SUBENTRY 1 org.eclipse.jface 2 0 2015-11-28 20:53:46.036 -!MESSAGE A conflict occurred for ALT+SHIFT+ARROW_DOWN: -Binding(ALT+SHIFT+ARROW_DOWN, - ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.select.last,Restore Last Selection, - Restore last selection, - Category(org.eclipse.ui.category.edit,Edit,null,true), - org.eclipse.ui.internal.MakeHandlersGo@648639f1, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.jdt.ui.javaEditorScope,,,system) -Binding(ALT+SHIFT+ARROW_DOWN, - ParameterizedCommand(Command(org.eclipse.mylyn.tasks.ui.command.markTaskReadGoToNextUnread,Mark Task Read and Go To Next Unread Task, - , - Category(org.eclipse.mylyn.tasks.ui.commands,Task Repositories,null,true), - org.eclipse.ui.internal.MakeHandlersGo@210e971e, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.mylyn.tasks.ui.views.tasks,,,system) -!SUBENTRY 1 org.eclipse.jface 2 0 2015-11-28 20:53:46.036 -!MESSAGE A conflict occurred for ALT+ARROW_DOWN: -Binding(ALT+ARROW_DOWN, - ParameterizedCommand(Command(org.eclipse.mylyn.tasks.ui.command.goToNextUnread,Go To Next Unread Task, - , - Category(org.eclipse.ui.category.navigate,Navigate,null,true), - org.eclipse.ui.internal.MakeHandlersGo@74f827ad, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.mylyn.tasks.ui.views.tasks,,,system) -Binding(ALT+ARROW_DOWN, - ParameterizedCommand(Command(org.eclipse.ui.edit.text.moveLineDown,Move Lines Down, - Moves the selected lines down, - Category(org.eclipse.ui.category.textEditor,Text Editing,Text Editing Commands,true), - org.eclipse.ui.internal.MakeHandlersGo@1b9785aa, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.ui.textEditorScope,,,system) -!SUBENTRY 1 org.eclipse.jface 2 0 2015-11-28 20:53:46.036 -!MESSAGE A conflict occurred for ALT+SHIFT+ARROW_UP: -Binding(ALT+SHIFT+ARROW_UP, - ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.select.enclosing,Select Enclosing Element, - Expand selection to include enclosing element, - Category(org.eclipse.ui.category.edit,Edit,null,true), - org.eclipse.ui.internal.MakeHandlersGo@340f4723, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.jdt.ui.javaEditorScope,,,system) -Binding(ALT+SHIFT+ARROW_UP, - ParameterizedCommand(Command(org.eclipse.mylyn.tasks.ui.command.markTaskReadGoToPreviousUnread,Mark Task Read and Go To Previous Unread Task, - , - Category(org.eclipse.mylyn.tasks.ui.commands,Task Repositories,null,true), - org.eclipse.ui.internal.MakeHandlersGo@6193a9e2, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.mylyn.tasks.ui.views.tasks,,,system) -!SUBENTRY 1 org.eclipse.jface 2 0 2015-11-28 20:53:46.036 -!MESSAGE A conflict occurred for INSERT: -Binding(INSERT, - ParameterizedCommand(Command(org.eclipse.mylyn.tasks.ui.command.new.local.task,New Local Task, - , - Category(org.eclipse.mylyn.tasks.ui.commands,Task Repositories,null,true), - org.eclipse.ui.internal.MakeHandlersGo@347074a9, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.mylyn.tasks.ui.views.tasks,,,system) -Binding(INSERT, - ParameterizedCommand(Command(org.eclipse.ui.edit.text.toggleOverwrite,Toggle Overwrite, - Toggle overwrite mode, - Category(org.eclipse.ui.category.textEditor,Text Editing,Text Editing Commands,true), - org.eclipse.ui.internal.MakeHandlersGo@136d1d58, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.ui.textEditorScope,,,system) -!SUBENTRY 1 org.eclipse.jface 2 0 2015-11-28 20:53:46.036 -!MESSAGE A conflict occurred for ALT+SHIFT+U: -Binding(ALT+SHIFT+U, - ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.remove.occurrence.annotations,Remove Occurrence Annotations, - Removes the occurrence annotations from the current editor, - Category(org.eclipse.jdt.ui.category.source,Source,Java Source Actions,true), - org.eclipse.ui.internal.MakeHandlersGo@5d956649, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.jdt.ui.javaEditorScope,,,system) -Binding(ALT+SHIFT+U, - ParameterizedCommand(Command(org.eclipse.mylyn.tasks.ui.command.markTaskUnread,Mark Task Unread, - , - Category(org.eclipse.mylyn.tasks.ui.commands,Task Repositories,null,true), - org.eclipse.ui.internal.MakeHandlersGo@21b508a0, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.mylyn.tasks.ui.views.tasks,,,system) -!SUBENTRY 1 org.eclipse.jface 2 0 2015-11-28 20:53:46.036 -!MESSAGE A conflict occurred for ALT+ARROW_UP: -Binding(ALT+ARROW_UP, - ParameterizedCommand(Command(org.eclipse.mylyn.tasks.ui.command.goToPreviousUnread,Go To Previous Unread Task, - , - Category(org.eclipse.ui.category.navigate,Navigate,null,true), - org.eclipse.ui.internal.MakeHandlersGo@705a8dbc, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.mylyn.tasks.ui.views.tasks,,,system) -Binding(ALT+ARROW_UP, - ParameterizedCommand(Command(org.eclipse.ui.edit.text.moveLineUp,Move Lines Up, - Moves the selected lines up, - Category(org.eclipse.ui.category.textEditor,Text Editing,Text Editing Commands,true), - org.eclipse.ui.internal.MakeHandlersGo@16d7f503, - ,,true),null), - org.eclipse.ui.defaultAcceleratorConfiguration, - org.eclipse.ui.textEditorScope,,,system) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 20:55:48.082 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 20:55:48.644 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 20:55:49.694 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 20:56:50.012 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 20:58:00.467 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 20:58:00.563 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 20:59:56.709 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 20:59:59.853 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:01.390 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:03.574 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:04.128 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:04.768 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:04.986 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:05.412 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:05.429 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:06.073 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:08.073 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:08.834 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:10.323 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:10.975 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:11.321 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:11.582 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:11.919 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:12.430 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:12.710 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:13.229 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:13.485 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:13.703 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:14.098 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:14.387 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:14.614 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:14.890 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:15.352 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:15.626 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:15.735 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:15.921 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:16.397 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:17.330 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:17.747 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:18.013 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:18.522 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:19.746 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:20.205 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:24.556 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:25.109 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:25.402 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:25.697 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:26.060 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:26.363 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:26.600 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:00:26.824 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 21:03:11.229 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 21:03:12.766 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:07:16.518 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-28 21:07:17.118 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 21:10:50.411 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 21:48:04.113 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-28 22:53:07.342 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 00:48:56.112 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 00:48:56.347 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -!SESSION 2015-11-29 17:59:18.759 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-29 17:59:42.793 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-29 17:59:42.843 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:14.678 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:15.069 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:15.149 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:15.261 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:15.462 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:15.689 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:15.888 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:16.423 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:16.671 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:16.874 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:17.083 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:17.271 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:17.477 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:17.669 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:17.836 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:18.015 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:18.467 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:18.568 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:18.668 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:18.986 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:19.225 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:19.914 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:20.219 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:20.466 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:20.665 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:20.859 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:21.038 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:21.261 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:21.457 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:22.188 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:22.766 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:23.070 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:23.338 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:23.530 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:23.731 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:23.923 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:24.378 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:51:24.600 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:52:07.632 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:52:08.243 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:52:08.885 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:56:52.862 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-29 20:57:02.859 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:57:55.427 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 20:57:56.083 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:00:10.264 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:00:58.678 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:00:59.038 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:00.598 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:00.764 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:00.784 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:01.111 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:01.523 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:01.581 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:02.340 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:02.566 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:02.595 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:02.852 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:04.062 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:04.068 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:05.248 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:05.358 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:06.911 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:01:07.985 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-29 21:30:41.639 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:37.924 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:38.688 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:38.917 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:40.169 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:40.592 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:40.817 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:41.101 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:41.159 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:41.336 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:41.472 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:41.482 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:42.039 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:42.168 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:42.358 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:42.464 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:42.561 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:42.568 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:42.942 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.015 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.065 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.101 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.393 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.454 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.669 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.735 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.927 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:43.955 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.179 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.386 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.557 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.589 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.613 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.645 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.812 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:44.855 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:45.008 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:45.067 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:45.338 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:45.369 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:45.741 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-29 21:33:45.808 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-29 21:43:27.386 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) -!SESSION 2015-11-30 17:19:41.356 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-30 17:20:01.860 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-11-30 17:20:01.961 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:24:50.287 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:24:50.803 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:24:50.901 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:29:29.922 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:29:30.616 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-30 19:36:33.327 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:37:11.357 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:43:28.925 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-30 19:51:05.215 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:57:26.083 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:57:26.272 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 2 0 2015-11-30 19:57:27.324 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-30 20:00:02.213 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-30 20:27:03.890 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryMethod.getAttachedJavadoc(BinaryMethod.java:639) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) - -!ENTRY org.eclipse.jface.text 4 0 2015-11-30 21:03:02.484 -!MESSAGE Unexpected runtime error while computing a text hover -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryField.getAttachedJavadoc(BinaryField.java:121) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo(JavadocHover.java:619) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.internalGetHoverInfo(JavadocHover.java:565) - at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover.getHoverInfo2(JavadocHover.java:557) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163) - at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:129) - at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:85) - at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:166) -!SESSION 2015-12-02 20:47:16.101 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-02 20:47:35.209 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-02 20:47:35.535 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.jface.text 2 0 2015-12-02 21:57:22.898 -!MESSAGE -!STACK 0 -java.lang.StringIndexOutOfBoundsException: String index out of range: -10 - at java.lang.String.checkBounds(Unknown Source) - at java.lang.String.(Unknown Source) - at org.eclipse.jdt.internal.core.JavaElement.getURLContents(JavaElement.java:786) - at org.eclipse.jdt.internal.core.BinaryType.getJavadocContents(BinaryType.java:1037) - at org.eclipse.jdt.internal.core.BinaryType.getAttachedJavadoc(BinaryType.java:995) - at org.eclipse.jdt.internal.ui.text.javadoc.JavadocContentAccess2.getHTMLContent(JavadocContentAccess2.java:463) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.extractJavadoc(ProposalInfo.java:95) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.computeInfo(ProposalInfo.java:75) - at org.eclipse.jdt.internal.ui.text.java.ProposalInfo.getInfo(ProposalInfo.java:58) - at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getAdditionalProposalInfo(AbstractJavaCompletionProposal.java:555) - at org.eclipse.jface.text.contentassist.AdditionalInfoController$3.run(AdditionalInfoController.java:106) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.jst.jsp.core 2 2 2015-12-02 22:12:54.563 -!MESSAGE Taglib Index ZipException: D:/Z - Norbi cucca/0 Projektek/TheButtonMCAutoFlairProto/Spigot plugin/TheButtonAutoFlair/MANIFEST.MF error in opening zip file - -!ENTRY org.eclipse.jdt.core 4 0 2015-12-02 22:12:55.194 -!MESSAGE Invalid ZIP archive: MANIFEST.MF [in TheButtonAutoFlair] - -!ENTRY org.eclipse.jdt.core 4 0 2015-12-02 22:13:59.145 -!MESSAGE Invalid ZIP archive: MANIFEST.MF [in TheButtonAutoFlair] - -!ENTRY org.eclipse.jdt.core 4 0 2015-12-02 22:15:14.528 -!MESSAGE Invalid ZIP archive: MANIFEST.MF [in TheButtonAutoFlair] -!SESSION 2015-12-02 22:16:23.837 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-02 22:16:55.612 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-02 22:16:55.613 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. -!SESSION 2015-12-04 17:34:42.348 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 17:35:05.399 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 17:35:05.533 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.help.base 4 0 2015-12-04 17:41:30.493 -!MESSAGE Help index declared, but missing for plugin org.eclipse.rse.doc.user. -!SESSION 2015-12-04 17:44:48.552 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:45:03.497 -!MESSAGE Unable to find Action Set: adt.actionSet.wizards - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:45:03.501 -!MESSAGE Unable to find Action Set: adt.actionSet.avdManager - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:45:03.501 -!MESSAGE Unable to find Action Set: adt.actionSet.lint - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:45:03.501 -!MESSAGE Unable to find Action Set: adt.actionSet.refactorings - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 17:45:08.390 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 17:45:08.391 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.ui 2 2 2015-12-04 17:45:14.601 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.base, page: com.android.ide.eclipse.common.preferences.UsagePreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 17:45:14.601 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.PreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 17:45:14.602 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.LogCatPreferencePage) - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:51:46.749 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:51:46.749 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:51:46.749 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:51:46.749 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.749 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:51:46.755 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:51:46.756 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:51:46.756 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:51:46.756 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:51:46.756 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:53:56.807 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:53:56.808 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:53:56.808 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:53:56.808 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.808 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:53:56.810 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:53:56.810 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:53:56.810 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:53:56.810 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:53:56.810 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:54:07.884 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:54:07.884 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:54:07.884 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:54:07.884 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.884 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:54:07.886 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:54:07.886 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.osgi 3.10.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:54:07.886 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:54:07.886 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:54:07.886 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] -!SESSION 2015-12-04 17:57:44.615 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:57:56.637 -!MESSAGE Unable to find Action Set: adt.actionSet.wizards - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:57:56.642 -!MESSAGE Unable to find Action Set: adt.actionSet.avdManager - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:57:56.642 -!MESSAGE Unable to find Action Set: adt.actionSet.lint - -!ENTRY org.eclipse.ui 4 4 2015-12-04 17:57:56.642 -!MESSAGE Unable to find Action Set: adt.actionSet.refactorings - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 17:58:01.586 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 17:58:01.586 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 17:58:16.812 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: No repository found at http://mvnrepository.com/artifact/org.eclipse/osgi/3.10.0-v20140606-1445. - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.fail(AbstractRepositoryManager.java:393) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:675) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1000 2015-12-04 17:58:16.814 -!MESSAGE No repository found at http://mvnrepository.com/artifact/org.eclipse/osgi/3.10.0-v20140606-1445. - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 17:58:26.450 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: No repository found at file:/D:/Downloads/osgi-3.10.0-v20140606-1445.jar. - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.fail(AbstractRepositoryManager.java:393) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:675) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1000 2015-12-04 17:58:26.451 -!MESSAGE No repository found at file:/D:/Downloads/osgi-3.10.0-v20140606-1445.jar. - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:58:40.937 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:58:40.938 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.core.resources 3.9.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.core.resources 3.9.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.core.resources 3.9.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:58:40.938 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:58:40.938 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.938 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 17:58:40.947 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:58:40.947 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle org.eclipse.core.resources 3.9.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle org.eclipse.core.resources 3.9.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle org.eclipse.core.resources 3.9.0' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:58:40.947 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 17:58:40.947 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 17:58:40.947 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:00:30.954 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.base, page: com.android.ide.eclipse.common.preferences.UsagePreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:00:30.955 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.PreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:00:30.956 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.LogCatPreferencePage) - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 18:01:17.478 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: No repository found at file:/D:/Downloads/osgi-3.10.0-v20140606-1445.jar. - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.fail(AbstractRepositoryManager.java:393) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:636) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1000 2015-12-04 18:01:17.478 -!MESSAGE No repository found at file:/D:/Downloads/osgi-3.10.0-v20140606-1445.jar. - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 18:03:48.987 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: Unable to read repository at http://projects.eclipse.org/projects/birt. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:128) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -Caused by: java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - ... 10 more -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1002 2015-12-04 18:03:48.988 -!MESSAGE Unable to read repository at http://projects.eclipse.org/projects/birt. -!STACK 0 -java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -!SESSION 2015-12-04 18:05:34.424 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:05:44.729 -!MESSAGE Unable to find Action Set: adt.actionSet.wizards - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:05:44.735 -!MESSAGE Unable to find Action Set: adt.actionSet.avdManager - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:05:44.736 -!MESSAGE Unable to find Action Set: adt.actionSet.lint - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:05:44.737 -!MESSAGE Unable to find Action Set: adt.actionSet.refactorings - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:05:51.528 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:05:51.529 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:06:21.758 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.base, page: com.android.ide.eclipse.common.preferences.UsagePreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:06:21.758 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.PreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:06:21.759 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.LogCatPreferencePage) - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 18:06:34.092 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: Unable to read repository at http://projects.eclipse.org/projects/birt. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:128) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -Caused by: java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - ... 10 more -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1002 2015-12-04 18:06:34.093 -!MESSAGE Unable to read repository at http://projects.eclipse.org/projects/birt. -!STACK 0 -java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:06:48.770 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:06:48.770 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:06:48.770 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:06:48.770 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.770 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:06:48.778 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:06:48.779 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:06:48.779 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:06:48.779 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:06:48.779 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:07:58.050 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:07:58.050 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.050 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.050 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.050 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.050 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:07:58.050 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.050 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.050 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:07:58.050 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.051 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.051 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:07:58.052 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:07:58.052 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:07:58.052 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:07:58.052 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:07:58.052 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] -!SESSION 2015-12-04 18:08:04.903 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:08:20.287 -!MESSAGE Unable to find Action Set: adt.actionSet.wizards - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:08:20.291 -!MESSAGE Unable to find Action Set: adt.actionSet.avdManager - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:08:20.291 -!MESSAGE Unable to find Action Set: adt.actionSet.lint - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:08:20.292 -!MESSAGE Unable to find Action Set: adt.actionSet.refactorings - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:08:25.425 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:08:25.427 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 18:08:36.422 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: Unable to read repository at http://projects.eclipse.org/projects/birt. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:128) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -Caused by: java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - ... 10 more -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1002 2015-12-04 18:08:36.425 -!MESSAGE Unable to read repository at http://projects.eclipse.org/projects/birt. -!STACK 0 -java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:08:51.690 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:08:51.690 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:08:51.690 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:08:51.690 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.690 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:08:51.698 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:08:51.699 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.699 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.699 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.699 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.699 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:08:51.700 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.700 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.700 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:08:51.700 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.700 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:08:51.700 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] -!SESSION 2015-12-04 18:10:17.984 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:10:33.263 -!MESSAGE Unable to find Action Set: adt.actionSet.wizards - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:10:33.268 -!MESSAGE Unable to find Action Set: adt.actionSet.avdManager - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:10:33.269 -!MESSAGE Unable to find Action Set: adt.actionSet.lint - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:10:33.269 -!MESSAGE Unable to find Action Set: adt.actionSet.refactorings - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:10:38.473 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:10:38.474 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 18:10:49.549 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: Unable to read repository at http://projects.eclipse.org/projects/birt. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:128) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -Caused by: java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - ... 10 more -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1002 2015-12-04 18:10:49.551 -!MESSAGE Unable to read repository at http://projects.eclipse.org/projects/birt. -!STACK 0 -java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:11:05.568 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:11:05.568 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.568 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.568 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.568 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.568 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:11:05.568 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.568 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.569 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:11:05.569 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.569 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.569 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:11:05.578 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:11:05.578 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:11:05.578 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:11:05.578 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:11:05.578 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] -!SESSION 2015-12-04 18:14:44.644 ----------------------------------------------- -eclipse.buildId=M20130204-1200 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:15:04.134 -!MESSAGE Unable to find Action Set: adt.actionSet.wizards - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:15:04.169 -!MESSAGE Unable to find Action Set: adt.actionSet.avdManager - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:15:04.170 -!MESSAGE Unable to find Action Set: adt.actionSet.lint - -!ENTRY org.eclipse.ui 4 4 2015-12-04 18:15:04.170 -!MESSAGE Unable to find Action Set: adt.actionSet.refactorings - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:15:10.128 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:15:10.129 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 18:15:21.357 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: Unable to read repository at http://projects.eclipse.org/projects/birt. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:128) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -Caused by: java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - ... 10 more -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1002 2015-12-04 18:15:21.359 -!MESSAGE Unable to read repository at http://projects.eclipse.org/projects/birt. -!STACK 0 -java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:15:36.465 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:15:36.465 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:15:36.466 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:15:36.466 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.466 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.equinox.p2.operations 4 0 2015-12-04 18:15:36.472 -!MESSAGE Operation details -!SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:15:36.472 -!MESSAGE Cannot complete the install because one or more required items could not be found. -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE Software being installed: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.0.20150526-2032 (org.eclipse.m2e.core 1.6.0.20150526-2032) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.1.20150625-2338 (org.eclipse.m2e.core 1.6.1.20150625-2338) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE Missing requirement: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core 1.6.2.20150902-0002) requires 'bundle com.google.guava [14.0.1,16.0.0)' but it could not be found -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:15:36.472 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE From: Maven Integration for Eclipse 1.6.2.20150902-0002 (org.eclipse.m2e.core.ui 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE To: bundle org.eclipse.m2e.core [1.6.0,1.7.0) -!SUBENTRY 2 org.eclipse.equinox.p2.director 4 1 2015-12-04 18:15:36.472 -!MESSAGE Cannot satisfy dependency: -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE From: m2e - Maven Integration for Eclipse (includes Incubating components) 1.6.2.20150902-0002 (org.eclipse.m2e.feature.feature.group 1.6.2.20150902-0002) -!SUBENTRY 3 org.eclipse.equinox.p2.director 4 0 2015-12-04 18:15:36.472 -!MESSAGE To: org.eclipse.m2e.core.ui [1.6.2.20150902-0002] - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:18:41.739 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.base, page: com.android.ide.eclipse.common.preferences.UsagePreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:18:41.740 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.PreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:18:41.740 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.LogCatPreferencePage) - -!ENTRY org.eclipse.equinox.p2.core 4 0 2015-12-04 18:19:04.072 -!MESSAGE Provisioning exception -!STACK 1 -org.eclipse.equinox.p2.core.ProvisionException: Unable to read repository at http://projects.eclipse.org/projects/birt. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:128) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) -Caused by: java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - ... 10 more -!SUBENTRY 1 org.eclipse.equinox.p2.metadata.repository 4 1002 2015-12-04 18:19:04.072 -!MESSAGE Unable to read repository at http://projects.eclipse.org/projects/birt. -!STACK 0 -java.io.IOException: http://projects.eclipse.org/projects/birt is not a valid repository location. - at org.eclipse.equinox.internal.p2.metadata.repository.SimpleMetadataRepositoryFactory.load(SimpleMetadataRepositoryFactory.java:102) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:758) - at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:651) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) - at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.doLoad(LoadMetadataRepositoryJob.java:117) - at org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob.runModal(LoadMetadataRepositoryJob.java:102) - at org.eclipse.equinox.internal.p2.ui.sdk.PreloadingRepositoryHandler$2.runModal(PreloadingRepositoryHandler.java:83) - at org.eclipse.equinox.p2.operations.ProvisioningJob.run(ProvisioningJob.java:177) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) - -!ENTRY org.eclipse.equinox.p2.touchpoint.natives 4 0 2015-12-04 18:26:52.353 -!MESSAGE org.eclipse.equinox.internal.p2.touchpoint.natives.actions.UnzipAction error unzipping zipfile: D:\Downloads\eclipse-jee-juno-SR2-win32-x86_64\eclipse\p2\org.eclipse.equinox.p2.core\cache\binary\epp.package.jee.executable.win32.win32.x86_64_4.4.2.20150219-0708destination: D:\Downloads\eclipse-jee-juno-SR2-win32-x86_64\eclipse - -!ENTRY org.eclipse.equinox.p2.touchpoint.natives 4 0 2015-12-04 18:26:52.554 -!MESSAGE org.eclipse.equinox.internal.p2.touchpoint.natives.actions.UnzipAction error unzipping zipfile: D:\Downloads\eclipse-jee-juno-SR2-win32-x86_64\eclipse\p2\org.eclipse.equinox.p2.core\cache\binary\org.eclipse.platform.ide.executable.win32.win32.x86_64_4.4.2.M20150204-1700destination: D:\Downloads\eclipse-jee-juno-SR2-win32-x86_64\eclipse - -!ENTRY org.eclipse.equinox.p2.touchpoint.natives 4 0 2015-12-04 18:26:52.735 -!MESSAGE org.eclipse.equinox.internal.p2.touchpoint.natives.actions.UnzipAction error unzipping zipfile: D:\Downloads\eclipse-jee-juno-SR2-win32-x86_64\eclipse\p2\org.eclipse.equinox.p2.core\cache\binary\org.eclipse.rcp.configuration_root.win32.win32.x86_64_1.0.3.v20150204-1745destination: D:\Downloads\eclipse-jee-juno-SR2-win32-x86_64\eclipse -!SESSION 2015-12-04 18:27:53.304 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:29:25.593 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 18:29:25.594 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:31:49.549 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.base, page: com.android.ide.eclipse.common.preferences.UsagePreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:31:49.550 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.PreferencePage) - -!ENTRY org.eclipse.ui 2 2 2015-12-04 18:31:49.550 -!MESSAGE Invalid preference category path: com.android.ide.eclipse.preferences.main (bundle: com.android.ide.eclipse.ddms, page: com.android.ide.eclipse.ddms.preferences.LogCatPreferencePage) - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:50:31.696 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:50:31.725 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:50:34.085 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:50:34.109 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:50:35.484 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:50:35.490 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:53:18.208 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:53:18.213 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.wst.sse.core 4 4 2015-12-04 18:55:16.461 -!MESSAGE Invalid thread access -!STACK 0 -org.eclipse.swt.SWTException: Invalid thread access - at org.eclipse.swt.SWT.error(SWT.java:4441) - at org.eclipse.swt.SWT.error(SWT.java:4356) - at org.eclipse.swt.SWT.error(SWT.java:4327) - at org.eclipse.swt.widgets.Widget.error(Widget.java:476) - at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:367) - at org.eclipse.swt.widgets.Table.setRedraw(Table.java:4784) - at org.eclipse.jface.viewers.AbstractTableViewer.inputChanged(AbstractTableViewer.java:562) - at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:292) - at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1675) - at org.eclipse.m2e.editor.composites.ListEditorComposite.setInput(ListEditorComposite.java:135) - at org.eclipse.m2e.editor.composites.DependenciesComposite.setDependenciesInput(DependenciesComposite.java:823) - at org.eclipse.m2e.editor.composites.DependenciesComposite.loadData(DependenciesComposite.java:588) - at org.eclipse.m2e.editor.pom.DependenciesPage.loadData(DependenciesPage.java:94) - at org.eclipse.m2e.editor.pom.MavenPomEditorPage$1.modelChanged(MavenPomEditorPage.java:137) - at org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel.fireModelChanged(AbstractStructuredModel.java:526) - at org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel.internalModelChanged(AbstractStructuredModel.java:837) - at org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel.changedModel(AbstractStructuredModel.java:361) - at org.eclipse.wst.xml.core.internal.document.DOMModelImpl.changedModel(DOMModelImpl.java:171) - at org.eclipse.m2e.core.ui.internal.editing.PomEdits.performOnDOMDocument(PomEdits.java:518) - at org.eclipse.m2e.editor.dialogs.ManageDependenciesDialog$2.run(ManageDependenciesDialog.java:264) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:55:18.059 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:55:18.156 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:55:18.181 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:55:18.421 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:55:18.427 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 4 0 2015-12-04 18:55:50.039 -!MESSAGE Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -!STACK 1 -org.eclipse.core.runtime.CoreException: Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:776) - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:1) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:743) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:720) - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openPomEditor(OpenPomAction.java:243) - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openEditor(OpenPomAction.java:218) - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction$1.run(OpenPomAction.java:129) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Contains: Missing org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -!SUBENTRY 1 org.eclipse.m2e.core 4 -1 2015-12-04 18:55:50.040 -!MESSAGE Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -!SUBENTRY 2 org.eclipse.m2e.core 4 -1 2015-12-04 18:55:50.040 -!MESSAGE Missing org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT - -!ENTRY org.eclipse.m2e.logback.appender 4 0 2015-12-04 18:56:44.644 -!MESSAGE Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -!STACK 1 -org.eclipse.core.runtime.CoreException: Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:776) - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:1) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:743) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:720) - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openPomEditor(OpenPomAction.java:243) - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openEditor(OpenPomAction.java:218) - at org.eclipse.m2e.editor.pom.DependencyTreePage$3.open(DependencyTreePage.java:315) - at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:853) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50) - at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:178) - at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:850) - at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1142) - at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1249) - at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:278) - at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:272) - at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:313) - at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) - at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353) - at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061) - at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4172) - at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761) - at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151) - at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) - at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032) - at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148) - at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636) - at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) - at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579) - at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) - at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135) - at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) - at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134) - at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) - at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380) - at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235) - at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) - at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) - at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) - at java.lang.reflect.Method.invoke(Unknown Source) - at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648) - at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603) - at org.eclipse.equinox.launcher.Main.run(Main.java:1465) -Contains: Missing org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -!SUBENTRY 1 org.eclipse.m2e.core 4 -1 2015-12-04 18:56:44.645 -!MESSAGE Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -!SUBENTRY 2 org.eclipse.m2e.core 4 -1 2015-12-04 18:56:44.645 -!MESSAGE Missing org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:45.626 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:45.715 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:45.732 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:45.963 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:45.978 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:48.307 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:48.417 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:48.436 -!MESSAGE The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:48.686 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 18:58:48.690 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:00:27.259 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:00:27.276 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:03:44.133 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:03:44.138 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:03:45.514 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:03:45.528 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:11:24.982 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:11:24.990 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:12:07.675 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:12:07.681 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:12:23.125 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:12:23.131 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:12:24.460 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:12:24.472 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:13:43.164 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:13:43.171 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -!SESSION 2015-12-04 19:16:01.190 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 19:16:34.207 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 19:16:34.208 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:16:41.221 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:16:41.249 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:20:14.439 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:20:14.450 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:20:47.063 -!MESSAGE The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:20:47.068 -!MESSAGE The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:20:48.106 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:20:48.112 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:11.999 -!MESSAGE The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:12.920 -!MESSAGE The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:13.435 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:13.442 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:14.633 -!MESSAGE The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:14.670 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:14.672 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:22.706 -!MESSAGE The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:23.140 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:23.145 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:42.312 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:42.348 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:44.317 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:21:44.341 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:22:10.338 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:22:10.345 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:23:12.761 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:23:12.764 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:23:38.736 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:23:38.761 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:25:24.731 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 19:25:24.741 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:16:56.567 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:16:56.575 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:17:04.872 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:17:04.882 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:17:37.163 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:17:37.169 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:17:59.144 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:17:59.148 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:18:11.759 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:18:11.767 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:22:50.841 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:22:50.847 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:30:39.150 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:30:39.153 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:31:33.707 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:31:33.718 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:31:53.794 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:31:53.797 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:32:34.244 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:32:34.246 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:36:08.747 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:36:08.749 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 4 0 2015-12-04 20:48:41.822 -!MESSAGE Could not read pom.xml -!STACK 1 -org.eclipse.core.runtime.CoreException: Could not read pom.xml - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:565) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:574) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refreshPhase2(ProjectRegistryManager.java:541) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:497) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:350) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:297) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.getProjectFacade(MavenBuilder.java:154) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:89) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) - at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:401) - at org.eclipse.core.internal.resources.Project$1.run(Project.java:618) - at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2313) - at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597) - at org.eclipse.core.internal.resources.Project.build(Project.java:114) - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.buildProjects(JarFileExportOperation.java:1159) - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.singleRun(JarFileExportOperation.java:1006) - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.execute(JarFileExportOperation.java:987) - at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:106) - at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2313) - at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:118) - at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122) -Caused by: org.apache.maven.model.io.ModelParseException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:130) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:94) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:563) - ... 32 more -Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.checkFieldWithDuplicate(MavenXpp3Reader.java:114) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Reader.java:2237) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:3807) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:557) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:125) - ... 34 more -!SUBENTRY 1 org.eclipse.m2e.core 4 -1 2015-12-04 20:48:41.823 -!MESSAGE Could not read pom.xml -!STACK 0 -org.apache.maven.model.io.ModelParseException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:130) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:94) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:563) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:574) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refreshPhase2(ProjectRegistryManager.java:541) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:497) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:350) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:297) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.getProjectFacade(MavenBuilder.java:154) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:89) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) - at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:401) - at org.eclipse.core.internal.resources.Project$1.run(Project.java:618) - at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2313) - at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597) - at org.eclipse.core.internal.resources.Project.build(Project.java:114) - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.buildProjects(JarFileExportOperation.java:1159) - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.singleRun(JarFileExportOperation.java:1006) - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.execute(JarFileExportOperation.java:987) - at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:106) - at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2313) - at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:118) - at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122) -Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.checkFieldWithDuplicate(MavenXpp3Reader.java:114) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Reader.java:2237) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:3807) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:557) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:125) - ... 34 more - -!ENTRY org.eclipse.m2e.logback.appender 4 0 2015-12-04 20:48:43.904 -!MESSAGE Could not read pom.xml -!STACK 1 -org.eclipse.core.runtime.CoreException: Could not read pom.xml - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:565) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:574) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refreshPhase2(ProjectRegistryManager.java:541) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:497) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:350) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:297) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.getProjectFacade(MavenBuilder.java:154) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:89) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) - at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Caused by: org.apache.maven.model.io.ModelParseException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:130) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:94) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:563) - ... 24 more -Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.checkFieldWithDuplicate(MavenXpp3Reader.java:114) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Reader.java:2237) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:3807) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:557) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:125) - ... 26 more -!SUBENTRY 1 org.eclipse.m2e.core 4 -1 2015-12-04 20:48:43.904 -!MESSAGE Could not read pom.xml -!STACK 0 -org.apache.maven.model.io.ModelParseException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:130) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:94) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:563) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:574) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refreshPhase2(ProjectRegistryManager.java:541) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:497) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:350) - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:297) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.getProjectFacade(MavenBuilder.java:154) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:89) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) - at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.checkFieldWithDuplicate(MavenXpp3Reader.java:114) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Reader.java:2237) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:3807) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:557) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:125) - ... 26 more - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:49:25.634 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:49:25.639 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:49:28.668 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:49:28.684 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:51:21.844 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:51:21.850 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:56:08.784 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:56:08.788 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:56:31.719 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:56:31.721 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:57:18.366 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:57:18.368 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:57:21.176 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:57:21.179 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:59:55.337 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 20:59:55.354 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:04:46.553 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:04:46.557 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:07:43.287 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:07:43.297 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:07:57.407 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:07:57.412 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:10:39.899 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:10:39.903 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:15:43.801 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:15:43.818 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:16:32.381 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:16:32.389 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:16:42.780 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:16:42.786 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 4 0 2015-12-04 21:20:39.443 -!MESSAGE Could not resolve artifact htmlcleaner:htmlcleaner:pom:2.16 -!STACK 1 -org.eclipse.core.runtime.CoreException: Could not resolve artifact htmlcleaner:htmlcleaner:pom:2.16 - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:776) - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:1) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:743) - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:720) - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openPomEditor(OpenPomAction.java:243) - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openEditor(OpenPomAction.java:218) - at org.eclipse.m2e.editor.xml.PomHyperlinkDetector$6$1.run(PomHyperlinkDetector.java:616) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Contains: Missing htmlcleaner:htmlcleaner:pom:2.16 -!SUBENTRY 1 org.eclipse.m2e.core 4 -1 2015-12-04 21:20:39.444 -!MESSAGE Could not resolve artifact htmlcleaner:htmlcleaner:pom:2.16 -!SUBENTRY 2 org.eclipse.m2e.core 4 -1 2015-12-04 21:20:39.444 -!MESSAGE Missing htmlcleaner:htmlcleaner:pom:2.16 - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:20:50.009 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:20:50.024 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:22:06.752 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:22:06.760 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:22:08.169 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:22:08.184 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.wst.sse.core 4 4 2015-12-04 21:22:49.039 -!MESSAGE Invalid thread access -!STACK 0 -org.eclipse.swt.SWTException: Invalid thread access - at org.eclipse.swt.SWT.error(SWT.java:4441) - at org.eclipse.swt.SWT.error(SWT.java:4356) - at org.eclipse.swt.SWT.error(SWT.java:4327) - at org.eclipse.swt.widgets.Widget.error(Widget.java:476) - at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:367) - at org.eclipse.swt.widgets.Table.setRedraw(Table.java:4784) - at org.eclipse.jface.viewers.AbstractTableViewer.inputChanged(AbstractTableViewer.java:562) - at org.eclipse.jface.viewers.ContentViewer.setInput(ContentViewer.java:292) - at org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1675) - at org.eclipse.m2e.editor.composites.ListEditorComposite.setInput(ListEditorComposite.java:135) - at org.eclipse.m2e.editor.composites.DependenciesComposite.setDependenciesInput(DependenciesComposite.java:823) - at org.eclipse.m2e.editor.composites.DependenciesComposite.loadData(DependenciesComposite.java:588) - at org.eclipse.m2e.editor.pom.DependenciesPage.loadData(DependenciesPage.java:94) - at org.eclipse.m2e.editor.pom.MavenPomEditorPage$1.modelChanged(MavenPomEditorPage.java:137) - at org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel.fireModelChanged(AbstractStructuredModel.java:526) - at org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel.internalModelChanged(AbstractStructuredModel.java:837) - at org.eclipse.wst.sse.core.internal.model.AbstractStructuredModel.changedModel(AbstractStructuredModel.java:361) - at org.eclipse.wst.xml.core.internal.document.DOMModelImpl.changedModel(DOMModelImpl.java:171) - at org.eclipse.m2e.core.ui.internal.editing.PomEdits.performOnDOMDocument(PomEdits.java:518) - at org.eclipse.m2e.editor.dialogs.ManageDependenciesDialog$2.run(ManageDependenciesDialog.java:264) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:22:50.718 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:22:50.737 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:39:08.916 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:39:08.929 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:23.454 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:23.494 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:43.742 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:43.749 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:46.252 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:46.258 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:53.690 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:53.725 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:55.168 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:40:55.182 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:41:21.113 -!MESSAGE The POM for org.spigotmc:spigot-api:jar: is missing, no dependency information available - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:42:24.529 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:42:24.552 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:42:25.848 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:42:25.876 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:42:35.820 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:42:35.826 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:49:41.401 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:49:41.403 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:38.948 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:38.961 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:43.661 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:43.666 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:46.877 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:46.881 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:50.824 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:50:50.827 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:51:44.507 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:51:44.512 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:52:47.267 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:52:47.272 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:23.537 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:23.541 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:38.591 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:38.595 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:41.614 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:41.619 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:49.777 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:53:49.781 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:54:12.527 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:54:12.531 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:56:31.780 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:56:31.785 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:56:52.403 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:56:52.418 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:57:14.442 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:57:14.448 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:57:48.226 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:57:48.228 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:58:10.193 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 21:58:10.198 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:07:16.565 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:07:16.570 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:09:55.751 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:09:55.758 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:10:20.010 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:10:20.014 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:10:21.128 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:10:21.133 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:12:56.291 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:12:56.295 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:18.020 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:18.024 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:22.656 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:22.675 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:28.002 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:28.007 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:31.668 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:31.672 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:33.225 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:33.229 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:35.750 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:13:35.755 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:14:22.267 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:14:22.271 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:15:21.225 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:15:21.235 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! diff --git a/.metadata/.lock b/.metadata/.lock deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.log b/.metadata/.log deleted file mode 100644 index de3929c..0000000 --- a/.metadata/.log +++ /dev/null @@ -1,1134 +0,0 @@ -!SESSION 2015-12-04 19:16:01.190 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -This is a continuation of log file D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\.metadata\.bak_0.log -Created Time: 2015-12-04 22:17:52.296 - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:17:52.297 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:17:52.302 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:18:09.589 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:18:09.593 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:18:25.430 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:18:25.435 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:18:34.048 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:18:34.051 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:03.942 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:03.946 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:13.394 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:13.397 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:17.520 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:17.525 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:24.536 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:24.540 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:32.732 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:32.736 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:46.909 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:46.912 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:53.526 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:21:53.531 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:22:05.040 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:22:05.044 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:22:13.589 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:22:13.592 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:23:47.614 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:23:47.618 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:23:52.173 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:23:52.176 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:24:31.567 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:24:31.571 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:26:08.955 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:26:08.959 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:39:23.494 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:39:23.499 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:39:29.700 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:39:29.704 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:43:10.036 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:43:10.038 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:45:28.086 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:45:28.090 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:45:34.057 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:45:34.061 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:45:35.151 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 22:45:35.155 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:05:36.243 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:05:36.247 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:20:47.064 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:20:47.069 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -!SESSION 2015-12-04 23:25:13.351 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 23:25:59.102 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-04 23:25:59.103 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:30:12.749 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:30:12.777 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:30:40.382 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:30:40.399 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:43:18.904 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:43:18.906 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:45:57.784 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:45:57.790 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:47:06.633 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:47:06.639 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:47:43.260 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:47:43.266 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:47:56.933 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:47:56.937 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:48:07.312 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:48:07.317 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:48:10.334 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-04 23:48:10.339 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -!SESSION 2015-12-05 15:05:11.156 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-05 15:07:21.089 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-05 15:07:21.269 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:09:58.558 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:09:58.618 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:00.044 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:00.112 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:15.382 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:15.392 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:16.604 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:16.604 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:25.851 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:10:25.857 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:20:44.814 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:20:44.820 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:13.698 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:13.707 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:20.333 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:20.340 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:21.822 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:21.827 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:29.611 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:29.616 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:33.695 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:33.700 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:37.799 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:21:37.805 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:25:35.369 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:25:35.376 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:25:47.344 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:25:47.348 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:26:02.270 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 15:26:02.274 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -!SESSION 2015-12-05 22:28:08.641 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-05 22:40:31.273 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-05 22:40:31.530 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 22:47:48.059 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-05 22:47:48.356 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -!SESSION 2015-12-09 19:45:03.553 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-09 19:46:36.976 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-09 19:46:37.244 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. -!SESSION 2015-12-09 20:40:27.682 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-09 20:41:38.867 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-09 20:41:39.095 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-09 20:43:25.207 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-09 20:43:25.257 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-09 20:43:27.558 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-09 20:43:27.594 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-09 20:43:29.067 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-09 20:43:29.072 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -!SESSION 2015-12-12 19:04:11.053 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-12 19:08:05.944 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-12 19:08:06.083 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. -!SESSION 2015-12-18 22:41:48.612 ----------------------------------------------- -eclipse.buildId=4.4.2.M20150204-1700 -java.version=1.8.0_66 -java.vendor=Oracle Corporation -BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US -Framework arguments: -product org.eclipse.epp.package.jee.product -product org.eclipse.epp.package.jee.product -Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product -data D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin -product org.eclipse.epp.package.jee.product - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-18 22:42:33.583 -!MESSAGE Warning: EGit couldn't detect the installation path "gitPrefix" of native Git. Hence EGit can't respect system level -Git settings which might be configured in ${gitPrefix}/etc/gitconfig under the native Git installation directory. -The most important of these settings is core.autocrlf. Git for Windows by default sets this parameter to true in -this system level configuration. The Git installation location can be configured on the -Team > Git > Configuration preference page's 'System Settings' tab. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.egit.ui 2 0 2015-12-18 22:42:33.610 -!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git -user global configuration and to define the default location to store repositories: 'C:\Users\Norbi'. If this is -not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and -EGit might behave differently since they see different configuration options. -This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 22:47:51.439 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 22:47:51.501 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:15:29.651 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:15:29.662 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:16:46.383 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:16:46.389 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:18:04.390 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:18:04.429 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:39:23.142 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:39:23.196 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:39:31.232 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:39:31.239 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:39:45.705 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:39:45.710 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:40:20.361 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:40:20.365 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:40:21.500 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:40:21.504 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:09.154 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:09.159 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:15.455 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:15.459 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:17.057 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:17.062 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:34.857 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:34.862 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:37.056 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-18 23:42:37.061 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:13:44.576 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:13:44.592 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:13:49.490 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:13:49.506 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:15:22.930 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:15:22.930 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:15:26.446 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:15:26.462 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:15:50.762 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:15:50.778 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:16:29.381 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:16:29.381 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:17:40.556 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:17:40.556 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:18:18.610 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:18:18.610 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:18:20.172 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:18:20.172 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:18:30.770 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:18:30.770 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:19:45.890 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:19:45.890 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:20:58.882 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:20:58.897 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:31:13.566 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:31:13.566 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:33:35.254 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:33:35.254 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:34:07.890 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:34:07.890 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:34:35.365 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:34:35.365 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:34:39.826 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:34:39.826 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:36:20.441 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:36:20.456 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:37:39.000 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:37:39.004 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:38:11.294 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:38:11.301 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:38:24.122 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:38:24.126 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:38:48.499 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:38:48.503 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:39:01.033 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:39:01.037 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:40:34.660 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:40:34.664 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:40:51.077 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:40:51.081 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:40:57.295 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:40:57.299 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:41:23.315 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:41:23.320 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:41:26.102 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 12:41:26.107 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:02.195 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:02.200 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:26.128 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:26.138 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:52.697 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:52.702 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:56.989 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:09:56.993 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:10:19.664 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:10:19.669 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:10:41.065 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:10:41.070 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:05.901 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:05.905 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:09.396 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:09.401 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:34.221 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:34.225 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:38.178 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:38.182 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:39.586 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:11:39.591 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:08.072 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:08.075 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:34.487 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:34.490 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:35.584 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:35.588 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:54.763 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:12:54.767 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:03.352 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:03.357 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:10.419 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:10.423 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:40.495 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:40.499 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:59.645 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:13:59.649 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:14:26.373 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:14:26.377 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:17:34.301 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:17:34.306 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:18:12.377 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:18:12.382 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:18:23.999 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:18:24.003 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:31.352 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:31.357 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:32.703 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:32.706 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.jdt.core 4 4 2015-12-19 13:22:41.910 -!MESSAGE JavaBuilder handling CoreException -!STACK 1 -org.eclipse.core.runtime.CoreException: Could not write file: D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class. - at org.eclipse.core.internal.filesystem.Policy.error(Policy.java:55) - at org.eclipse.core.internal.filesystem.local.LocalFile.openOutputStream(LocalFile.java:406) - at org.eclipse.core.internal.localstore.FileSystemResourceManager.write(FileSystemResourceManager.java:1101) - at org.eclipse.core.internal.resources.File.internalSetContents(File.java:322) - at org.eclipse.core.internal.resources.File.setContents(File.java:361) - at org.eclipse.core.internal.resources.File.setContents(File.java:465) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.writeClassFileContents(IncrementalImageBuilder.java:836) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.writeClassFile(AbstractImageBuilder.java:859) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.acceptResult(AbstractImageBuilder.java:190) - at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:510) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:367) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.compile(IncrementalImageBuilder.java:330) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:304) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:135) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:267) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:195) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Caused by: java.io.FileNotFoundException: D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class (The process cannot access the file because it is being used by another process) - at java.io.FileOutputStream.open0(Native Method) - at java.io.FileOutputStream.open(Unknown Source) - at java.io.FileOutputStream.(Unknown Source) - at org.eclipse.core.internal.filesystem.local.LocalFile.openOutputStream(LocalFile.java:397) - ... 26 more -!SUBENTRY 1 org.eclipse.core.filesystem 4 272 2015-12-19 13:22:42.073 -!MESSAGE Could not write file: D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class. -!STACK 0 -java.io.FileNotFoundException: D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class (The process cannot access the file because it is being used by another process) - at java.io.FileOutputStream.open0(Native Method) - at java.io.FileOutputStream.open(Unknown Source) - at java.io.FileOutputStream.(Unknown Source) - at org.eclipse.core.internal.filesystem.local.LocalFile.openOutputStream(LocalFile.java:397) - at org.eclipse.core.internal.localstore.FileSystemResourceManager.write(FileSystemResourceManager.java:1101) - at org.eclipse.core.internal.resources.File.internalSetContents(File.java:322) - at org.eclipse.core.internal.resources.File.setContents(File.java:361) - at org.eclipse.core.internal.resources.File.setContents(File.java:465) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.writeClassFileContents(IncrementalImageBuilder.java:836) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.writeClassFile(AbstractImageBuilder.java:859) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.acceptResult(AbstractImageBuilder.java:190) - at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:510) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:367) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.compile(IncrementalImageBuilder.java:330) - at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:304) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:135) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:267) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:195) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) - -!ENTRY org.eclipse.jdt.core 4 4 2015-12-19 13:22:42.159 -!MESSAGE JavaBuilder handling ImageBuilderInternalException while building: TheButtonAutoFlair -!STACK 1 -org.eclipse.core.internal.resources.ResourceException: Problems encountered while deleting resources. - at org.eclipse.core.internal.resources.Resource.delete(Resource.java:816) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.removeClassFile(IncrementalImageBuilder.java:758) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.removeSecondaryTypes(IncrementalImageBuilder.java:771) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:136) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:267) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:195) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Contains: Could not delete 'D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class'. -org.eclipse.core.runtime.CoreException: Problems encountered while deleting files. - at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:131) - at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:304) - at org.eclipse.core.internal.resources.ResourceTree.standardDeleteFile(ResourceTree.java:785) - at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1979) - at org.eclipse.core.internal.resources.Resource.delete(Resource.java:803) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.removeClassFile(IncrementalImageBuilder.java:758) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.removeSecondaryTypes(IncrementalImageBuilder.java:771) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:136) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:267) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:195) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Contains: Could not delete: D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class. -!SUBENTRY 1 org.eclipse.core.resources 4 273 2015-12-19 13:22:42.160 -!MESSAGE Problems encountered while deleting resources. -!SUBENTRY 2 org.eclipse.core.resources 4 273 2015-12-19 13:22:42.160 -!MESSAGE Could not delete 'D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class'. -!STACK 1 -org.eclipse.core.runtime.CoreException: Problems encountered while deleting files. - at org.eclipse.core.internal.filesystem.local.LocalFile.delete(LocalFile.java:131) - at org.eclipse.core.internal.resources.ResourceTree.internalDeleteFile(ResourceTree.java:304) - at org.eclipse.core.internal.resources.ResourceTree.standardDeleteFile(ResourceTree.java:785) - at org.eclipse.core.internal.resources.Resource.unprotectedDelete(Resource.java:1979) - at org.eclipse.core.internal.resources.Resource.delete(Resource.java:803) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.removeClassFile(IncrementalImageBuilder.java:758) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.removeSecondaryTypes(IncrementalImageBuilder.java:771) - at org.eclipse.jdt.internal.core.builder.IncrementalImageBuilder.build(IncrementalImageBuilder.java:136) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildDeltas(JavaBuilder.java:267) - at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:195) - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) -Contains: Could not delete: D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class. -!SUBENTRY 3 org.eclipse.core.filesystem 4 273 2015-12-19 13:22:42.160 -!MESSAGE Problems encountered while deleting files. -!SUBENTRY 4 org.eclipse.core.filesystem 4 273 2015-12-19 13:22:42.160 -!MESSAGE Could not delete: D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\target\classes\tk\sznp\thebuttonautoflair\Commands$2.class. - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:42.166 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:42.170 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:48.431 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:48.437 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:59.183 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:22:59.186 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:23:12.683 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:23:12.687 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:27:22.358 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:27:22.362 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:28:23.756 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:28:23.760 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:10.484 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:10.488 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:23.446 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:23.449 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:32.163 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:32.167 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:36.305 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:36.308 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:38.423 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:38.427 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:43.697 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:29:43.701 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:30:49.811 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:30:49.814 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:33:56.803 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:33:56.808 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:34:07.750 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:34:07.754 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:35:30.537 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! - -!ENTRY org.eclipse.m2e.logback.appender 2 0 2015-12-19 13:35:30.541 -!MESSAGE Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! diff --git a/.metadata/.mylyn/.taskListIndex/segments.gen b/.metadata/.mylyn/.taskListIndex/segments.gen deleted file mode 100644 index 63a7ec9..0000000 Binary files a/.metadata/.mylyn/.taskListIndex/segments.gen and /dev/null differ diff --git a/.metadata/.mylyn/.taskListIndex/segments_1 b/.metadata/.mylyn/.taskListIndex/segments_1 deleted file mode 100644 index de74fdf..0000000 Binary files a/.metadata/.mylyn/.taskListIndex/segments_1 and /dev/null differ diff --git a/.metadata/.mylyn/.tasks.xml.zip b/.metadata/.mylyn/.tasks.xml.zip deleted file mode 100644 index 29f663e..0000000 Binary files a/.metadata/.mylyn/.tasks.xml.zip and /dev/null differ diff --git a/.metadata/.mylyn/repositories.xml.zip b/.metadata/.mylyn/repositories.xml.zip deleted file mode 100644 index d205b35..0000000 Binary files a/.metadata/.mylyn/repositories.xml.zip and /dev/null differ diff --git a/.metadata/.mylyn/tasks.xml.zip b/.metadata/.mylyn/tasks.xml.zip deleted file mode 100644 index 318f663..0000000 Binary files a/.metadata/.mylyn/tasks.xml.zip and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1/a0191b15d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/1/a0191b15d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 85f16ce..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1/a0191b15d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,374 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { - System.out.println("Auto-flair plugin cleanup for reloading..."); //2015.08.09. - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1/b070e46d45a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/1/b070e46d45a600151c15ab42d7919fee deleted file mode 100644 index 2c44dad..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1/b070e46d45a600151c15ab42d7919fee +++ /dev/null @@ -1,116 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p=Bukkit.getPlayer(UUID); - p.setPlayerListName(String.Format("%s%s", )); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/10/20fd03d549a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/10/20fd03d549a600151c15ab42d7919fee deleted file mode 100644 index 7d75246..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/10/20fd03d549a600151c15ab42d7919fee +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.SetFlairColor(0x6); - break; - case "press-3": - p.SetFlairColor(0xe); - break; - case "press-4": - p.SetFlairColor(0xa); - break; - case "press-5": - p.SetFlairColor(0x9); - break; - case "press-6": - p.SetFlairColor(0x5); - break; - case "no-press": - p.SetFlairColor(0x7); - break; - case "cheater": - p.SetFlairColor(0x5); - break; - case "cant-press": - p.SetFlairColor(0xf); - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.SetFlairColor(0x7); - p.SetFlairTime("--"); - } else { - p.FlairColor = 0xf; - p.FlairTime = "--"; - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/10/302feacd41a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/10/302feacd41a600151c15ab42d7919fee deleted file mode 100644 index 5810a0c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/10/302feacd41a600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/12/a077bfc949a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/12/a077bfc949a600151c15ab42d7919fee deleted file mode 100644 index d3a7015..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/12/a077bfc949a600151c15ab42d7919fee +++ /dev/null @@ -1,125 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(int color) { - FlairColor = (short) color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(int color, String time) { - FlairColor = (short)color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } - - public short GetFlairColor() { - return FlairColor; - } - - public String GetFlairTime() { - return FlairTime; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/12/b09714c2cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/12/b09714c2cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 206b53a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/12/b09714c2cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - player.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0a0fbb849a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0a0fbb849a600151c15ab42d7919fee deleted file mode 100644 index 88e0af8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/13/b0a0fbb849a600151c15ab42d7919fee +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.SetFlairColor(0x6); - break; - case "press-3": - p.SetFlairColor(0xe); - break; - case "press-4": - p.SetFlairColor(0xa); - break; - case "press-5": - p.SetFlairColor(0x9); - break; - case "press-6": - p.SetFlairColor(0x5); - break; - case "no-press": - p.SetFlairColor(0x7); - break; - case "cheater": - p.SetFlairColor(0x5); - break; - case "cant-press": - p.SetFlairColor(0xf); - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.FlairColor = 0x7; - p.FlairTime = "--"; - } else { - p.FlairColor = 0xf; - p.FlairTime = "--"; - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/14/20b7f4c2d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/14/20b7f4c2d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5cf5c6e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/14/20b7f4c2d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true; - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/15/a0689143d43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/15/a0689143d43e001518fa86d7ae2a1cf8 deleted file mode 100644 index b72f226..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/15/a0689143d43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,221 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done."); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(player); //2015.08.09. - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/16/303c161945a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/16/303c161945a600151c15ab42d7919fee deleted file mode 100644 index ed76b86..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/16/303c161945a600151c15ab42d7919fee +++ /dev/null @@ -1,110 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - } - - public void SetFlairTime(String time) { - FlairTime = time; - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/17/70f2199141a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/17/70f2199141a600151c15ab42d7919fee deleted file mode 100644 index 01ff1c5..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/17/70f2199141a600151c15ab42d7919fee +++ /dev/null @@ -1,597 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - Player p=null; - if(Lastlol!=null || Bukkit.getPlayer(Lastlol.UUID)) - Lastlol.UUID - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/19/c0e42302ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/19/c0e42302ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 84912b7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/19/c0e42302ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,354 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": - finalflair=""; //2015.08.09. - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1a/c0bedf60e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/1a/c0bedf60e640001514c09dece48b36c7 deleted file mode 100644 index bc3d453..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1a/c0bedf60e640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), Sound.ORB_PICKUP, arg2, arg3) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1c/50b35f3bd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/1c/50b35f3bd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index f15dd12..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1c/50b35f3bd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,376 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1c/a0ecf93ad23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/1c/a0ecf93ad23e001518fa86d7ae2a1cf8 deleted file mode 100644 index f15dd12..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1c/a0ecf93ad23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,376 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1d/709a3bde2d53001516cdaaef55e27ba4 b/.metadata/.plugins/org.eclipse.core.resources/.history/1d/709a3bde2d53001516cdaaef55e27ba4 deleted file mode 100644 index dcd717b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1d/709a3bde2d53001516cdaaef55e27ba4 +++ /dev/null @@ -1,15 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system. Accept or ignore flair. - usage: "&cUsage: /u accept|ignore|opme&r" - nrp: - description: Send message in Out-of-Character - usage: "&cUsage: /nrp &r" - ooc: - description: Send message in Out-of-Character - usage: "&cUsage: /ooc &r" -author: NorbiPeti -depend: [Essentials, Towny] \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/20ce3447d43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/1e/20ce3447d43e001518fa86d7ae2a1cf8 deleted file mode 100644 index 869953e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/20ce3447d43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,224 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done."); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - if(ReloadPlayer.equals(player)) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/606a09eede40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/1e/606a09eede40001514c09dece48b36c7 deleted file mode 100644 index d1dda6d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/606a09eede40001514c09dece48b36c7 +++ /dev/null @@ -1,297 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§6Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§6The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/a0477e13d43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/1e/a0477e13d43e001518fa86d7ae2a1cf8 deleted file mode 100644 index f26d723..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/a0477e13d43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,220 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done."); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(player); //2015.08.09. - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/b057e861ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/1e/b057e861ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 4343f31..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/b057e861ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,31 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - public FlairClassType FlairType; //2015.08.09. - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } - /*public enum FlairClassType - { //2015.08.09. - NonPresser, - CantPress, - Undecided - }*/ -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/d0e4168be540001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/1e/d0e4168be540001514c09dece48b36c7 deleted file mode 100644 index 8742a9c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1e/d0e4168be540001514c09dece48b36c7 +++ /dev/null @@ -1,71 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/1f/203f7772d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/1f/203f7772d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index efbed4c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/1f/203f7772d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,380 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2/008fa000f34500151ebce83b3129f79d b/.metadata/.plugins/org.eclipse.core.resources/.history/2/008fa000f34500151ebce83b3129f79d deleted file mode 100644 index 9f10d95..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2/008fa000f34500151ebce83b3129f79d +++ /dev/null @@ -1,78 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - public static String NotificationSound; //2015.08.14. - public static float NotificationPitch; //2015.08.14. - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - String color=""; //2015.08.17. - if(message.contains(p.getName())) - { - if(NotificationSound==null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); //2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, NotificationPitch); //2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.17. - color=mp.Flair.substring(0, 2); - } - message = message.replaceAll(p.getName(), color+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - Object handle = Reflection.getHandle(player); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2/20385cfb44a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/2/20385cfb44a600151c15ab42d7919fee deleted file mode 100644 index 6cc330d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2/20385cfb44a600151c15ab42d7919fee +++ /dev/null @@ -1,106 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) - { - } - - public void SetFlairTime(String time) - { - - } - - public void SetFlair(short color, String time) - - //Flairs from Command Block The Button - Teams - //PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2/a06adb06d43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/2/a06adb06d43e001518fa86d7ae2a1cf8 deleted file mode 100644 index 2ccf0cc..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2/a06adb06d43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,219 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(player); //2015.08.09. - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/20/2004d51d42a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/20/2004d51d42a600151c15ab42d7919fee deleted file mode 100644 index 75a751b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/20/2004d51d42a600151c15ab42d7919fee +++ /dev/null @@ -1,371 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); //TODO: Quiz queue - //TODO: Flairs from Command Block The Button - Teams - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - /* - * Channel c = ((Chat) Bukkit.getPluginManager().getPlugin("TownyChat")) - * .getChannelsHandler().getActiveChannel(e.getPlayer(), - * channelTypes.GLOBAL); - */ - /* - * List modes = ((Chat) Bukkit.getPluginManager().getPlugin( - * "TownyChat")).getTowny().getPlayerMode(e.getPlayer()); if - * (modes.size() == 0 || modes.contains("g")) { - */ - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/20/802a22d2de40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/20/802a22d2de40001514c09dece48b36c7 deleted file mode 100644 index 2df291c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/20/802a22d2de40001514c09dece48b36c7 +++ /dev/null @@ -1,71 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message.replaceAll(p.getName(), ) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/20/b08b3094cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/20/b08b3094cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 50ac8ec..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/20/b08b3094cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - player.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/21/20cc239649a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/21/20cc239649a600151c15ab42d7919fee deleted file mode 100644 index 9b3d382..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/21/20cc239649a600151c15ab42d7919fee +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.SetFlairColor(0x6); - break; - case "press-3": - p.SetFlairColor(0xe); - break; - case "press-4": - p.SetFlairColor(0xa); - break; - case "press-5": - p.SetFlairColor(0x9); - break; - case "press-6": - p.SetFlairColor(0x5); - break; - case "no-press": - p.SetFlairColor(0x7); - break; - case "cheater": - p.SetFlairColor(0x5); - break; - case "cant-press": - p.FlairColor = 0xf; - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.FlairColor = 0x7; - p.FlairTime = "--"; - } else { - p.FlairColor = 0xf; - p.FlairTime = "--"; - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/21/c0a02994e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/21/c0a02994e640001514c09dece48b36c7 deleted file mode 100644 index 8bd4265..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/21/c0a02994e640001514c09dece48b36c7 +++ /dev/null @@ -1,74 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - if(message.contains(p.getName())) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 1.0f); //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/22/408c617d44a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/22/408c617d44a600151c15ab42d7919fee deleted file mode 100644 index 18f37b7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/22/408c617d44a600151c15ab42d7919fee +++ /dev/null @@ -1,368 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - // TODO: Flairs from Command Block The Button - Teams - //PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/22/40feff6ce640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/22/40feff6ce640001514c09dece48b36c7 deleted file mode 100644 index 4e9ef04..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/22/40feff6ce640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0, 1.0); //2015.08.12. - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/22/a091cfc4d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/22/a091cfc4d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5d7321f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/22/a091cfc4d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/23/a0c7c72cd33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/23/a0c7c72cd33e001518fa86d7ae2a1cf8 deleted file mode 100644 index f17161d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/23/a0c7c72cd33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,216 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; - //SendMessage(player, msg); //2015.08.09. - - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/24/c0d763f341a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/24/c0d763f341a600151c15ab42d7919fee deleted file mode 100644 index 75a751b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/24/c0d763f341a600151c15ab42d7919fee +++ /dev/null @@ -1,371 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); //TODO: Quiz queue - //TODO: Flairs from Command Block The Button - Teams - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - /* - * Channel c = ((Chat) Bukkit.getPluginManager().getPlugin("TownyChat")) - * .getChannelsHandler().getActiveChannel(e.getPlayer(), - * channelTypes.GLOBAL); - */ - /* - * List modes = ((Chat) Bukkit.getPluginManager().getPlugin( - * "TownyChat")).getTowny().getPlayerMode(e.getPlayer()); if - * (modes.size() == 0 || modes.contains("g")) { - */ - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/25/3067ea8bd13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/25/3067ea8bd13e001518fa86d7ae2a1cf8 deleted file mode 100644 index c1c6d6a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/25/3067ea8bd13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,326 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - Load(false); - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/25/c05ce792e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/25/c05ce792e640001514c09dece48b36c7 deleted file mode 100644 index 12d9c01..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/25/c05ce792e640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 1.0f); //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/26/20fee89fce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/26/20fee89fce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index ab06769..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/26/20fee89fce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,360 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/26/a0111a40d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/26/a0111a40d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 61ec61c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/26/a0111a40d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/27/9011edbed23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/27/9011edbed23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 717cff8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/27/9011edbed23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/27/f08a8910cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/27/f08a8910cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 999a5ae..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/27/f08a8910cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) - { - - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/28/309e6352d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/28/309e6352d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index d073151..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/28/309e6352d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,216 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/29/40e1da43e340001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/29/40e1da43e340001514c09dece48b36c7 deleted file mode 100644 index b844d5e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/29/40e1da43e340001514c09dece48b36c7 +++ /dev/null @@ -1,295 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - PluginMain.Console.sendMessage("§6-- Reloading Auto-flair plugin...§r"); - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/29/50338b22e340001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/29/50338b22e340001514c09dece48b36c7 deleted file mode 100644 index 4f33dd3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/29/50338b22e340001514c09dece48b36c7 +++ /dev/null @@ -1,298 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2a/20868515d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/2a/20868515d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index ccaedeb..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2a/20868515d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,363 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - player.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2b/702271ffde40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/2b/702271ffde40001514c09dece48b36c7 deleted file mode 100644 index e334416..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2b/702271ffde40001514c09dece48b36c7 +++ /dev/null @@ -1,297 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§6Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2c/80f4cccb41a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/2c/80f4cccb41a600151c15ab42d7919fee deleted file mode 100644 index 8b1058f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2c/80f4cccb41a600151c15ab42d7919fee +++ /dev/null @@ -1,599 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - Player p=null; - if(Lastlol!=null || (p=Bukkit.getPlayer(Lastlol.UUID))!=null) - { - p.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 10, 5, false, false)); - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2e/90fc2ebfd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/2e/90fc2ebfd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 717cff8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2e/90fc2ebfd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/2f/30aed98449a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/2f/30aed98449a600151c15ab42d7919fee deleted file mode 100644 index ceb7a8c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/2f/30aed98449a600151c15ab42d7919fee +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.FlairColor = 0xc; - break; - case "press-2": - p.FlairColor = 0x6; - break; - case "press-3": - p.FlairColor = 0xe; - break; - case "press-4": - p.FlairColor = 0xa; - break; - case "press-5": - p.FlairColor = 0x9; - break; - case "press-6": - p.FlairColor = 0x5; - break; - case "no-press": - p.FlairColor = 0x7; - break; - case "cheater": - p.FlairColor = 0x5; - break; - case "cant-press": - p.FlairColor = 0xf; - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.FlairColor = 0x7; - p.FlairTime = "--"; - } else { - p.FlairColor = 0xf; - p.FlairTime = "--"; - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/3/004e1951d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/3/004e1951d8a500151c15ab42d7919fee deleted file mode 100644 index 36790ac..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/3/004e1951d8a500151c15ab42d7919fee +++ /dev/null @@ -1,596 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static boolean PluginUpdated = false; // 2015.08.31. - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) - { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/30/20a0c374d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/30/20a0c374d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 641be01..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/30/20a0c374d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,345 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - SaveFiles(); //2015.08.09. - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/30/60f899dc2d53001516cdaaef55e27ba4 b/.metadata/.plugins/org.eclipse.core.resources/.history/30/60f899dc2d53001516cdaaef55e27ba4 deleted file mode 100644 index dcd717b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/30/60f899dc2d53001516cdaaef55e27ba4 +++ /dev/null @@ -1,15 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system. Accept or ignore flair. - usage: "&cUsage: /u accept|ignore|opme&r" - nrp: - description: Send message in Out-of-Character - usage: "&cUsage: /nrp &r" - ooc: - description: Send message in Out-of-Character - usage: "&cUsage: /ooc &r" -author: NorbiPeti -depend: [Essentials, Towny] \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/31/20e2516b49a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/31/20e2516b49a600151c15ab42d7919fee deleted file mode 100644 index b9ffc59..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/31/20e2516b49a600151c15ab42d7919fee +++ /dev/null @@ -1,122 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } - - public short GetFlairColor() - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/31/c0e1dbcdcf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/31/c0e1dbcdcf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 276d1df..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/31/c0e1dbcdcf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,363 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(player, p); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - player.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/32/907f4f6a44a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/32/907f4f6a44a600151c15ab42d7919fee deleted file mode 100644 index 8a203ea..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/32/907f4f6a44a600151c15ab42d7919fee +++ /dev/null @@ -1,367 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - // TODO: Flairs from Command Block The Button - Teams - //PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/34/40f80735d5a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/34/40f80735d5a500151c15ab42d7919fee deleted file mode 100644 index 372cbb8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/34/40f80735d5a500151c15ab42d7919fee +++ /dev/null @@ -1,370 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); //TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - /* - * Channel c = ((Chat) Bukkit.getPluginManager().getPlugin("TownyChat")) - * .getChannelsHandler().getActiveChannel(e.getPlayer(), - * channelTypes.GLOBAL); - */ - /* - * List modes = ((Chat) Bukkit.getPluginManager().getPlugin( - * "TownyChat")).getTowny().getPlayerMode(e.getPlayer()); if - * (modes.size() == 0 || modes.contains("g")) { - */ - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/34/b097b71bce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/34/b097b71bce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 1f5948c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/34/b097b71bce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,354 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/37/20e61fc4d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/37/20e61fc4d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 39f0d07..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/37/20e61fc4d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,370 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/37/c0f63c61e240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/37/c0f63c61e240001514c09dece48b36c7 deleted file mode 100644 index 7cad3e7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/37/c0f63c61e240001514c09dece48b36c7 +++ /dev/null @@ -1,451 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - public static ConsoleSender Console; //2015.08.12. - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - SaveFiles(); //2015.08.09. - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - //System.out.println("Start: "+start); - if(start==-1+"IGN:".length()) //+length: 2015.08.10. - continue; //2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - //System.out.println("End: "+end); - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - //System.out.println("IGN: "+ign); - ign = ign.trim(); - //System.out.println("Trimmed IGN: "+ign); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - /*else - flair = "non-presser";*/ - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - //return p.Flair!=null; //2015.08.08. - return p.CommentedOnReddit; //2015.08.10. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - p.FlairRecognised=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(--s)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(??s)§r"; - break; - case "unknown": - if(text.equals("-1")) //If true, only non-presser/can't press; if false, any flair - p.FlairDecided=false; - else - p.FlairRecognised=false; - finalflair=""; - break; - default: - //finalflair=""; - //break; - return; - } - /*if(finalflair.length()==0) //<-- 2015.07.20. - return;*/ - p.Flair=finalflair; //2015.08.08. - p.CommentedOnReddit=true; //2015.08.10. - p.UserName=username; //2015.08.08. - if(finalflair.length()==0) //Just for the message - finalflair="undecided"; - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - //return flair==null ? "" : flair; - return flair; //2015.08.10. - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - //AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - /*private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - *String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //<-- 2015.08.10. - TownColors.put(s[0], s[1]); - } - br.close(); - } - file=new File("customflairs.txt"); //2015.08.09. - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //2015.08.10. - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(s[0]); - p.Flair=s[1]; //2015.08.09. - p.CommentedOnReddit=true; //Kind of - } - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static boolean RemoveLineFromFile(String file, String line) - { //2015.08.09. - File inputFile = new File(file); - File tempFile = new File("_temp.txt"); - - if(!inputFile.exists()) - return true; //2015.08.10. - - try { - BufferedReader reader = new BufferedReader(new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String lineToRemove = line; - String currentLine; - - while((currentLine = reader.readLine()) != null) { - // trim newline when comparing with lineToRemove - String trimmedLine = currentLine.trim(); - //if(trimmedLine.equals(lineToRemove)) continue; - if(trimmedLine.contains(lineToRemove)) continue; //2015.08.09. - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if(!tempFile.renameTo(inputFile)) - { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } - else - return true; - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - return false; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/38/209c0ada49a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/38/209c0ada49a600151c15ab42d7919fee deleted file mode 100644 index 1310b41..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/38/209c0ada49a600151c15ab42d7919fee +++ /dev/null @@ -1,353 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.SetFlairColor(0x6); - break; - case "press-3": - p.SetFlairColor(0xe); - break; - case "press-4": - p.SetFlairColor(0xa); - break; - case "press-5": - p.SetFlairColor(0x9); - break; - case "press-6": - p.SetFlairColor(0x5); - break; - case "no-press": - p.SetFlairColor(0x7); - break; - case "cheater": - p.SetFlairColor(0x5); - break; - case "cant-press": - p.SetFlairColor(0xf); - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.SetFlair(0x7, "--"); - } else { - p.SetFlair(0xf, "--"); - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/38/a0523ba549a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/38/a0523ba549a600151c15ab42d7919fee deleted file mode 100644 index cfd3af2..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/38/a0523ba549a600151c15ab42d7919fee +++ /dev/null @@ -1,125 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } - - public short GetFlairColor() { - return FlairColor; - } - - public String GetFlairTime() { - return FlairTime; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/38/a0f3a0e9cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/38/a0f3a0e9cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 327e9f3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/38/a0f3a0e9cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,197 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(player, p); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/39/2006034ad03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/39/2006034ad03e001518fa86d7ae2a1cf8 deleted file mode 100644 index c6af7c6..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/39/2006034ad03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,201 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/3b/30bdb825cd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/3b/30bdb825cd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index a9fdf9d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/3b/30bdb825cd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,25 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - public - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/3b/50ce8dd8d4a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/3b/50ce8dd8d4a500151c15ab42d7919fee deleted file mode 100644 index 947236f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/3b/50ce8dd8d4a500151c15ab42d7919fee +++ /dev/null @@ -1,369 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", mp.FlairColor); - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - /* - * Channel c = ((Chat) Bukkit.getPluginManager().getPlugin("TownyChat")) - * .getChannelsHandler().getActiveChannel(e.getPlayer(), - * channelTypes.GLOBAL); - */ - /* - * List modes = ((Chat) Bukkit.getPluginManager().getPlugin( - * "TownyChat")).getTowny().getPlayerMode(e.getPlayer()); if - * (modes.size() == 0 || modes.contains("g")) { - */ - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/3c/205637bed23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/3c/205637bed23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 19e20e0..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/3c/205637bed23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true) - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/3c/d00a0e58e240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/3c/d00a0e58e240001514c09dece48b36c7 deleted file mode 100644 index e68eaa6..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/3c/d00a0e58e240001514c09dece48b36c7 +++ /dev/null @@ -1,450 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - SaveFiles(); //2015.08.09. - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - //System.out.println("Start: "+start); - if(start==-1+"IGN:".length()) //+length: 2015.08.10. - continue; //2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - //System.out.println("End: "+end); - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - //System.out.println("IGN: "+ign); - ign = ign.trim(); - //System.out.println("Trimmed IGN: "+ign); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - /*else - flair = "non-presser";*/ - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - //return p.Flair!=null; //2015.08.08. - return p.CommentedOnReddit; //2015.08.10. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - p.FlairRecognised=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(--s)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(??s)§r"; - break; - case "unknown": - if(text.equals("-1")) //If true, only non-presser/can't press; if false, any flair - p.FlairDecided=false; - else - p.FlairRecognised=false; - finalflair=""; - break; - default: - //finalflair=""; - //break; - return; - } - /*if(finalflair.length()==0) //<-- 2015.07.20. - return;*/ - p.Flair=finalflair; //2015.08.08. - p.CommentedOnReddit=true; //2015.08.10. - p.UserName=username; //2015.08.08. - if(finalflair.length()==0) //Just for the message - finalflair="undecided"; - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - //return flair==null ? "" : flair; - return flair; //2015.08.10. - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - //AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - /*private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - *String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //<-- 2015.08.10. - TownColors.put(s[0], s[1]); - } - br.close(); - } - file=new File("customflairs.txt"); //2015.08.09. - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //2015.08.10. - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(s[0]); - p.Flair=s[1]; //2015.08.09. - p.CommentedOnReddit=true; //Kind of - } - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static boolean RemoveLineFromFile(String file, String line) - { //2015.08.09. - File inputFile = new File(file); - File tempFile = new File("_temp.txt"); - - if(!inputFile.exists()) - return true; //2015.08.10. - - try { - BufferedReader reader = new BufferedReader(new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String lineToRemove = line; - String currentLine; - - while((currentLine = reader.readLine()) != null) { - // trim newline when comparing with lineToRemove - String trimmedLine = currentLine.trim(); - //if(trimmedLine.equals(lineToRemove)) continue; - if(trimmedLine.contains(lineToRemove)) continue; //2015.08.09. - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if(!tempFile.renameTo(inputFile)) - { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } - else - return true; - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - return false; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/3e/6022916ee240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/3e/6022916ee240001514c09dece48b36c7 deleted file mode 100644 index 75e4c81..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/3e/6022916ee240001514c09dece48b36c7 +++ /dev/null @@ -1,452 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - public static ConsoleCommandSender Console; //2015.08.12. - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - SaveFiles(); //2015.08.09. - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - //System.out.println("Start: "+start); - if(start==-1+"IGN:".length()) //+length: 2015.08.10. - continue; //2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - //System.out.println("End: "+end); - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - //System.out.println("IGN: "+ign); - ign = ign.trim(); - //System.out.println("Trimmed IGN: "+ign); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - /*else - flair = "non-presser";*/ - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - //return p.Flair!=null; //2015.08.08. - return p.CommentedOnReddit; //2015.08.10. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - p.FlairRecognised=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(--s)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(??s)§r"; - break; - case "unknown": - if(text.equals("-1")) //If true, only non-presser/can't press; if false, any flair - p.FlairDecided=false; - else - p.FlairRecognised=false; - finalflair=""; - break; - default: - //finalflair=""; - //break; - return; - } - /*if(finalflair.length()==0) //<-- 2015.07.20. - return;*/ - p.Flair=finalflair; //2015.08.08. - p.CommentedOnReddit=true; //2015.08.10. - p.UserName=username; //2015.08.08. - if(finalflair.length()==0) //Just for the message - finalflair="undecided"; - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - //return flair==null ? "" : flair; - return flair; //2015.08.10. - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - //AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - /*private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - *String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //<-- 2015.08.10. - TownColors.put(s[0], s[1]); - } - br.close(); - } - file=new File("customflairs.txt"); //2015.08.09. - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //2015.08.10. - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(s[0]); - p.Flair=s[1]; //2015.08.09. - p.CommentedOnReddit=true; //Kind of - } - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static boolean RemoveLineFromFile(String file, String line) - { //2015.08.09. - File inputFile = new File(file); - File tempFile = new File("_temp.txt"); - - if(!inputFile.exists()) - return true; //2015.08.10. - - try { - BufferedReader reader = new BufferedReader(new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String lineToRemove = line; - String currentLine; - - while((currentLine = reader.readLine()) != null) { - // trim newline when comparing with lineToRemove - String trimmedLine = currentLine.trim(); - //if(trimmedLine.equals(lineToRemove)) continue; - if(trimmedLine.contains(lineToRemove)) continue; //2015.08.09. - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if(!tempFile.renameTo(inputFile)) - { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } - else - return true; - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - return false; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/3f/a0709f19cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/3f/a0709f19cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 9476659..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/3f/a0709f19cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/4/b030d637cd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/4/b030d637cd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 587e2b6..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/4/b030d637cd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,29 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - //public - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } - public enum FlairClassType - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/41/20453fde49a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/41/20453fde49a600151c15ab42d7919fee deleted file mode 100644 index 5721445..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/41/20453fde49a600151c15ab42d7919fee +++ /dev/null @@ -1,353 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.SetFlairColor(0x6); - break; - case "press-3": - p.SetFlairColor(0xe); - break; - case "press-4": - p.SetFlairColor(0xa); - break; - case "press-5": - p.SetFlairColor(0x9); - break; - case "press-6": - p.SetFlairColor(0x5); - break; - case "no-press": - p.SetFlairColor(0x7); - break; - case "cheater": - p.SetFlairColor(0x5); - break; - case "cant-press": - p.SetFlairColor(0xf); - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.SetFlair(0x7, "--"); - } else { - p.SetFlair(0xf, "--"); - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.SetFlairColor(0); - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/41/c0d7140345a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/41/c0d7140345a600151c15ab42d7919fee deleted file mode 100644 index f38d34c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/41/c0d7140345a600151c15ab42d7919fee +++ /dev/null @@ -1,112 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) - { - } - - public void SetFlairTime(String time) - { - - } - - public void SetFlair(short color, String time) - { - - } - - private void SetFlair2() - { - - //Flairs from Command Block The Button - Teams - //PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/44/3078a0bed23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/44/3078a0bed23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 717cff8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/44/3078a0bed23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/44/b01fe45045a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/44/b01fe45045a600151c15ab42d7919fee deleted file mode 100644 index ab3ff1c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/44/b01fe45045a600151c15ab42d7919fee +++ /dev/null @@ -1,113 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/46/a0e24f1ad43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/46/a0e24f1ad43e001518fa86d7ae2a1cf8 deleted file mode 100644 index 678f6a5..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/46/a0e24f1ad43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,221 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done."); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(player); //2015.08.09. - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/47/209354bad13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/47/209354bad13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 1a55983..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/47/209354bad13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,370 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - if(reload) - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/47/20a74d8ad13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/47/20a74d8ad13e001518fa86d7ae2a1cf8 deleted file mode 100644 index c0e1cef..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/47/20a74d8ad13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,368 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/49/203c0b4ad33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/49/203c0b4ad33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 1cec033..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/49/203c0b4ad33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/49/a04d8dc3d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/49/a04d8dc3d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5d7321f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/49/a04d8dc3d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/49/b0556e29ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/49/b0556e29ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 26a60f9..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/49/b0556e29ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/4a/20662b05d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/4a/20662b05d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 63c2d54..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/4a/20662b05d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/4b/203dd097ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/4b/203dd097ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 4e85b74..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/4b/203dd097ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,358 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/4b/40b1bfa8755d001515f3fd278c34f57e b/.metadata/.plugins/org.eclipse.core.resources/.history/4b/40b1bfa8755d001515f3fd278c34f57e deleted file mode 100644 index 2d88af8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/4b/40b1bfa8755d001515f3fd278c34f57e +++ /dev/null @@ -1,465 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; -import org.apache.commons.io.IOUtils; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - System.out.println("The Button Minecraft server plugin"); - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - public void ThreadMethod() // <-- 2015.07.16. - { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if (HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" - + author).replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) // 2015.07.15. - flair = flairdata[1]; - else - flair = ""; - if (flair != "-1") - flair = flair + "s"; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(ign, flair, flairclass, author); - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors = new HashMap(); // 2015.07.20. - - public Boolean HasIGFlair(String playername) { - MaybeOfflinePlayer p = MaybeOfflinePlayer.AddPlayerIfNeeded(playername); // 2015.08.08. - return p.CommentedOnReddit; // 2015.08.10. - } - - public void SetFlair(String playername, String text, String flairclass, - String username) { - MaybeOfflinePlayer p = MaybeOfflinePlayer.AddPlayerIfNeeded(playername); // 2015.08.08. - String finalflair; - p.FlairDecided = true; - p.FlairRecognised = true; - switch (flairclass) { - case "press-1": - finalflair = "§c(" + text + ")§r"; - break; - case "press-2": - finalflair = "§6(" + text + ")§r"; - break; - case "press-3": - finalflair = "§e(" + text + ")§r"; - break; - case "press-4": - finalflair = "§a(" + text + ")§r"; - break; - case "press-5": - finalflair = "§9(" + text + ")§r"; - break; - case "press-6": - finalflair = "§5(" + text + ")§r"; - break; - case "no-press": - finalflair = "§7(--s)§r"; - break; - case "cheater": - finalflair = "§5(" + text + ")§r"; - break; - case "cant-press": // 2015.08.08. - finalflair = "§r(??s)§r"; - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - p.FlairDecided = false; - else - p.FlairRecognised = false; - finalflair = ""; - break; - default: - return; - } - p.Flair = finalflair; // 2015.08.08. - p.CommentedOnReddit = true; // 2015.08.10. - p.UserName = username; // 2015.08.08. - for (Player player : getServer().getOnlinePlayers()) // <-- 2015.08.08. - { - if (player.getName().equals(playername)) { - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) { // 2015.07.16. - String flair = MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; // 2015.08.08. - // return flair==null ? "" : flair; - return flair; // 2015.08.10. - } - - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, - Player p) // <-- 2015.08.09. - { - - if (MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if (MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) { - if (!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); // 2015.08.09. - } else - p.sendMessage("§9Are you Reddit user " + player.UserName - + "?§r §6Type /u accept or /u ignore§r"); - } - - public static String GetColorForTown(String townname) { // 2015.07.20. - if (TownColors.containsKey(townname)) - return TownColors.get(townname); - return ""; - } - - public static String GetPlayerTown(Player player) { // 2015.07.20. - try { - Town town = WorldCoord.parseWorldCoord(player).getTownBlock() - .getTown(); // TODO - return town.getName(); - } catch (Exception e) { - return ""; - } - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) // <-- 2015.08.09. - { - if (reload) { // 2015.08.09. - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); // 2015.08.09. - try { - File file = new File("flairsaccepted.txt"); - if (file.exists()) { - BufferedReader br = new BufferedReader(new FileReader( - "flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) { - String name = line.replace("\n", ""); - // System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair = true; // 2015.08.08. - } - br.close(); - } - file = new File("flairsignored.txt"); - if (file.exists()) { - BufferedReader br = new BufferedReader(new FileReader( - "flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) { - String name = line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair = true; // 2015.08.08. - } - br.close(); - } - file = new File("autoflairconfig.txt"); - if (file.exists()) { - BufferedReader br = new BufferedReader(new FileReader(file)); - String line; - while ((line = br.readLine()) != null) { - String[] s = line.split(" "); - if (s.length >= 2) // <-- 2015.08.10. - TownColors.put(s[0], s[1]); - } - br.close(); - } - file = new File("customflairs.txt"); // 2015.08.09. - if (file.exists()) { - BufferedReader br = new BufferedReader(new FileReader(file)); - String line; - while ((line = br.readLine()) != null) { - String[] s = line.split(" "); - if (s.length >= 2) // 2015.08.10. - { - MaybeOfflinePlayer p = MaybeOfflinePlayer - .AddPlayerIfNeeded(s[0]); - p.Flair = s[1]; // 2015.08.09. - p.CommentedOnReddit = true; // Kind of - p.FlairDecided = true; - p.FlairRecognised = true; - } - } - br.close(); - } - file = new File("notificationsound.txt"); // 2015.08.09. - if (file.exists()) { - BufferedReader br = new BufferedReader(new FileReader(file)); - String line = br.readLine(); - String[] split = line.split(" "); - PlayerListener.NotificationSound = split[0]; - PlayerListener.NotificationPitch = Float.parseFloat(split[1]); - br.close(); - } - file = new File("announcemessages.txt"); // 2015.08.09. - if (file.exists()) { - BufferedReader br = new BufferedReader(new FileReader(file)); - String line; - boolean first = true; - while ((line = br.readLine()) != null) { - if (first) { - AnnounceTime = Integer.parseInt(line.trim()); - first = false; - } else - AnnounceMessages.add(line.trim()); - } - br.close(); - } else { - // Write time - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file)); - bw.write(AnnounceTime + "\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - - public static void SaveFiles() // <-- 2015.08.09. - { - try { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } catch (Exception e) { - System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - try { - File file = new File("flairsaccepted.txt"); - BufferedWriter bw = new BufferedWriter(new FileWriter(file, true)); - for (MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers - .values()) // <-- 2015.08.08. - { - if (!player.AcceptedFlair) - continue; // 2015.08.08. - bw.write(player.PlayerName + "\n"); - } - bw.close(); - file = new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for (MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers - .values()) // <-- 2015.08.08. - { - if (!player.IgnoredFlair) - continue; // 2015.08.08. - bw.write(player.PlayerName + "\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - - public static boolean RemoveLineFromFile(String file, String line) { // 2015.08.09. - File inputFile = new File(file); - File tempFile = new File("_temp.txt"); - - if (!inputFile.exists()) - return true; // 2015.08.10. - - try { - BufferedReader reader = new BufferedReader( - new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String lineToRemove = line; - String currentLine; - - while ((currentLine = reader.readLine()) != null) { - // trim newline when comparing with lineToRemove - String trimmedLine = currentLine.trim(); - if (trimmedLine.split(" ")[0].equals(lineToRemove)) - continue; // 2015.08.17. - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if (!tempFile.renameTo(inputFile)) { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } else - return true; - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - return false; - } - - public static boolean RemoveLineFromFile(String file, int index) { - File inputFile = new File(file); - File tempFile = new File("_temp2.txt"); - - if (!inputFile.exists()) - return true; // 2015.08.10. - - try { - BufferedReader reader = new BufferedReader( - new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String currentLine; - int i = 0; - - while ((currentLine = reader.readLine()) != null) { - if (i++ == index) - continue; - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if (!tempFile.renameTo(inputFile)) { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } else - return true; - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - return false; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/4c/30becb7849a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/4c/30becb7849a600151c15ab42d7919fee deleted file mode 100644 index 2837b3f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/4c/30becb7849a600151c15ab42d7919fee +++ /dev/null @@ -1,122 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } - - public short GetFlairColor() - { - return FlairColor; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a0ee15dcd13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a0ee15dcd13e001518fa86d7ae2a1cf8 deleted file mode 100644 index fb29d4f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/4d/a0ee15dcd13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,373 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - if(reload) - { - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/4d/c045effe4ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/4d/c045effe4ba600151c15ab42d7919fee deleted file mode 100644 index fefe37f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/4d/c045effe4ba600151c15ab42d7919fee +++ /dev/null @@ -1,353 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.SetFlairColor(0x6); - break; - case "press-3": - p.SetFlairColor(0xe); - break; - case "press-4": - p.SetFlairColor(0xa); - break; - case "press-5": - p.SetFlairColor(0x9); - break; - case "press-6": - p.SetFlairColor(0x5); - break; - case "no-press": - p.SetFlairColor(0x7); - break; - case "cheater": - p.SetFlairColor(0x5); - break; - case "cant-press": - p.SetFlairColor(0xf); - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.SetFlair(0x7, "--"); - } else { - p.SetFlair(0xf, "--"); - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.SetFlairColor(0); - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.SetFlairColor(0); - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.SetFlairTime(text); - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/53/202e6b364ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/53/202e6b364ba600151c15ab42d7919fee deleted file mode 100644 index f8a30d7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/53/202e6b364ba600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/53/40b494f5e540001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/53/40b494f5e540001514c09dece48b36c7 deleted file mode 100644 index d9ec7da..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/53/40b494f5e540001514c09dece48b36c7 +++ /dev/null @@ -1,72 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(arg0, arg1, arg2, arg3) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/53/d0c1dad6e440001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/53/d0c1dad6e440001514c09dece48b36c7 deleted file mode 100644 index 159e3e4..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/53/d0c1dad6e440001514c09dece48b36c7 +++ /dev/null @@ -1,296 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - PluginMain.Console.sendMessage("§6-- Reloading Auto-flair plugin...§r"); - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/55/c0fc6b25cd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/55/c0fc6b25cd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 6549d0e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/55/c0fc6b25cd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,24 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/56/205a1cf9d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/56/205a1cf9d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index d7286f9..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/56/205a1cf9d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,374 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { - System.out.println("Reloading files for auto-flair plugin..."); //2015.08.09. - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/56/f06dfb95d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/56/f06dfb95d8a500151c15ab42d7919fee deleted file mode 100644 index 37b893b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/56/f06dfb95d8a500151c15ab42d7919fee +++ /dev/null @@ -1,596 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - if(Lastlol!=null) - Lastlol.UUID - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5b/008c7edd2d53001516cdaaef55e27ba4 b/.metadata/.plugins/org.eclipse.core.resources/.history/5b/008c7edd2d53001516cdaaef55e27ba4 deleted file mode 100644 index 9a58544..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5b/008c7edd2d53001516cdaaef55e27ba4 +++ /dev/null @@ -1,16 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system. Accept or ignore flair. - usage: "&cUsage: /u accept|ignore|opme&r" - nrp: - description: Send message in Out-of-Character - usage: "&cUsage: /nrp &r" - ooc: - description: Send message in Out-of-Character - usage: "&cUsage: /ooc &r" -author: NorbiPeti -depend: [Essentials, Towny] -s \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5b/e0d83cf9de40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/5b/e0d83cf9de40001514c09dece48b36c7 deleted file mode 100644 index 68a104f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5b/e0d83cf9de40001514c09dece48b36c7 +++ /dev/null @@ -1,297 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§6Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5c/a03b3ea1d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/5c/a03b3ea1d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 3d0defb..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5c/a03b3ea1d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,219 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(); - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5d/a0a6c2d0d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/5d/a0a6c2d0d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5d7321f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5d/a0a6c2d0d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5d/a0befd81d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/5d/a0befd81d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 3318744..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5d/a0befd81d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,216 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5e/c0d6d38be640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/5e/c0d6d38be640001514c09dece48b36c7 deleted file mode 100644 index cbc9ea1..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5e/c0d6d38be640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 1.0f); //2015.08.12. - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5f/2061341bd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/5f/2061341bd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index ff39b38..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5f/2061341bd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,375 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5f/50257859e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/5f/50257859e640001514c09dece48b36c7 deleted file mode 100644 index c192f31..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5f/50257859e640001514c09dece48b36c7 +++ /dev/null @@ -1,72 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), , arg2, arg3) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/5f/c0b28923ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/5f/c0b28923ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 26a60f9..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/5f/c0b28923ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6/2029114dd33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/6/2029114dd33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 14132d5..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6/2029114dd33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,216 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; - p.sendMessage(msg); - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6/208a8252ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/6/208a8252ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 7477f60..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6/208a8252ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,31 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - public FlairClassType FlairType; //2015.08.09. - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } - public enum FlairClassType - { //2015.08.09. - NonPresser, - CantPress, - Undecided - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6/a032431fd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/6/a032431fd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index b21f1ef..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6/a032431fd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,375 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/61/b0779e98d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/61/b0779e98d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index f7dee03..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/61/b0779e98d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,205 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/63/206c2677ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/63/206c2677ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index c13bb09..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/63/206c2677ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,358 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairType=FlairClassType.Undecided; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/63/90beaa3cd8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/63/90beaa3cd8a500151c15ab42d7919fee deleted file mode 100644 index 36790ac..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/63/90beaa3cd8a500151c15ab42d7919fee +++ /dev/null @@ -1,596 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static boolean PluginUpdated = false; // 2015.08.31. - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) - { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/63/d06551420941001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/63/d06551420941001514c09dece48b36c7 deleted file mode 100644 index e93fc19..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/63/d06551420941001514c09dece48b36c7 +++ /dev/null @@ -1,74 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - if(message.contains(p.getName())) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/64/202fdd3acd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/64/202fdd3acd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index d2a8475..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/64/202fdd3acd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,31 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - //public - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } - public enum FlairClassType - { - NonPresser, - CantPress, - Undecided - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/64/20a74791d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/64/20a74791d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5a05c55..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/64/20a74791d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,205 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - return; - } - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/64/90cec71ead9e0015192daf17db672400 b/.metadata/.plugins/org.eclipse.core.resources/.history/64/90cec71ead9e0015192daf17db672400 deleted file mode 100644 index edcd38c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/64/90cec71ead9e0015192daf17db672400 +++ /dev/null @@ -1,595 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static boolean PluginUpdated = false; // 2015.08.31. - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) // toLowerCase: 2015.08.09. - { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/65/5094853442a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/65/5094853442a600151c15ab42d7919fee deleted file mode 100644 index 7e5e0ec..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/65/5094853442a600151c15ab42d7919fee +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - // TODO: Flairs from Command Block The Button - Teams - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = e.getPlayer(); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/67/c0952ea8e240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/67/c0952ea8e240001514c09dece48b36c7 deleted file mode 100644 index 340df89..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/67/c0952ea8e240001514c09dece48b36c7 +++ /dev/null @@ -1,298 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message) - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6a/20a2e34ad03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/6a/20a2e34ad03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 330b73a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6a/20a2e34ad03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,201 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - s - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6a/406f8416e340001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/6a/406f8416e340001514c09dece48b36c7 deleted file mode 100644 index 4f33dd3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6a/406f8416e340001514c09dece48b36c7 +++ /dev/null @@ -1,298 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6b/700669952d53001516cdaaef55e27ba4 b/.metadata/.plugins/org.eclipse.core.resources/.history/6b/700669952d53001516cdaaef55e27ba4 deleted file mode 100644 index 5b3245c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6b/700669952d53001516cdaaef55e27ba4 +++ /dev/null @@ -1,13 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system. Accept or ignore flair. - usage: "&cUsage: /u accept|ignore|opme&r" - nrp: - description: Send message in Out-of-Character - usage: "&cUsage: /nrp &r" - ooc: - description: Send message in Out-of-Character - usage: "&cUsage: /ooc &r" \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6c/20b08dced03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/6c/20b08dced03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 0384150..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6c/20b08dced03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,211 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6c/500072fecd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/6c/500072fecd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5740654..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6c/500072fecd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,351 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6c/506c7d4ee140001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/6c/506c7d4ee140001514c09dece48b36c7 deleted file mode 100644 index 8742a9c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6c/506c7d4ee140001514c09dece48b36c7 +++ /dev/null @@ -1,71 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6e/60f4f3db2d53001516cdaaef55e27ba4 b/.metadata/.plugins/org.eclipse.core.resources/.history/6e/60f4f3db2d53001516cdaaef55e27ba4 deleted file mode 100644 index f7e6157..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6e/60f4f3db2d53001516cdaaef55e27ba4 +++ /dev/null @@ -1,14 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system. Accept or ignore flair. - usage: "&cUsage: /u accept|ignore|opme&r" - nrp: - description: Send message in Out-of-Character - usage: "&cUsage: /nrp &r" - ooc: - description: Send message in Out-of-Character - usage: "&cUsage: /ooc &r" -author: NorbiPeti \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6e/a01e1adad13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/6e/a01e1adad13e001518fa86d7ae2a1cf8 deleted file mode 100644 index fb29d4f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6e/a01e1adad13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,373 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - if(reload) - { - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6f/10014ab944a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/6f/10014ab944a600151c15ab42d7919fee deleted file mode 100644 index cc10ce9..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6f/10014ab944a600151c15ab42d7919fee +++ /dev/null @@ -1,90 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - public String FlairTime; - public short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6f/d0569c5ae240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/6f/d0569c5ae240001514c09dece48b36c7 deleted file mode 100644 index 5a0d8b8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/6f/d0569c5ae240001514c09dece48b36c7 +++ /dev/null @@ -1,451 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - public static ConsoleSender Console; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - SaveFiles(); //2015.08.09. - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - //System.out.println("Start: "+start); - if(start==-1+"IGN:".length()) //+length: 2015.08.10. - continue; //2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - //System.out.println("End: "+end); - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - //System.out.println("IGN: "+ign); - ign = ign.trim(); - //System.out.println("Trimmed IGN: "+ign); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - /*else - flair = "non-presser";*/ - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - //return p.Flair!=null; //2015.08.08. - return p.CommentedOnReddit; //2015.08.10. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - p.FlairRecognised=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(--s)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(??s)§r"; - break; - case "unknown": - if(text.equals("-1")) //If true, only non-presser/can't press; if false, any flair - p.FlairDecided=false; - else - p.FlairRecognised=false; - finalflair=""; - break; - default: - //finalflair=""; - //break; - return; - } - /*if(finalflair.length()==0) //<-- 2015.07.20. - return;*/ - p.Flair=finalflair; //2015.08.08. - p.CommentedOnReddit=true; //2015.08.10. - p.UserName=username; //2015.08.08. - if(finalflair.length()==0) //Just for the message - finalflair="undecided"; - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - //return flair==null ? "" : flair; - return flair; //2015.08.10. - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - //AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - /*private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - *String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //<-- 2015.08.10. - TownColors.put(s[0], s[1]); - } - br.close(); - } - file=new File("customflairs.txt"); //2015.08.09. - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //2015.08.10. - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(s[0]); - p.Flair=s[1]; //2015.08.09. - p.CommentedOnReddit=true; //Kind of - } - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static boolean RemoveLineFromFile(String file, String line) - { //2015.08.09. - File inputFile = new File(file); - File tempFile = new File("_temp.txt"); - - if(!inputFile.exists()) - return true; //2015.08.10. - - try { - BufferedReader reader = new BufferedReader(new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String lineToRemove = line; - String currentLine; - - while((currentLine = reader.readLine()) != null) { - // trim newline when comparing with lineToRemove - String trimmedLine = currentLine.trim(); - //if(trimmedLine.equals(lineToRemove)) continue; - if(trimmedLine.contains(lineToRemove)) continue; //2015.08.09. - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if(!tempFile.renameTo(inputFile)) - { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } - else - return true; - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - return false; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/7/d0a7c5c8ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/7/d0a7c5c8ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 752a73d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/7/d0a7c5c8ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,361 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/71/20d5de7b4aa600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/71/20d5de7b4aa600151c15ab42d7919fee deleted file mode 100644 index 705d7bd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/71/20d5de7b4aa600151c15ab42d7919fee +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.GetFlairColor() == 0x00 ? 0xb - : mp.GetFlairColor())); // TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/71/b09765e7d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/71/b09765e7d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 738511a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/71/b09765e7d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,373 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/73/b05d0d564ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/73/b05d0d564ca600151c15ab42d7919fee deleted file mode 100644 index 6a13bdf..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/73/b05d0d564ca600151c15ab42d7919fee +++ /dev/null @@ -1,602 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - && (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/75/200e61c5d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/75/200e61c5d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 03f8e7b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/75/200e61c5d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,209 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - } - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/75/20bc5301d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/75/20bc5301d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 7e0571a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/75/20bc5301d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,222 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/75/407eccf8d0a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/75/407eccf8d0a500151c15ab42d7919fee deleted file mode 100644 index 9d8da54..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/75/407eccf8d0a500151c15ab42d7919fee +++ /dev/null @@ -1,89 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - public String FlairTime; - public short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/75/a0acffa2d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/75/a0acffa2d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 2b15b31..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/75/a0acffa2d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,368 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/76/20df8b6f45a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/76/20df8b6f45a600151c15ab42d7919fee deleted file mode 100644 index 19558ac..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/76/20df8b6f45a600151c15ab42d7919fee +++ /dev/null @@ -1,117 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.Format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/76/800c9206d5a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/76/800c9206d5a500151c15ab42d7919fee deleted file mode 100644 index 7ca9b78..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/76/800c9206d5a500151c15ab42d7919fee +++ /dev/null @@ -1,370 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - /* - * Channel c = ((Chat) Bukkit.getPluginManager().getPlugin("TownyChat")) - * .getChannelsHandler().getActiveChannel(e.getPlayer(), - * channelTypes.GLOBAL); - */ - /* - * List modes = ((Chat) Bukkit.getPluginManager().getPlugin( - * "TownyChat")).getTowny().getPlayerMode(e.getPlayer()); if - * (modes.size() == 0 || modes.contains("g")) { - */ - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/76/b054e00b4aa600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/76/b054e00b4aa600151c15ab42d7919fee deleted file mode 100644 index de7ab67..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/76/b054e00b4aa600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/77/10dec4cbce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/77/10dec4cbce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5908a1d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/77/10dec4cbce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,360 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/78/a0991cb7d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/78/a0991cb7d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 2a4b609..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/78/a0991cb7d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,370 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - if(reload) - MaybeOfflinePlayer.AllPlayers.clear(); - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/78/c0c9ec2dd8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/78/c0c9ec2dd8a500151c15ab42d7919fee deleted file mode 100644 index 1205b00..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/78/c0c9ec2dd8a500151c15ab42d7919fee +++ /dev/null @@ -1,595 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static boolean PluginUpdated = false; // 2015.08.31. - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) - { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/7c/3014764dcd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/7c/3014764dcd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index c8a5a26..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/7c/3014764dcd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,31 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - //public - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } - public enum FlairClassType - { //2015.08.09. - NonPresser, - CantPress, - Undecided - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/7c/a0934f14cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/7c/a0934f14cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index ad8a270..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/7c/a0934f14cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/7d/a005617fd13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/7d/a005617fd13e001518fa86d7ae2a1cf8 deleted file mode 100644 index dbcf375..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/7d/a005617fd13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,363 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/80/2077802d4ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/80/2077802d4ba600151c15ab42d7919fee deleted file mode 100644 index 706d6e4..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/80/2077802d4ba600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: "+Lastlol); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/80/4075d399d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/80/4075d399d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 8abed8b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/80/4075d399d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,206 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/81/b0e3d39bd13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/81/b0e3d39bd13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 81f3985..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/81/b0e3d39bd13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,326 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/82/201f90d5d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/82/201f90d5d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 0384150..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/82/201f90d5d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,211 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/82/704f84a1d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/82/704f84a1d8a500151c15ab42d7919fee deleted file mode 100644 index 560d320..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/82/704f84a1d8a500151c15ab42d7919fee +++ /dev/null @@ -1,596 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - if(Lastlol!=null || Bukkit.getPlayer(Lastlol.UUID)) - Lastlol.UUID - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/83/20a1e315cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/83/20a1e315cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 72f8cf3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/83/20a1e315cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/84/a0c00f13cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/84/a0c00f13cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 999a5ae..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/84/a0c00f13cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) - { - - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/85/401c3763e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/85/401c3763e640001514c09dece48b36c7 deleted file mode 100644 index ee7ab82..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/85/401c3763e640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0, arg3) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/86/b01dd91a4ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/86/b01dd91a4ca600151c15ab42d7919fee deleted file mode 100644 index 405e62a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/86/b01dd91a4ca600151c15ab42d7919fee +++ /dev/null @@ -1,605 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - System.out.println("Unlol command."); - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID)); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/87/30ab730244a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/87/30ab730244a600151c15ab42d7919fee deleted file mode 100644 index d35b442..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/87/30ab730244a600151c15ab42d7919fee +++ /dev/null @@ -1,366 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - // TODO: Flairs from Command Block The Button - Teams - PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams() - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/8c/a0ea662dcf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/8c/a0ea662dcf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 1213563..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/8c/a0ea662dcf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/8d/b08d79a849a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/8d/b08d79a849a600151c15ab42d7919fee deleted file mode 100644 index e3db2c7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/8d/b08d79a849a600151c15ab42d7919fee +++ /dev/null @@ -1,125 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(int color) { - FlairColor = (short)color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } - - public short GetFlairColor() { - return FlairColor; - } - - public String GetFlairTime() { - return FlairTime; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/8e/80598e6842a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/8e/80598e6842a600151c15ab42d7919fee deleted file mode 100644 index f66decd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/8e/80598e6842a600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/91/c01c0d9ecf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/91/c01c0d9ecf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index a085586..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/91/c01c0d9ecf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,71 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.Flair!=null) - PluginMain.AppendPlayerDisplayFlair(p, mp.UserName, mp.Flair); - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(flair==null || !player.AcceptedFlair) - flair=""; //2015.08.08. - String message=event.getMessage(); //2015.08.08. - /*for(Player p : PluginMain.GetPlayers()) - { //2015.08.08. - message.replaceAll(p.getName(), ) - }*/ - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/93/10f3fc0acf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/93/10f3fc0acf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index a62c891..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/93/10f3fc0acf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,361 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/93/d0f07864d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/93/d0f07864d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index f15dd12..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/93/d0f07864d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,376 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/94/2033b6d6d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/94/2033b6d6d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 6ac02e4..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/94/2033b6d6d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,373 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - System.out.println("Loading files for auto-flair plugin..."); - if(reload) - { - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/96/20ba5e09d43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/96/20ba5e09d43e001518fa86d7ae2a1cf8 deleted file mode 100644 index 6a40e1a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/96/20ba5e09d43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,219 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done."); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(player); //2015.08.09. - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/97/20ad60e0d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/97/20ad60e0d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 4c2bf02..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/97/20ad60e0d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,211 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="" - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/97/a0aae0bdd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/97/a0aae0bdd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 229de7d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/97/a0aae0bdd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,223 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/97/c037f44de440001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/97/c037f44de440001514c09dece48b36c7 deleted file mode 100644 index 5c4b806..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/97/c037f44de440001514c09dece48b36c7 +++ /dev/null @@ -1,296 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - PluginMain.Console.sendMessage("§6-- Reloading Auto-flair plugin...§r"); - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player)s - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/97/c0e2ad6fce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/97/c0e2ad6fce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 28be51a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/97/c0e2ad6fce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,357 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairType=FlairClassType.Undecided; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/97/f0a3a5f1de40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/97/f0a3a5f1de40001514c09dece48b36c7 deleted file mode 100644 index a5817c9..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/97/f0a3a5f1de40001514c09dece48b36c7 +++ /dev/null @@ -1,297 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§6Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/98/201af098d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/98/201af098d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index f7dee03..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/98/201af098d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,205 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/98/20ac1ac949a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/98/20ac1ac949a600151c15ab42d7919fee deleted file mode 100644 index 22c2c98..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/98/20ac1ac949a600151c15ab42d7919fee +++ /dev/null @@ -1,125 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(int color) { - FlairColor = (short) color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } - - public short GetFlairColor() { - return FlairColor; - } - - public String GetFlairTime() { - return FlairTime; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/9a/90dce6d5ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/9a/90dce6d5ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index f48f1b4..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/9a/90dce6d5ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,361 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/9a/a0aebdacd03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/9a/a0aebdacd03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 8abed8b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/9a/a0aebdacd03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,206 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/9a/e08e32dd2d53001516cdaaef55e27ba4 b/.metadata/.plugins/org.eclipse.core.resources/.history/9a/e08e32dd2d53001516cdaaef55e27ba4 deleted file mode 100644 index 9626fec..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/9a/e08e32dd2d53001516cdaaef55e27ba4 +++ /dev/null @@ -1,15 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system. Accept or ignore flair. - usage: "&cUsage: /u accept|ignore|opme&r" - nrp: - description: Send message in Out-of-Character - usage: "&cUsage: /nrp &r" - ooc: - description: Send message in Out-of-Character - usage: "&cUsage: /ooc &r" -author: NorbiPeti -depend: [Essentials, Towny] diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30bb8899d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30bb8899d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 2e695ac..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30bb8899d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,326 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - Load(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30e075274ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30e075274ca600151c15ab42d7919fee deleted file mode 100644 index 0648957..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/9c/30e075274ca600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID)); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/9d/60a4c73b42a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/9d/60a4c73b42a600151c15ab42d7919fee deleted file mode 100644 index 016285c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/9d/60a4c73b42a600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a0/30b1eb2c4ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/a0/30b1eb2c4ba600151c15ab42d7919fee deleted file mode 100644 index 8c52539..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a0/30b1eb2c4ba600151c15ab42d7919fee +++ /dev/null @@ -1,602 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/1035b42cd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/a1/1035b42cd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 3051444..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/1035b42cd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,376 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/40b13fdfb94400151637bde96975c236 b/.metadata/.plugins/org.eclipse.core.resources/.history/a1/40b13fdfb94400151637bde96975c236 deleted file mode 100644 index b71fce5..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/40b13fdfb94400151637bde96975c236 +++ /dev/null @@ -1,7 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system and others, like name mentioning - usage: "&cUsage: /u accept|ignore|opme&r" diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/a05e6526d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/a1/a05e6526d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 7d30f89..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/a05e6526d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,375 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/b06db16849a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/a1/b06db16849a600151c15ab42d7919fee deleted file mode 100644 index dd1e99c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a1/b06db16849a600151c15ab42d7919fee +++ /dev/null @@ -1,117 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a2/206c0ba2d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/a2/206c0ba2d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 23364ef..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a2/206c0ba2d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,222 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a2/20ecb1f0d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/a2/20ecb1f0d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 41fefc9..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a2/20ecb1f0d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,211 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a3/b08191454ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/a3/b08191454ba600151c15ab42d7919fee deleted file mode 100644 index 4d2b5cb..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a3/b08191454ba600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID))); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a4/a0f428a3d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/a4/a0f428a3d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 72b38bc..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a4/a0f428a3d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,219 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a5/102ab363e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/a5/102ab363e640001514c09dece48b36c7 deleted file mode 100644 index 06ce0fb..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a5/102ab363e640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0, 1.0) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/a8/4016faaee240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/a8/4016faaee240001514c09dece48b36c7 deleted file mode 100644 index f1e321a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/a8/4016faaee240001514c09dece48b36c7 +++ /dev/null @@ -1,299 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/aa/a076f09ad33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/aa/a076f09ad33e001518fa86d7ae2a1cf8 deleted file mode 100644 index cb3725d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/aa/a076f09ad33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,218 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ab/c07bf623e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/ab/c07bf623e640001514c09dece48b36c7 deleted file mode 100644 index 7c5cf6b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ab/c07bf623e640001514c09dece48b36c7 +++ /dev/null @@ -1,72 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), arg1, arg2, arg3) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ab/c0cfe25644a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/ab/c0cfe25644a600151c15ab42d7919fee deleted file mode 100644 index e510459..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ab/c0cfe25644a600151c15ab42d7919fee +++ /dev/null @@ -1,367 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - // TODO: Flairs from Command Block The Button - Teams - for(int i=0; i<=60; i++) - PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ac/50a4ecaae240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/ac/50a4ecaae240001514c09dece48b36c7 deleted file mode 100644 index e8643bd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ac/50a4ecaae240001514c09dece48b36c7 +++ /dev/null @@ -1,298 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/60b39408d43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/ad/60b39408d43e001518fa86d7ae2a1cf8 deleted file mode 100644 index 05f66ff..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/60b39408d43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,220 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done."); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - DoReload(player); //2015.08.09. - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/b067a2dd2d53001516cdaaef55e27ba4 b/.metadata/.plugins/org.eclipse.core.resources/.history/ad/b067a2dd2d53001516cdaaef55e27ba4 deleted file mode 100644 index 9626fec..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/b067a2dd2d53001516cdaaef55e27ba4 +++ /dev/null @@ -1,15 +0,0 @@ -name: TheButtonMCPlugin -main: tk.sznp.thebuttonautoflair.PluginMain -version: 2.0 -commands: - u: - description: Auto-flair system. Accept or ignore flair. - usage: "&cUsage: /u accept|ignore|opme&r" - nrp: - description: Send message in Out-of-Character - usage: "&cUsage: /nrp &r" - ooc: - description: Send message in Out-of-Character - usage: "&cUsage: /ooc &r" -author: NorbiPeti -depend: [Essentials, Towny] diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/c0954ebcce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/ad/c0954ebcce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 2284d68..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/c0954ebcce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,361 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/e01e43fdde40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/ad/e01e43fdde40001514c09dece48b36c7 deleted file mode 100644 index 9bf1e2e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ad/e01e43fdde40001514c09dece48b36c7 +++ /dev/null @@ -1,297 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§6Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ae/00c863dc41a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/ae/00c863dc41a600151c15ab42d7919fee deleted file mode 100644 index 5810a0c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ae/00c863dc41a600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ae/1023a9f9cc3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/ae/1023a9f9cc3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 21abae7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ae/1023a9f9cc3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,194 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ae/d01c7740e340001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/ae/d01c7740e340001514c09dece48b36c7 deleted file mode 100644 index 233a816..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ae/d01c7740e340001514c09dece48b36c7 +++ /dev/null @@ -1,295 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - PluginMain.Console.sendMessage("§6-- Reloading Auto-flair plugin..."); - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b/301da326cd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b/301da326cd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 3d05e25..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b/301da326cd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,25 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - public - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b1/20248930cd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b1/20248930cd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index a73501d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b1/20248930cd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,25 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - //public - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b1/30440676d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b1/30440676d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index c6af7c6..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b1/30440676d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,201 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/100a9853d43e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b3/100a9853d43e001518fa86d7ae2a1cf8 deleted file mode 100644 index 9a2577a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/100a9853d43e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,224 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - if(ReloadPlayer.equals(player)) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/309b60224ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b3/309b60224ca600151c15ab42d7919fee deleted file mode 100644 index 0648957..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/309b60224ca600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID)); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/a04fb97a44a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b3/a04fb97a44a600151c15ab42d7919fee deleted file mode 100644 index 25e3bf6..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/a04fb97a44a600151c15ab42d7919fee +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/c04f9e03ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b3/c04f9e03ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 68717ab..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/c04f9e03ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,354 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided":; //2015.08.09. - finalflair="" - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/f0d62592e540001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/b3/f0d62592e540001514c09dece48b36c7 deleted file mode 100644 index 1ac0551..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b3/f0d62592e540001514c09dece48b36c7 +++ /dev/null @@ -1,72 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.sendMessage() - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/00f67dc54ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b5/00f67dc54ca600151c15ab42d7919fee deleted file mode 100644 index 21e1a87..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/00f67dc54ca600151c15ab42d7919fee +++ /dev/null @@ -1,602 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - && (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, true, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/202ce194d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b5/202ce194d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 2e695ac..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/202ce194d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,326 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - Load(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/20cff1fb49a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b5/20cff1fb49a600151c15ab42d7919fee deleted file mode 100644 index 1ece9ce..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/20cff1fb49a600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/40ecd766ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b5/40ecd766ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 39e5134..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/40ecd766ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,31 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - public boolean FlairSet; //2015.08.09. - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } - /*public enum FlairClassType - { //2015.08.09. - NonPresser, - CantPress, - Undecided - }*/ -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/b00008cc4ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b5/b00008cc4ca600151c15ab42d7919fee deleted file mode 100644 index 0516444..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b5/b00008cc4ca600151c15ab42d7919fee +++ /dev/null @@ -1,602 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - && (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10 * 20, 5, true, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b6/20667af5cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b6/20667af5cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index eab3194..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b6/20667af5cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,197 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b6/20b982994aa600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b6/20b982994aa600151c15ab42d7919fee deleted file mode 100644 index 0e44c25..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b6/20b982994aa600151c15ab42d7919fee +++ /dev/null @@ -1,366 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - - mp.SetFlairColor(mp.GetFlairColor()); - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.GetFlairColor() == 0x00 ? 0xb - : mp.GetFlairColor())); // TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/20f6378ed03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b7/20f6378ed03e001518fa86d7ae2a1cf8 deleted file mode 100644 index d6e50b3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/20f6378ed03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,204 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - } - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/80013692d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b7/80013692d8a500151c15ab42d7919fee deleted file mode 100644 index e2bd812..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/80013692d8a500151c15ab42d7919fee +++ /dev/null @@ -1,595 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b0476c2b4ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b0476c2b4ca600151c15ab42d7919fee deleted file mode 100644 index 7aaa8dd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b0476c2b4ca600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID)); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b048b351cd3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b048b351cd3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 4b9e4c5..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b7/b048b351cd3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,31 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.HashMap; - -public class MaybeOfflinePlayer -{ //2015.08.08. - public String PlayerName; - public String UserName; - public String Flair; //If the user comments their name, it gets set, it doesn't matter if they accepted it or not - public boolean AcceptedFlair; - public boolean IgnoredFlair; - public FlairClassType FlairType; - public static HashMap AllPlayers=new HashMap<>(); //2015.08.08. - public static MaybeOfflinePlayer AddPlayerIfNeeded(String playername) - { - if(!AllPlayers.containsKey(playername)) - { - MaybeOfflinePlayer player=new MaybeOfflinePlayer(); - player.PlayerName=playername; - AllPlayers.put(playername, player); - return player; - } - return AllPlayers.get(playername); - } - public enum FlairClassType - { //2015.08.09. - NonPresser, - CantPress, - Undecided - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b8/b0ca9a4a49a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/b8/b0ca9a4a49a600151c15ab42d7919fee deleted file mode 100644 index f66decd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b8/b0ca9a4a49a600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/b9/c0ad8e3ee340001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/b9/c0ad8e3ee340001514c09dece48b36c7 deleted file mode 100644 index 04a669a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/b9/c0ad8e3ee340001514c09dece48b36c7 +++ /dev/null @@ -1,294 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bb/708754aee240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/bb/708754aee240001514c09dece48b36c7 deleted file mode 100644 index 4f33dd3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bb/708754aee240001514c09dece48b36c7 +++ /dev/null @@ -1,298 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bc/30916f57cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/bc/30916f57cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 262b029..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bc/30916f57cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,362 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bc/a0204038ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/bc/a0204038ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index d838749..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bc/a0204038ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bc/a099c9afd13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/bc/a099c9afd13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 3926be9..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bc/a099c9afd13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,368 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bd/301fea5849a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/bd/301fea5849a600151c15ab42d7919fee deleted file mode 100644 index 25e3bf6..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bd/301fea5849a600151c15ab42d7919fee +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/a056849fd33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/bf/a056849fd33e001518fa86d7ae2a1cf8 deleted file mode 100644 index ef4123d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/a056849fd33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,219 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - case "confirm": - - break; - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/a0d1b862cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/bf/a0d1b862cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 0fdd3aa..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/a0d1b862cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press?§r"); //2015.08.09. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b097a02e4ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b097a02e4ca600151c15ab42d7919fee deleted file mode 100644 index 1330a76..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b097a02e4ca600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID)); - if (Lastlol != null - && (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b0a27d3d4ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b0a27d3d4ba600151c15ab42d7919fee deleted file mode 100644 index a0f7085..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/bf/b0a27d3d4ba600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - System.out.println("Lastlol: " + Lastlol); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/c/b06ccd99ce3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/c/b06ccd99ce3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 4e85b74..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/c/b06ccd99ce3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,358 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - { - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(player.getName()).AcceptedFlair) - AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - public static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/c2/20d96d9ad33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/c2/20d96d9ad33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 843f877..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/c2/20d96d9ad33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,216 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - //String msg="§6Reloaded config file.§r"; - //SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/c3/40771d08e740001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/c3/40771d08e740001514c09dece48b36c7 deleted file mode 100644 index 152043a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/c3/40771d08e740001514c09dece48b36c7 +++ /dev/null @@ -1,74 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - if(message.contains(p.getName())) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 1.0f); //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/c4/b016f69349a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/c4/b016f69349a600151c15ab42d7919fee deleted file mode 100644 index 7d0ffa7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/c4/b016f69349a600151c15ab42d7919fee +++ /dev/null @@ -1,355 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.FlairColor = 0x6; - break; - case "press-3": - p.FlairColor = 0xe; - break; - case "press-4": - p.FlairColor = 0xa; - break; - case "press-5": - p.FlairColor = 0x9; - break; - case "press-6": - p.FlairColor = 0x5; - break; - case "no-press": - p.FlairColor = 0x7; - break; - case "cheater": - p.FlairColor = 0x5; - break; - case "cant-press": - p.FlairColor = 0xf; - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.FlairColor = 0x7; - p.FlairTime = "--"; - } else { - p.FlairColor = 0xf; - p.FlairTime = "--"; - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.FlairColor = 0; - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/c5/30315643d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/c5/30315643d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index a8dea0e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/c5/30315643d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,198 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/c5/a03d9d1145a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/c5/a03d9d1145a600151c15ab42d7919fee deleted file mode 100644 index 201a69c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/c5/a03d9d1145a600151c15ab42d7919fee +++ /dev/null @@ -1,109 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - } - - public void SetFlairTime(String time) { - FlairTime = time; - } - - public void SetFlair(short color, String time) { - - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60051534d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60051534d8a500151c15ab42d7919fee deleted file mode 100644 index 36790ac..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ca/60051534d8a500151c15ab42d7919fee +++ /dev/null @@ -1,596 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static boolean PluginUpdated = false; // 2015.08.31. - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) - { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/cc/b08607c4d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/cc/b08607c4d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5d7321f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/cc/b08607c4d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/cd/90837b3cd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/cd/90837b3cd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index e95109b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/cd/90837b3cd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,377 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d/40ebea47e340001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/d/40ebea47e340001514c09dece48b36c7 deleted file mode 100644 index c4760e2..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d/40ebea47e340001514c09dece48b36c7 +++ /dev/null @@ -1,296 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - PluginMain.Console.sendMessage("§6-- Reloading Auto-flair plugin...§r"); - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading Auto-flair plugin...§r"); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d0/405b2dafe240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/d0/405b2dafe240001514c09dece48b36c7 deleted file mode 100644 index 4f33dd3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d0/405b2dafe240001514c09dece48b36c7 +++ /dev/null @@ -1,298 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d0/d0f74b8de640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/d0/d0f74b8de640001514c09dece48b36c7 deleted file mode 100644 index cbc9ea1..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d0/d0f74b8de640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 1.0f); //2015.08.12. - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d0/f0f48766e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/d0/f0f48766e640001514c09dece48b36c7 deleted file mode 100644 index 89930f8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d0/f0f48766e640001514c09dece48b36c7 +++ /dev/null @@ -1,73 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0, 1.0); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d2/204ad69bd03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/d2/204ad69bd03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 331b6b5..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d2/204ad69bd03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,206 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - w - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d2/505b5f5e45a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/d2/505b5f5e45a600151c15ab42d7919fee deleted file mode 100644 index 27ffbef..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d2/505b5f5e45a600151c15ab42d7919fee +++ /dev/null @@ -1,115 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p=Bukkit.getPlayer(UUID); - p.setPlayerListName(String.Format("%s%s", )); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d2/50685e70e240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/d2/50685e70e240001514c09dece48b36c7 deleted file mode 100644 index a8534f3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d2/50685e70e240001514c09dece48b36c7 +++ /dev/null @@ -1,453 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - public static ConsoleCommandSender Console; //2015.08.12. - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - Console=this.getServer().getConsoleSender(); - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - SaveFiles(); //2015.08.09. - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - //System.out.println("Start: "+start); - if(start==-1+"IGN:".length()) //+length: 2015.08.10. - continue; //2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - //System.out.println("End: "+end); - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - //System.out.println("IGN: "+ign); - ign = ign.trim(); - //System.out.println("Trimmed IGN: "+ign); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - /*else - flair = "non-presser";*/ - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - //return p.Flair!=null; //2015.08.08. - return p.CommentedOnReddit; //2015.08.10. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - p.FlairRecognised=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(--s)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(??s)§r"; - break; - case "unknown": - if(text.equals("-1")) //If true, only non-presser/can't press; if false, any flair - p.FlairDecided=false; - else - p.FlairRecognised=false; - finalflair=""; - break; - default: - //finalflair=""; - //break; - return; - } - /*if(finalflair.length()==0) //<-- 2015.07.20. - return;*/ - p.Flair=finalflair; //2015.08.08. - p.CommentedOnReddit=true; //2015.08.10. - p.UserName=username; //2015.08.08. - if(finalflair.length()==0) //Just for the message - finalflair="undecided"; - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - //return flair==null ? "" : flair; - return flair; //2015.08.10. - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - //AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - /*private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - *String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //<-- 2015.08.10. - TownColors.put(s[0], s[1]); - } - br.close(); - } - file=new File("customflairs.txt"); //2015.08.09. - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //2015.08.10. - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(s[0]); - p.Flair=s[1]; //2015.08.09. - p.CommentedOnReddit=true; //Kind of - } - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static boolean RemoveLineFromFile(String file, String line) - { //2015.08.09. - File inputFile = new File(file); - File tempFile = new File("_temp.txt"); - - if(!inputFile.exists()) - return true; //2015.08.10. - - try { - BufferedReader reader = new BufferedReader(new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String lineToRemove = line; - String currentLine; - - while((currentLine = reader.readLine()) != null) { - // trim newline when comparing with lineToRemove - String trimmedLine = currentLine.trim(); - //if(trimmedLine.equals(lineToRemove)) continue; - if(trimmedLine.contains(lineToRemove)) continue; //2015.08.09. - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if(!tempFile.renameTo(inputFile)) - { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } - else - return true; - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - return false; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d4/b0b5a2a749a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/d4/b0b5a2a749a600151c15ab42d7919fee deleted file mode 100644 index 36262d8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d4/b0b5a2a749a600151c15ab42d7919fee +++ /dev/null @@ -1,125 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(int color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Player p = Bukkit.getPlayer(UUID); - p.setPlayerListName(String.format("%s%s", p.getPlayerListName(), - GetFormattedFlair())); - } - - public short GetFlairColor() { - return FlairColor; - } - - public String GetFlairTime() { - return FlairTime; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d5/d0e71dc1e140001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/d5/d0e71dc1e140001514c09dece48b36c7 deleted file mode 100644 index e68eaa6..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d5/d0e71dc1e140001514c09dece48b36c7 +++ /dev/null @@ -1,450 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - SaveFiles(); //2015.08.09. - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - //System.out.println("Start: "+start); - if(start==-1+"IGN:".length()) //+length: 2015.08.10. - continue; //2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - //System.out.println("End: "+end); - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - //System.out.println("IGN: "+ign); - ign = ign.trim(); - //System.out.println("Trimmed IGN: "+ign); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - /*else - flair = "non-presser";*/ - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - //return p.Flair!=null; //2015.08.08. - return p.CommentedOnReddit; //2015.08.10. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - p.FlairRecognised=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(--s)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(??s)§r"; - break; - case "unknown": - if(text.equals("-1")) //If true, only non-presser/can't press; if false, any flair - p.FlairDecided=false; - else - p.FlairRecognised=false; - finalflair=""; - break; - default: - //finalflair=""; - //break; - return; - } - /*if(finalflair.length()==0) //<-- 2015.07.20. - return;*/ - p.Flair=finalflair; //2015.08.08. - p.CommentedOnReddit=true; //2015.08.10. - p.UserName=username; //2015.08.08. - if(finalflair.length()==0) //Just for the message - finalflair="undecided"; - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - //return flair==null ? "" : flair; - return flair; //2015.08.10. - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - //AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - /*private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - *String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //<-- 2015.08.10. - TownColors.put(s[0], s[1]); - } - br.close(); - } - file=new File("customflairs.txt"); //2015.08.09. - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - if(s.length>=2) //2015.08.10. - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(s[0]); - p.Flair=s[1]; //2015.08.09. - p.CommentedOnReddit=true; //Kind of - } - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() //<-- 2015.08.09. - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static boolean RemoveLineFromFile(String file, String line) - { //2015.08.09. - File inputFile = new File(file); - File tempFile = new File("_temp.txt"); - - if(!inputFile.exists()) - return true; //2015.08.10. - - try { - BufferedReader reader = new BufferedReader(new FileReader(inputFile)); - BufferedWriter writer = new BufferedWriter(new FileWriter(tempFile)); - - String lineToRemove = line; - String currentLine; - - while((currentLine = reader.readLine()) != null) { - // trim newline when comparing with lineToRemove - String trimmedLine = currentLine.trim(); - //if(trimmedLine.equals(lineToRemove)) continue; - if(trimmedLine.contains(lineToRemove)) continue; //2015.08.09. - writer.write(currentLine + System.getProperty("line.separator")); - } - writer.close(); - reader.close(); - if(!tempFile.renameTo(inputFile)) - { - inputFile.delete(); - return tempFile.renameTo(inputFile); - } - else - return true; - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - return false; - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d6/2061743542a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/d6/2061743542a600151c15ab42d7919fee deleted file mode 100644 index c6c4f2e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d6/2061743542a600151c15ab42d7919fee +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - // TODO: Flairs from Command Block The Button - Teams - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer().getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d6/a08b7a0ed03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/d6/a08b7a0ed03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5d70e40..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d6/a08b7a0ed03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,198 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d7/a0f61d9bd03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/d7/a0f61d9bd03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 8abed8b..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d7/a0f61d9bd03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,206 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/d8/4044c9a7e240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/d8/4044c9a7e240001514c09dece48b36c7 deleted file mode 100644 index 975702f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/d8/4044c9a7e240001514c09dece48b36c7 +++ /dev/null @@ -1,297 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/da/a0d614ced03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/da/a0d614ced03e001518fa86d7ae2a1cf8 deleted file mode 100644 index a8b8f80..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/da/a0d614ced03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,210 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/db/50afb721e640001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/db/50afb721e640001514c09dece48b36c7 deleted file mode 100644 index d9ec7da..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/db/50afb721e640001514c09dece48b36c7 +++ /dev/null @@ -1,72 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message = message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - p.playSound(arg0, arg1, arg2, arg3) - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e/a0795133d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/e/a0795133d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index be2f453..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e/a0795133d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,376 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e/d03a30e844a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/e/d03a30e844a600151c15ab42d7919fee deleted file mode 100644 index 15d37e7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e/d03a30e844a600151c15ab42d7919fee +++ /dev/null @@ -1,107 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) - { - - } - - public void SetFlairTime(String time) - { - - } - - public void SetFlair(short color, String time) - - // TODO: Flairs from Command Block The Button - Teams - //PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - event.getPlayer().setPlayerListName(""); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e0/a07905a5cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/e0/a07905a5cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index d0c7fdd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e0/a07905a5cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,71 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.Flair!=null) - PluginMain.AppendPlayerDisplayFlair(mp, p); - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(flair==null || !player.AcceptedFlair) - flair=""; //2015.08.08. - String message=event.getMessage(); //2015.08.08. - /*for(Player p : PluginMain.GetPlayers()) - { //2015.08.08. - message.replaceAll(p.getName(), ) - }*/ - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e3/20517c59cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/e3/20517c59cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 77a24f3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e3/20517c59cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press?§r"); - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e3/d0df3dbadf40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/e3/d0df3dbadf40001514c09dece48b36c7 deleted file mode 100644 index e614358..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e3/d0df3dbadf40001514c09dece48b36c7 +++ /dev/null @@ -1,71 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.CommentedOnReddit) - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your §6Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(player.IgnoredFlair) - flair=""; - String message=event.getMessage(); //2015.08.08. - for(Player p : PluginMain.GetPlayers()) - { //2015.08.12. - message.replaceAll(p.getName(), "§6"+p.getName()+"§r"); - } - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e4/3060bf8dcf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/e4/3060bf8dcf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 620a063..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e4/3060bf8dcf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import tk.sznp.thebuttonautoflair.MaybeOfflinePlayer.FlairClassType; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - AppendPlayerDisplayFlair(player, username, finalflair); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - player.sendMessage("§9Are you Reddit user "+username+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e6/c048252a4ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/e6/c048252a4ca600151c15ab42d7919fee deleted file mode 100644 index 7aaa8dd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e6/c048252a4ca600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID)); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e9/504e12aee240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/e9/504e12aee240001514c09dece48b36c7 deleted file mode 100644 index 4f33dd3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e9/504e12aee240001514c09dece48b36c7 +++ /dev/null @@ -1,298 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e9/c0b3154ce440001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/e9/c0b3154ce440001514c09dece48b36c7 deleted file mode 100644 index 159e3e4..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/e9/c0b3154ce440001514c09dece48b36c7 +++ /dev/null @@ -1,296 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - PluginMain.Console.sendMessage("§6-- Reloading Auto-flair plugin...§r"); - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/eb/3086890bd03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/eb/3086890bd03e001518fa86d7ae2a1cf8 deleted file mode 100644 index ce49e4e..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/eb/3086890bd03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,198 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(player, p); - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/eb/40b3b71cad9e0015192daf17db672400 b/.metadata/.plugins/org.eclipse.core.resources/.history/eb/40b3b71cad9e0015192daf17db672400 deleted file mode 100644 index d65c83d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/eb/40b3b71cad9e0015192daf17db672400 +++ /dev/null @@ -1,595 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static boolean PluginUpdated = false; // 2015.08.31. - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); // 2015.08.08. - switch (args[0].toLowerCase()) // toLowerCase: 2015.08.09. - { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/eb/d028dc51d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/eb/d028dc51d8a500151c15ab42d7919fee deleted file mode 100644 index 08e6396..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/eb/d028dc51d8a500151c15ab42d7919fee +++ /dev/null @@ -1,596 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) - { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ec/f0e2d8a2d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/ec/f0e2d8a2d8a500151c15ab42d7919fee deleted file mode 100644 index 01ff1c5..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ec/f0e2d8a2d8a500151c15ab42d7919fee +++ /dev/null @@ -1,597 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - Player p=null; - if(Lastlol!=null || Bukkit.getPlayer(Lastlol.UUID)) - Lastlol.UUID - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ed/f00520bce240001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/ed/f00520bce240001514c09dece48b36c7 deleted file mode 100644 index f1e321a..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ed/f00520bce240001514c09dece48b36c7 +++ /dev/null @@ -1,299 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§9You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§9Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§9Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§9Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - //System.out.println(message); - PluginMain.Console.sendMessage(message); //2015.08.12. - else - player.sendMessage(message); - - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ee/306a96924aa600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/ee/306a96924aa600151c15ab42d7919fee deleted file mode 100644 index 705d7bd..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ee/306a96924aa600151c15ab42d7919fee +++ /dev/null @@ -1,364 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.GetFlairColor() == 0x00 ? 0xb - : mp.GetFlairColor())); // TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ef/206bbc9acf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/ef/206bbc9acf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index a085586..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ef/206bbc9acf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,71 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerQuitEvent; - -import de.inventivegames.TellRawAutoMessage.Reflection; - -public class PlayerListener implements Listener -{ //2015.07.16. - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) - { - Player p=event.getPlayer(); - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); //2015.08.08. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); //2015.08.08. - if(mp.Flair!=null) - PluginMain.AppendPlayerDisplayFlair(p, mp.UserName, mp.Flair); - else - { //2015.07.20. - String json="[\"\",{\"text\":\"§6Hi! If you'd like your flair displayed ingame, write your Minecraft name to \"},{\"text\":\"[this thread.]\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread§r\"}]}}}]"; - sendRawMessage(p, json); - } - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) - { - } - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) - { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event.getPlayer().getName()); - String flair=player.Flair; //2015.08.08. - if(flair==null || !player.AcceptedFlair) - flair=""; //2015.08.08. - String message=event.getMessage(); //2015.08.08. - /*for(Player p : PluginMain.GetPlayers()) - { //2015.08.08. - message.replaceAll(p.getName(), ) - }*/ - event.setFormat(event.getFormat().substring(0, event.getFormat().indexOf(">"))+flair+"> "+message); //2015.08.08. - } - - private static Class nmsChatSerializer = Reflection.getNMSClass("IChatBaseComponent$ChatSerializer"); - private static Class nmsPacketPlayOutChat = Reflection.getNMSClass("PacketPlayOutChat"); - public static void sendRawMessage(Player player, String message) - { - try { - System.out.println("1"); - Object handle = Reflection.getHandle(player); - System.out.println("2"); - Object connection = Reflection.getField(handle.getClass(), "playerConnection").get(handle); - System.out.println("3"); - Object serialized = Reflection.getMethod(nmsChatSerializer, "a", String.class).invoke(null, message); - System.out.println("4"); - Object packet = nmsPacketPlayOutChat.getConstructor(Reflection.getNMSClass("IChatBaseComponent")).newInstance(serialized); - System.out.println("5"); - Reflection.getMethod(connection.getClass(), "sendPacket").invoke(connection, packet); - System.out.println("6"); - } catch (Exception e) { - e.printStackTrace(); - PluginMain.LastException=e; //2015.08.09. - } - } - -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f/a0d81438d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f/a0d81438d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index f17161d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f/a0d81438d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,216 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; - //SendMessage(player, msg); //2015.08.09. - - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f/b08c4dd3d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f/b08c4dd3d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index fbfb948..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f/b08c4dd3d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,372 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f0/b01766da4ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/f0/b01766da4ba600151c15ab42d7919fee deleted file mode 100644 index 0648957..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f0/b01766da4ba600151c15ab42d7919fee +++ /dev/null @@ -1,604 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - System.out.println("Player: " + Bukkit.getPlayer(Lastlol.UUID)); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f2/205fa4c2d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f2/205fa4c2d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index 5dcd8d1..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f2/205fa4c2d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,209 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - - } - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f2/a0380b49d03e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f2/a0380b49d03e001518fa86d7ae2a1cf8 deleted file mode 100644 index c1a5059..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f2/a0380b49d03e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,200 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - break; - case "cantpress": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f3/203061bfd23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f3/203061bfd23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 717cff8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f3/203061bfd23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Reloaded all files.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f3/a09a2529d33e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f3/a09a2529d33e001518fa86d7ae2a1cf8 deleted file mode 100644 index 2a7e8d7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f3/a09a2529d33e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,215 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - PluginMain.AppendPlayerDisplayFlair(p, player); - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§7(non-pr.)§r"; - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - p.Flair="§r(can't press)§r"; - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - //PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - } - //String msg="§6Reloaded config file.§r"; - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f3/b07c2ef049a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/f3/b07c2ef049a600151c15ab42d7919fee deleted file mode 100644 index f53b4ae..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f3/b07c2ef049a600151c15ab42d7919fee +++ /dev/null @@ -1,353 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.IOUtils; -import org.bukkit.Bukkit; -import org.bukkit.command.ConsoleCommandSender; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.htmlcleaner.HtmlCleaner; -import org.htmlcleaner.TagNode; -import org.json.JSONArray; -import org.json.JSONObject; - -import java.io.*; -import java.lang.String; -import java.lang.reflect.Method; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLClassLoader; -import java.net.URLConnection; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Collection; -import java.util.Date; -import java.util.TimeZone; - -public class PluginMain extends JavaPlugin { // Translated to Java: 2015.07.15. - // A user, which flair isn't obtainable: - // https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - public static PluginMain Instance; - public static ConsoleCommandSender Console; // 2015.08.12. - - // Fired when plugin is first enabled - @Override - public void onEnable() { - try { - System.out.println("Extracting necessary libraries..."); - final File[] libs = new File[] { new File(getDataFolder(), - "htmlcleaner-2.16.jar") }; - for (final File lib : libs) { - if (!lib.exists()) { - JarUtils.extractFromJar(lib.getName(), - lib.getAbsolutePath()); - } - } - for (final File lib : libs) { - if (!lib.exists()) { - getLogger().warning( - "Failed to load plugin! Could not find lib: " - + lib.getName()); - Bukkit.getServer().getPluginManager().disablePlugin(this); - return; - } - addClassPath(JarUtils.getJarUrl(lib)); - } - } catch (final Exception e) { - e.printStackTrace(); - } - - getServer().getPluginManager().registerEvents(new PlayerListener(), - this); - Commands comm = new Commands(); - this.getCommand("u").setExecutor(comm); - this.getCommand("u").setUsage( - this.getCommand("u").getUsage().replace('&', '§')); - this.getCommand("nrp").setExecutor(comm); - this.getCommand("nrp").setUsage( - this.getCommand("nrp").getUsage().replace('&', '§')); - this.getCommand("ooc").setExecutor(comm); - this.getCommand("ooc").setUsage( - this.getCommand("ooc").getUsage().replace('&', '§')); - Instance = this; // 2015.08.08. - Console = this.getServer().getConsoleSender(); // 2015.08.12. - LoadFiles(false); // 2015.08.09. - Runnable r = new Runnable() { - public void run() { - ThreadMethod(); - } - }; - Thread t = new Thread(r); - t.start(); - r = new Runnable() { - public void run() { - AnnouncerThread.Run(); - } - }; - t = new Thread(r); - t.start(); - } - - public Boolean stop = false; - - // Fired when plugin is disabled - @Override - public void onDisable() { - SaveFiles(); // 2015.08.09. - stop = true; - } - - private void ThreadMethod() { - while (!stop) { - try { - String body = DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json = new JSONArray(body).getJSONObject(1) - .getJSONObject("data").getJSONArray("children"); - for (Object obj : json) { - JSONObject item = (JSONObject) obj; - String author = item.getJSONObject("data").getString( - "author"); - String ign = item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - if (start == -1 + "IGN:".length()) // +length: 2015.08.10. - continue; // 2015.08.09. - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end = ign.indexOf('\n', start); // 2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.GetFromName(ign); - if (mp == null) - continue; - if (!mp.UserNames.contains(author)) - mp.UserNames.add(author); - if (mp.FlairState.equals(FlairStates.NoComment)) { - mp.FlairState = FlairStates.Commented; - ConfirmUserMessage(mp); - } - try { - Thread.sleep(10); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } - try { - Thread.sleep(10000); - } catch (InterruptedException ex) { - Thread.currentThread().interrupt(); - } - } catch (Exception e) { - // System.out.println("Error!\n" + e); - LastException = e; // 2015.08.09. - } - } - } - - public void DownloadFlair(MaybeOfflinePlayer mp) - throws MalformedURLException, IOException { - String[] flairdata = DownloadString( - "http://karmadecay.com/thebutton-data.php?users=" + mp.UserName) - .replace("\"", "").split(":"); - String flair; - if (flairdata.length > 1) - flair = flairdata[1]; - else - flair = ""; - String flairclass; - if (flairdata.length > 2) - flairclass = flairdata[2]; - else - flairclass = "unknown"; - SetFlair(mp, flair, flairclass, mp.UserName); - } - - public static Exception LastException; // 2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, - IOException { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - private void SetFlair(MaybeOfflinePlayer p, String text, String flairclass, - String username) { - p.UserName = username; - p.FlairState = FlairStates.Recognised; - switch (flairclass) { - case "press-1": - p.SetFlairColor(0xc); - break; - case "press-2": - p.SetFlairColor(0x6); - break; - case "press-3": - p.SetFlairColor(0xe); - break; - case "press-4": - p.SetFlairColor(0xa); - break; - case "press-5": - p.SetFlairColor(0x9); - break; - case "press-6": - p.SetFlairColor(0x5); - break; - case "no-press": - p.SetFlairColor(0x7); - break; - case "cheater": - p.SetFlairColor(0x5); - break; - case "cant-press": - p.SetFlairColor(0xf); - break; - case "unknown": - if (text.equals("-1")) // If true, only non-presser/can't press; if - // false, any flair - { - try { - if (CheckForJoinDate(p)) { - p.SetFlair(0x7, "--"); - } else { - p.SetFlair(0xf, "--"); - } - } catch (Exception e) { - p.FlairState = FlairStates.Commented; // Flair unknown - p.SetFlairColor(0); - e.printStackTrace(); - } - } else { - p.FlairState = FlairStates.Commented; // Flair unknown - p.SetFlairColor(0); - } - return; - default: - return; - } - if (text.equals("-1")) - text = "--"; - p.FlairTime = text; - } - - public static boolean CheckForJoinDate(MaybeOfflinePlayer mp) - throws Exception { - URL url = new URL("https://www.reddit.com/u/" + mp.UserName); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - HtmlCleaner cleaner = new HtmlCleaner(); - TagNode node = cleaner.clean(in); - - node = node.getElementsByAttValue("class", "age", true, true)[0]; - node = node.getElementsByName("time", false)[0]; - String joindate = node.getAttributeByName("datetime"); - SimpleDateFormat parserSDF = new SimpleDateFormat("yyyy-MM-dd"); - joindate = joindate.split("T")[0]; - Date date = parserSDF.parse(joindate); - return date.before(new Calendar.Builder() - .setTimeZone(TimeZone.getTimeZone("UTC")).setDate(2015, 4, 1) - .build().getTime()); - } - - public static void ConfirmUserMessage(MaybeOfflinePlayer mp) { - Player p = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented) && p != null) - if (mp.UserNames.size() > 1) - p.sendMessage("§9Multiple Reddit users commented your name. You can select with /u accept.§r §6Type /u accept or /u ignore§r"); - else - p.sendMessage("§9A Reddit user commented your name. Is that you?§r §6Type /u accept or /u ignore§r"); - } - - public static Collection GetPlayers() { - return Instance.getServer().getOnlinePlayers(); - } - - public static ArrayList AnnounceMessages = new ArrayList<>(); - public static int AnnounceTime = 15 * 60 * 1000; - - public static void LoadFiles(boolean reload) { - if (reload) { - System.out - .println("The Button Minecraft plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - AnnounceMessages.clear(); - } - System.out.println("Loading files for The Button Minecraft plugin..."); - try { - File file = new File("announcemessages.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsaccepted.txt"); - if (file.exists()) - file.delete(); - file = new File("flairsignored.txt"); - if (file.exists()) - file.delete(); - file = new File("thebuttonmc.yml"); - if (file.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - yc.load(file); - MaybeOfflinePlayer.Load(yc); - PlayerListener.NotificationSound = yc - .getString("notificationsound"); - PlayerListener.NotificationPitch = yc - .getDouble("notificationpitch"); - AnnounceTime = yc.getInt("announcetime"); - AnnounceMessages.addAll(yc.getStringList("announcements")); - } - System.out.println("The Button Minecraft plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } catch (InvalidConfigurationException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - public static void SaveFiles() { - System.out.println("Saving files for The Button Minecraft plugin..."); - try { - File file = new File("thebuttonmc.yml"); - YamlConfiguration yc = new YamlConfiguration(); - MaybeOfflinePlayer.Save(yc); - yc.set("notificationsound", PlayerListener.NotificationSound); - yc.set("notificationpitch", PlayerListener.NotificationPitch); - yc.set("announcetime", AnnounceTime); - yc.set("announcements", AnnounceMessages); - yc.save(file); - System.out.println("The Button Minecraft plugin saved files!"); - } catch (IOException e) { - System.out.println("Error!\n" + e); - LastException = e; - } - } - - private void addClassPath(final URL url) throws IOException { - final URLClassLoader sysloader = (URLClassLoader) ClassLoader - .getSystemClassLoader(); - final Class sysclass = URLClassLoader.class; - try { - final Method method = sysclass.getDeclaredMethod("addURL", - new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(sysloader, new Object[] { url }); - } catch (final Throwable t) { - t.printStackTrace(); - throw new IOException("Error adding " + url - + " to system classloader"); - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f4/20d00369d23e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f4/20d00369d23e001518fa86d7ae2a1cf8 deleted file mode 100644 index 7316b80..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f4/20d00369d23e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,380 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { //2015.08.09. - System.out.println("Auto-flair plugin cleanup for reloading..."); - MaybeOfflinePlayer.AllPlayers.clear(); - TownColors.clear(); - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - System.out.println("Auto-flair plugin loaded files!"); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - public static void SaveFiles() - { - - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f5/60e49bf5de40001514c09dece48b36c7 b/.metadata/.plugins/org.eclipse.core.resources/.history/f5/60e49bf5de40001514c09dece48b36c7 deleted file mode 100644 index 45cf563..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f5/60e49bf5de40001514c09dece48b36c7 +++ /dev/null @@ -1,297 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; - -import org.apache.commons.io.FileUtils; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(!p.CommentedOnReddit && !args[0].toLowerCase().equals("admin")) - { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if(!p.FlairRecognised && !args[0].toLowerCase().equals("admin")) - { //2015.08.10. - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - //PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - PluginMain.AppendPlayerDisplayFlair(p, player); - player.sendMessage("§9Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - //String flair=p.Flair; //2015.08.08. - //PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type.§r"); - break; - } - SetPlayerFlair(player, p, "§7(--s)§r"); - break; - case "cantpress": //2015.08.09. - if(!p.AcceptedFlair) - { - player.sendMessage("§cYou need to accept the flair first.§r"); - break; - } - if(p.FlairDecided) - { - player.sendMessage("§cYou have already set the flair type or your flair type is known.§r"); - break; - } - SetPlayerFlair(player, p, "§r(??s)§r"); - break; - case "opme": //2015.08.10. - player.sendMessage("It would be nice, isn't it?"); //Sometimes I'm bored too - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.LoadFiles(true); //2015.08.09. - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p.getName()); - //if(mp.Flair!=null) - if(mp.CommentedOnReddit) - { - PluginMain.AppendPlayerDisplayFlair(mp, p); //2015.08.09. - } - String msg="§6Note: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; //2015.08.09. - p.sendMessage(msg); //2015.08.09. - } - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static Player ReloadPlayer; //2015.08.09. - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName().equals("NorbiPeti")) - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - ReloadPlayer=player; //2015.08.09. - SendMessage(player, "§6Make sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; //<-- 2015.08.10. - case "confirm": - if(ReloadPlayer==player) - DoReload(player); //2015.08.09. - else - SendMessage(player, "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); //2015.08.09. - SendMessage(player, "§6Saved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": //2015.08.10. - DoUpdatePlugin(player); - break; - default: - String message="§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - SendMessage(player, "Flair decided: "+p.FlairDecided); - SendMessage(player, "Flair recognised: "+p.FlairRecognised); - SendMessage(player, "Commented on Reddit: "+p.CommentedOnReddit); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } - private static void SetPlayerFlair(Player player, MaybeOfflinePlayer targetplayer, String flair) - { //2015.08.09. - flair=flair.replace('&', '§'); - targetplayer.Flair=flair; - targetplayer.CommentedOnReddit=true; //Or at least has a flair in some way - if(!PluginMain.RemoveLineFromFile("customflairs.txt", targetplayer.PlayerName)) - { - SendMessage(player, "§cError removing previous custom flair!§r"); - return; - } - File file=new File("customflairs.txt"); - try { - BufferedWriter bw; - bw = new BufferedWriter(new FileWriter(file, true)); - bw.write(targetplayer.PlayerName+targetplayer.Flair+"\n"); - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - SendMessage(player, "§9The flair has been set. Player: "+targetplayer.PlayerName+" Flair: "+flair+"§r"); - } - private static void DoSetFlair(Player player, String[] args) - { - //args[0] is "admin" - args[1] is "setflair" - if(args.length<4) - { - SendMessage(player, "§cUsage: /u admin setflair "); - return; - } - SetPlayerFlair(player, MaybeOfflinePlayer.AddPlayerIfNeeded(args[2]), args[3]); - } - private static void DoUpdatePlugin(Player player) - { //2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL("https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File("plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } - catch (MalformedURLException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - catch (IOException e) { - System.out.println("Error!\n"+e); - PluginMain.LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f5/a069aa5a45a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/f5/a069aa5a45a600151c15ab42d7919fee deleted file mode 100644 index e854e6f..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f5/a069aa5a45a600151c15ab42d7919fee +++ /dev/null @@ -1,115 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.UUID; - -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.configuration.ConfigurationSection; -import org.bukkit.configuration.file.YamlConfiguration; - -public class MaybeOfflinePlayer { - public String PlayerName; - public String UserName; - public List UserNames; - private String FlairTime; - private short FlairColor; - public FlairStates FlairState; - public boolean RPMode = true; - public boolean PressedF; - public Location SavedLocation; - public boolean Working; - public int Tables = 10; - - public UUID UUID; - - public static HashMap AllPlayers = new HashMap<>(); - - public static MaybeOfflinePlayer AddPlayerIfNeeded(UUID uuid) { - if (!AllPlayers.containsKey(uuid)) { - MaybeOfflinePlayer player = new MaybeOfflinePlayer(); - player.UUID = uuid; - player.FlairColor = 0; - player.FlairTime = ""; - player.FlairState = FlairStates.NoComment; - player.UserNames = new ArrayList<>(); - AllPlayers.put(uuid, player); - return player; - } - return AllPlayers.get(uuid); - } - - public static void Load(YamlConfiguration yc) { - ConfigurationSection cs = yc.getConfigurationSection("players"); - for (String key : cs.getKeys(false)) { - ConfigurationSection cs2 = cs.getConfigurationSection(key); - MaybeOfflinePlayer mp = AddPlayerIfNeeded(java.util.UUID - .fromString(cs2.getString("uuid"))); - mp.UserName = cs2.getString("username"); - mp.FlairColor = (short) cs2.getInt("flaircolor"); - mp.FlairTime = cs2.getString("flairtime"); - String flairstate = cs2.getString("flairstate"); - if (flairstate != null) - mp.FlairState = FlairStates.valueOf(flairstate); - else - mp.FlairState = FlairStates.NoComment; - mp.PlayerName = cs2.getString("playername"); - mp.UserNames = cs2.getStringList("usernames"); - } - } - - public static void Save(YamlConfiguration yc) { - ConfigurationSection cs = yc.createSection("players"); - for (MaybeOfflinePlayer mp : MaybeOfflinePlayer.AllPlayers.values()) { - ConfigurationSection cs2 = cs.createSection(mp.UUID.toString()); - cs2.set("playername", mp.PlayerName); - cs2.set("username", mp.UserName); - cs2.set("flaircolor", mp.FlairColor); - cs2.set("flairtime", mp.FlairTime); - cs2.set("flairstate", mp.FlairState.toString()); - cs2.set("uuid", mp.UUID.toString()); - cs2.set("usernames", mp.UserNames); - } - } - - public static MaybeOfflinePlayer GetFromName(String name) { - for (MaybeOfflinePlayer mp : AllPlayers.values()) - if (mp.PlayerName.equalsIgnoreCase(name)) - return mp; - return null; - } - - public String GetFormattedFlair() { - if (FlairColor == 0x00) - return ""; - if (FlairTime == null || FlairTime.length() == 0) - return String.format("§%x(??s)§r", FlairColor); - return String.format("§%x(%ss)§r", FlairColor, FlairTime); - } - - public void SetFlairColor(short color) { - FlairColor = color; - SetFlair2(); - } - - public void SetFlairTime(String time) { - FlairTime = time; - SetFlair2(); - } - - public void SetFlair(short color, String time) { - FlairColor = color; - FlairTime = time; - SetFlair2(); - } - - private void SetFlair2() { - - // Flairs from Command Block The Button - Teams - // PluginMain.Instance.getServer().getScoreboardManager().getMainScoreboard().getTeams().add() - Bukkit.getPlayer(UUID); - p.setPlayerListName(String.Format("%s%s", )); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f7/7055129442a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/f7/7055129442a600151c15ab42d7919fee deleted file mode 100644 index f08f9cb..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f7/7055129442a600151c15ab42d7919fee +++ /dev/null @@ -1,365 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.FlairColor == 0x00 ? 0xb - : mp.FlairColor)); // TODO: Quiz queue - // TODO: Flairs from Command Block The Button - Teams - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f9/a01791b5d13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/f9/a01791b5d13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 6f7db8d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/f9/a01791b5d13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,369 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) - { - MaybeOfflinePlayer.AllPlayers.clear(); - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/fa/b05b33334ba600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/fa/b05b33334ba600151c15ab42d7919fee deleted file mode 100644 index f8a30d7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/fa/b05b33334ba600151c15ab42d7919fee +++ /dev/null @@ -1,603 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.SetFlairTime(""); - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": - Player p = null; - System.out.println("Lastlol: " + Lastlol); - if (Lastlol != null - || (p = Bukkit.getPlayer(Lastlol.UUID)) != null) { - p.addPotionEffect(new PotionEffect( - PotionEffectType.BLINDNESS, 10, 5, false, false)); - for (Player pl : PluginMain.GetPlayers()) - pl.sendMessage(player.getDisplayName() + " unlolled " - + p.getDisplayName()); - Lastlol = null; - } - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.SetFlair(flaircolor, flairtime); - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/fb/307961d7cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/fb/307961d7cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index ccaedeb..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/fb/307961d7cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,363 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - player.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/fc/80951d9441a600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/fc/80951d9441a600151c15ab42d7919fee deleted file mode 100644 index ac36cf3..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/fc/80951d9441a600151c15ab42d7919fee +++ /dev/null @@ -1,597 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - Player p=null; - if(Lastlol!=null || (p=Bukkit.getPlayer(Lastlol.UUID))!=null) - p.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 10, 5, false, false)); - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/fe/204112ead13e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/fe/204112ead13e001518fa86d7ae2a1cf8 deleted file mode 100644 index 318be3d..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/fe/204112ead13e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,374 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.net.MalformedURLException; -import java.net.URL; -import java.net.URLConnection; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.io.IOUtils; -import org.bukkit.entity.Player; -import org.bukkit.plugin.java.JavaPlugin; -import org.json.JSONArray; -import org.json.JSONObject; - -import com.palmergames.bukkit.towny.object.Town; -import com.palmergames.bukkit.towny.object.WorldCoord; - -public class PluginMain extends JavaPlugin -{ //Translated to Java: 2015.07.15. - //A user, which flair isn't obtainable: - //https://www.reddit.com/r/thebutton/comments/31c32v/i_pressed_the_button_without_really_thinking/ - private static PluginMain Instance; - // Fired when plugin is first enabled - @Override - public void onEnable() - { - System.out.println("The Button Auto-flair Plugin by NorbiPeti (:P)"); - getServer().getPluginManager().registerEvents(new PlayerListener(), this); - this.getCommand("u").setExecutor(new Commands()); - this.getCommand("u").setUsage(this.getCommand("u").getUsage().replace('&', '§')); - Instance=this; //2015.08.08. - LoadFiles(false); //2015.08.09. - Runnable r=new Runnable(){public void run(){ThreadMethod();}}; - Thread t=new Thread(r); - t.start(); - } - Boolean stop=false; - // Fired when plugin is disabled - @Override - public void onDisable() - { - try - { - FileWriter fw; - fw = new FileWriter("flairsaccepted.txt"); - fw.close(); - fw = new FileWriter("flairsignored.txt"); - fw.close(); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - try { - File file=new File("flairsaccepted.txt"); - BufferedWriter bw=new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.AcceptedFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - file=new File("flairsignored.txt"); - bw = new BufferedWriter(new FileWriter(file, true)); - for(MaybeOfflinePlayer player : MaybeOfflinePlayer.AllPlayers.values()) //<-- 2015.08.08. - { - if(!player.IgnoredFlair) - continue; //2015.08.08. - bw.write(player.PlayerName+"\n"); - } - bw.close(); - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - stop=true; - } - - public void ThreadMethod() //<-- 2015.07.16. - { - while(!stop) - { - try - { - String body=DownloadString("https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/autoflair_system_comment_your_minecraft_name_and/.json?limit=1000"); - JSONArray json=new JSONArray(body).getJSONObject(1).getJSONObject("data").getJSONArray("children"); - for(Object obj : json) - { - JSONObject item = (JSONObject)obj; - String author=item.getJSONObject("data").getString("author"); - String ign=item.getJSONObject("data").getString("body"); - int start = ign.indexOf("IGN:") + "IGN:".length(); - int end = ign.indexOf(' ', start); - if (end == -1 || end == start) - end=ign.indexOf('\n', start); //2015.07.15. - if (end == -1 || end == start) - ign = ign.substring(start); - else - ign = ign.substring(start, end); - ign = ign.trim(); - if(HasIGFlair(ign)) - continue; - try { - Thread.sleep(10); - } catch(InterruptedException ex) { - Thread.currentThread().interrupt(); - } - String[] flairdata = DownloadString("http://karmadecay.com/thebutton-data.php?users=" + author).replace("\"", "").split(":"); - String flair; - if(flairdata.length > 1) //2015.07.15. - flair = flairdata[1]; - else - flair=""; - if (flair != "-1") - flair = flair + "s"; - else - flair = "non-presser"; - String flairclass; - if(flairdata.length>2) - flairclass = flairdata[2]; - else - flairclass="unknown"; - SetFlair(ign, flair, flairclass, author); - } - Thread.sleep(10000); - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } - } - - public static Exception LastException; //2015.08.09. - - public String DownloadString(String urlstr) throws MalformedURLException, IOException - { - URL url = new URL(urlstr); - URLConnection con = url.openConnection(); - con.setRequestProperty("User-Agent", "TheButtonAutoFlair"); - InputStream in = con.getInputStream(); - String encoding = con.getContentEncoding(); - encoding = encoding == null ? "UTF-8" : encoding; - String body = IOUtils.toString(in, encoding); - in.close(); - return body; - } - - public static Map TownColors=new HashMap(); //2015.07.20. - public Boolean HasIGFlair(String playername) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - return p.Flair!=null; //2015.08.08. - } - - public void SetFlair(String playername, String text, String flairclass, String username) - { - MaybeOfflinePlayer p=MaybeOfflinePlayer.AddPlayerIfNeeded(playername); //2015.08.08. - String finalflair; - p.FlairDecided=true; - switch(flairclass) - { - case "press-1": - finalflair="§c("+text+")§r"; - break; - case "press-2": - finalflair="§6("+text+")§r"; - break; - case "press-3": - finalflair="§e("+text+")§r"; - break; - case "press-4": - finalflair="§a("+text+")§r"; - break; - case "press-5": - finalflair="§9("+text+")§r"; - break; - case "press-6": - finalflair="§5("+text+")§r"; - break; - case "no-press": - finalflair="§7(non-pr.)§r"; - break; - case "cheater": - finalflair="§5("+text+")§r"; - break; - case "cant-press": //2015.08.08. - finalflair="§r(can't press)§r"; - break; - case "undecided": //2015.08.09. - p.FlairDecided=false; - finalflair=""; - break; - default: - finalflair=""; - break; - } - if(finalflair.length()==0) //<-- 2015.07.20. - return; - p.Flair=finalflair; //2015.08.08. - p.UserName=username; //2015.08.08. - System.out.println("Added new flair to "+playername+": "+finalflair); - for(Player player : getServer().getOnlinePlayers()) //<-- 2015.08.08. - { - if(player.getName().equals(playername)) - { - //AppendPlayerDisplayFlair(player, username, finalflair); - AppendPlayerDisplayFlair(p, player); - break; - } - } - } - - public static String GetFlair(Player player) - { //2015.07.16. - String flair=MaybeOfflinePlayer.AllPlayers.get(player.getName()).Flair; //2015.08.08. - return flair==null ? "" : flair; - } - - //public static void AppendPlayerDisplayFlair(Player player, String username, String flair) - public static void AppendPlayerDisplayFlair(MaybeOfflinePlayer player, Player p) //<-- 2015.08.09. - { - - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).IgnoredFlair) - return; - if(MaybeOfflinePlayer.AllPlayers.get(p.getName()).AcceptedFlair) - { - AppendPlayerDisplayFlairFinal(p, player.Flair); //2015.07.20. - if(!player.FlairDecided) - p.sendMessage("§9Your flair type is unknown. Are you a non-presser or a can't press? (/u nonpresser or /u cantpress)§r"); //2015.08.09. - } - else - p.sendMessage("§9Are you Reddit user "+player.UserName+"?§r §6Type /u accept or /u ignore§r"); - } - - private static void AppendPlayerDisplayFlairFinal(Player player, String flair) - { //2015.07.20. - String color = GetColorForTown(GetPlayerTown(player)); //TO!DO: Multiple colors put on first capital letters - String[] colors = color.substring(1).split("§"); - String displayname=player.getName(); //2015.08.08. - ArrayList Positions=new ArrayList<>(); - for(int i=0; i=colors.length) - { - int x=0; - for(int i=0; i GetPlayers() - { - return Instance.getServer().getOnlinePlayers(); - } - - public static void LoadFiles(boolean reload) //<-- 2015.08.09. - { - if(reload) - { - System.out.println("Reloading files for auto-flair plugin..."); - MaybeOfflinePlayer.AllPlayers.clear(); //2015.08.09. - } - System.out.println("Loading files for auto-flair plugin..."); //2015.08.09. - try { - File file=new File("flairsaccepted.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsaccepted.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - //System.out.println("Name: " + name); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).AcceptedFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("flairsignored.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader("flairsignored.txt")); - String line; - while ((line = br.readLine()) != null) - { - String name=line.replace("\n", ""); - MaybeOfflinePlayer.AddPlayerIfNeeded(name).IgnoredFlair=true; //2015.08.08. - } - br.close(); - } - file=new File("autoflairconfig.txt"); - if(file.exists()) - { - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - TownColors.put(s[0], s[1]); - } - br.close(); - } - //throw new IOException("Test"); //2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n"+e); - LastException=e; //2015.08.09. - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/fe/f0cde596d8a500151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/fe/f0cde596d8a500151c15ab42d7919fee deleted file mode 100644 index f031b8c..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/fe/f0cde596d8a500151c15ab42d7919fee +++ /dev/null @@ -1,596 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.apache.commons.io.FileUtils; -import org.bukkit.Bukkit; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.command.BlockCommandSender; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Ocelot; -import org.bukkit.entity.Player; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; - -import com.earth2me.essentials.Mob; -import com.earth2me.essentials.Mob.MobException; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Random; -import java.util.Timer; - -public class Commands implements CommandExecutor { - - public static MaybeOfflinePlayer Lastlol = null; - - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, - String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - switch (cmd.getName()) { - case "u": { - if (args.length < 1) - return false; - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(player - .getUniqueId()); - switch (args[0].toLowerCase()) { - case "accept": { - if (args.length < 2 && p.UserNames.size() > 1) { - player.sendMessage("§9Multiple users commented your name. §bPlease pick one using /u accept "); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - player.sendMessage(sb.toString()); - return true; - } - if (p.FlairState.equals(FlairStates.NoComment) - || p.UserNames.size() == 0) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (args.length > 1 && !p.UserNames.contains(args[1])) { - player.sendMessage("§cError: Unknown name: " + args[1] - + "§r"); - return true; - } - if (p.Working) { - player.sendMessage("§cError: Something is already in progress.§r"); - return true; - } - - if ((args.length > 1 ? args[1] : p.UserNames.get(0)) - .equals(p.UserName)) { - player.sendMessage("§cYou already have this user's flair.§r"); - return true; - } - if (args.length > 1) - p.UserName = args[1]; - else - p.UserName = p.UserNames.get(0); - - player.sendMessage("§bObtaining flair..."); - p.Working = true; - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - try { - PluginMain.Instance.DownloadFlair(mp); - } catch (Exception e) { - e.printStackTrace(); - } - - Player player = Bukkit.getPlayer(mp.UUID); - if (mp.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask an admin to set it for you. Also, prepare a comment on /r/thebutton, if possible."); - return; - } - String flair = mp.GetFormattedFlair(); - mp.FlairState = FlairStates.Accepted; - PluginMain.ConfirmUserMessage(mp); - player.sendMessage("§bYour flair has been set:§r " - + flair); - mp.Working = false; - } - }; - tt.mp = p; - timer.schedule(tt, 20); - break; - } - case "ignore": { - if (p.FlairState.equals(FlairStates.NoComment)) { - player.sendMessage("§cError: You need to write your username to the reddit thread at /r/TheButtonMinecraft§r"); - return true; - } - if (p.FlairState.equals(FlairStates.Commented)) { - player.sendMessage("Sorry, but your flair isn't recorded. Please ask a mod to set it for you."); - return true; - } - if (!p.FlairState.equals(FlairStates.Ignored)) { - p.FlairState = FlairStates.Ignored; - p.FlairTime = ""; - p.UserName = ""; - player.sendMessage("§bYou have removed your flair. You can still use /u accept to get one.§r"); - } else - player.sendMessage("§cYou already removed your flair.§r"); - break; - } - case "admin": // 2015.08.09. - DoAdmin(player, args); - break; - case "opme": // 2015.08.10. - player.sendMessage("It would be nice, wouldn't it?"); // Sometimes - // I'm - // bored - // too - break; - case "announce": - DoAnnounce(player, args, null); - break; - case "name": - if (args.length == 1) { - player.sendMessage("§cUsage: /u name §r"); - break; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer - .GetFromName(args[1]); - if (mp == null) { - player.sendMessage("§cUnknown user: " + args[1]); - break; - } - player.sendMessage("§bUsername of " + args[1] + ": " - + mp.UserName); - break; - case "enable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = true; - player.sendMessage("Enabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "disable": - if (player.getName().equals("NorbiPeti")) { - PlayerListener.Enable = false; - player.sendMessage("Disabled."); - } else - player.sendMessage("Unknown command: " + cmd.getName()); - break; - case "kittycannon": - DoKittyCannon(player, args); - break; - default: - return false; - } - return true; - } - case "nrp": - case "ooc": - if (args.length == 0) { - return false; - } else { - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = false; - String message = ""; - for (String arg : args) - message += arg + " "; - player.chat(message.substring(0, message.length() - 1)); - MaybeOfflinePlayer.AddPlayerIfNeeded(player.getUniqueId()).RPMode = true; - } - return true; - case "unlol": // TODO: Unlol - if(Lastlol!=nullBukkit.getPlayer(Lastlol.UUID)) - Lastlol.UUID - return true; - default: - player.sendMessage("Unknown command: " + cmd.getName()); - break; - } - } else if (args.length > 0 && args[0].toLowerCase().equals("admin")) // 2015.08.09. - { - DoAdmin(null, args); // 2015.08.09. - return true; // 2015.08.09. - } else if (args.length > 0 && args[0].toLowerCase().equals("announce")) { - if (sender instanceof BlockCommandSender) - DoAnnounce(null, args, (BlockCommandSender) sender); - else - DoAnnounce(null, args, null); - return true; - } - return false; - } - - private static void DoReload(Player player) { // 2015.07.20. - try { - PluginMain.Console - .sendMessage("§6-- Reloading The Button Minecraft plugin...§r"); - PluginMain.LoadFiles(true); // 2015.08.09. - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - if (mp.FlairState.equals(FlairStates.Recognised) - || mp.FlairState.equals(FlairStates.Commented)) { - PluginMain.ConfirmUserMessage(mp); - } - String msg = "§bNote: The auto-flair plugin has been reloaded. You might need to wait 10s to have your flair.§r"; // 2015.08.09. - p.sendMessage(msg); // 2015.08.09. - } - PluginMain.Console.sendMessage("§6-- Reloading done!§r"); - } catch (Exception e) { - System.out.println("Error!\n" + e); - if (player != null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static Player ReloadPlayer; // 2015.08.09. - - private static String DoAdminUsage = "§cUsage: /u admin reload|playerinfo|getlasterror|save|setflair|updateplugin|togglerpshow|toggledebug|savepos|loadpos§r"; - - private static void DoAdmin(Player player, String[] args) { // 2015.08.09. - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - // args[0] is "admin" - switch (args[1].toLowerCase()) { - case "reload": - ReloadPlayer = player; // 2015.08.09. - SendMessage( - player, - "§bMake sure to save the current settings before you modify and reload them! Type /u admin confirm when done.§r"); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - break; // <-- 2015.08.10. - case "confirm": - if (ReloadPlayer == player) - DoReload(player); // 2015.08.09. - else - SendMessage(player, - "§cYou need to do /u admin reload first.§r"); - break; - case "save": - PluginMain.SaveFiles(); // 2015.08.09. - SendMessage(player, - "§bSaved files. Now you can edit them and reload if you want.§r"); - break; - case "setflair": - DoSetFlair(player, args); - break; - case "updateplugin": // 2015.08.10. - DoUpdatePlugin(player); - break; - case "togglerpshow": - PlayerListener.ShowRPTag = !PlayerListener.ShowRPTag; - SendMessage(player, "RP tag showing " - + (PlayerListener.ShowRPTag ? "enabled" : "disabled")); - break; - case "toggledebug": - PlayerListener.DebugMode = !PlayerListener.DebugMode; - SendMessage(player, "DebugMode: " + PlayerListener.DebugMode); - break; - case "savepos": - DoSaveLoadPos(player, args); - break; - case "loadpos": - DoSaveLoadPos(player, args); - break; - case "updatedynmap": - DoUpdateDynmap(player, args); - default: - String message = DoAdminUsage; - SendMessage(player, message); - return; - } - } else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - - private static void DoPlayerInfo(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "playerinfo" - if (args.length == 2) { - String message = "§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.GetFromName(args[2]); - if (p == null) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - SendMessage(player, "Player name: " + p.PlayerName); - SendMessage(player, "User flair: " + p.GetFormattedFlair()); - SendMessage(player, "Username: " + p.UserName); - SendMessage(player, "Flair state: " + p.FlairState); - StringBuilder sb = new StringBuilder(); - sb.append("§6Usernames:"); - for (String username : p.UserNames) - sb.append(" ").append(username); - SendMessage(player, sb.toString()); - } - - private static void SendMessage(Player player, String message) { // 2015.08.09. - if (player == null) - PluginMain.Console.sendMessage(message); // 2015.08.12. - else - player.sendMessage(message); - } - - private static void DoGetLastError(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "getlasterror" - if (PluginMain.LastException != null) { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException = null; - } else - SendMessage(player, "There were no exceptions."); - } - - private static void SetPlayerFlair(Player player, - MaybeOfflinePlayer targetplayer, short flaircolor, String flairtime) { - targetplayer.FlairColor = flaircolor; - targetplayer.FlairTime = flairtime; - targetplayer.FlairState = FlairStates.Accepted; - targetplayer.UserName = ""; - SendMessage(player, - "§bThe flair has been set. Player: " + targetplayer.PlayerName - + " Flair: " + targetplayer.GetFormattedFlair() + "§r"); - } - - private static void DoSetFlair(Player player, String[] args) { - // args[0] is "admin" - args[1] is "setflair" - if (args.length < 4) { - SendMessage(player, - "§cUsage: /u admin setflair [number]"); - return; - } - Player p = Bukkit.getPlayer(args[2]); - if (p == null) { - SendMessage(player, "§cPLayer not found.&r"); - return; - } - short flaircolor = 0x00; - try { - flaircolor = Short.parseShort(args[3], 16); - } catch (Exception e) { - SendMessage(player, - "§cFlaircolor must be a hexadecimal number (don't include &)."); - return; - } - SetPlayerFlair(player, - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()), - flaircolor, (args.length < 5 ? "" : args[4])); - } - - private static void DoUpdatePlugin(Player player) { // 2015.08.10. - SendMessage(player, "Updating Auto-Flair plugin..."); - System.out.println("Forced updating of Auto-Flair plugin."); - URL url; - try { - url = new URL( - "https://github.com/NorbiPeti/thebuttonautoflairmc/raw/master/TheButtonAutoFlair.jar"); - FileUtils.copyURLToFile(url, new File( - "plugins/TheButtonAutoFlair.jar")); - PluginUpdated = true; // 2015.08.31. - SendMessage(player, "Updating done!"); - } catch (MalformedURLException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } catch (IOException e) { - System.out.println("Error!\n" + e); - PluginMain.LastException = e; // 2015.08.09. - } - } - - private static void DoAnnounce(Player player, String[] args, - BlockCommandSender commandblock) { - if (player == null || player.isOp() - || player.getName().equals("NorbiPeti")) { - if (args.length == 1) { - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - switch (args[1].toLowerCase()) { - case "add": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce add "); - return; - } - StringBuilder sb = new StringBuilder(); - for (int i = 2; i < args.length; i++) { - sb.append(args[i]); - if (i != args.length - 1) - sb.append(" "); - } - String finalmessage = sb.toString().replace('&', '§'); - PluginMain.AnnounceMessages.add(finalmessage); - SendMessage(player, "§bAnnouncement added.§r"); - break; - case "remove": - if (args.length < 3) { - SendMessage(player, "§cUsage: /u announce remove "); - return; - } - PluginMain.AnnounceMessages.remove(Integer.parseInt(args[2])); - break; - case "settime": - if (args.length < 3) { - SendMessage(player, - "§cUsage: /u announce settime "); - return; - } - PluginMain.AnnounceTime = Integer.parseInt(args[2]) * 60 * 1000; - SendMessage(player, "Time set between announce messages"); - break; - case "list": - SendMessage(player, "§bList of announce messages:§r"); - SendMessage(player, "§bFormat: [index] message§r"); - int i = 0; - for (String message : PluginMain.AnnounceMessages) - SendMessage(player, "[" + i++ + "] " + message); - SendMessage(player, - "§bCurrent wait time between announcements: " - + PluginMain.AnnounceTime / 60 / 1000 - + " minute(s)§r"); - break; - case "edit": - if (commandblock == null) { - SendMessage( - player, - "§cError: This command can only be used from a command block. Use /u announce remove."); - break; - } - if (args.length < 4) { - commandblock - .sendMessage("§cUsage: /u announce edit "); - return; - } - StringBuilder sb1 = new StringBuilder(); - for (int i1 = 3; i1 < args.length; i1++) { - sb1.append(args[i1]); - if (i1 != args.length - 1) - sb1.append(" "); - } - String finalmessage1 = sb1.toString().replace('&', '§'); - int index = Integer.parseInt(args[2]); - if (index > 100) - break; - while (PluginMain.AnnounceMessages.size() <= index) - PluginMain.AnnounceMessages.add(""); - PluginMain.AnnounceMessages.set(Integer.parseInt(args[2]), - finalmessage1); - commandblock.sendMessage("Announcement edited."); - break; - default: - String message = "§cUsage: /u announce add|remove|settime|list|edit§r"; - SendMessage(player, message); - return; - } - } - } - - @SuppressWarnings("unused") - private static void DoSaveLoadPos(Player player, String[] args) { // 2015.08.09. - // args[0] is "admin" - args[1] is "savepos|loadpos" - if (args.length == 2) { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - Player p = null; - try { - p = Bukkit.getPlayer(args[2]); - } catch (Exception e) { - } - if (!MaybeOfflinePlayer.AllPlayers.containsKey(p.getUniqueId())) { - String message = "§cPlayer not found: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - if (p == null) { - String message = "§cPlayer is not online: " + args[2] + "§r"; - SendMessage(player, message); - return; - } - if (args[1].equalsIgnoreCase("savepos")) { - mp.SavedLocation = p.getLocation(); - } else if (args[1].equalsIgnoreCase("loadpos")) { - if (mp.SavedLocation != null) - p.teleport(mp.SavedLocation); - } else { - String message = "§cUsage: /u admin savepos|loadpos §r"; - SendMessage(player, message); - return; - } - // SendMessage(player, "Player " + p.getName() + - // " position saved/loaded.");s - } - - private static void DoUpdateDynmap(Player player, String[] args) { - // args[0] is "admin" - args[1] is "updatedynmap" - if (args.length == 2) { - String message = "§cUsage: /u admin updatedynmap §r"; - SendMessage(player, message); - return; - } - } - - private static Random random = new Random(); - - public static String KittyCannonMinigame = "KittyCannon"; - - private static void DoKittyCannon(Player player, String[] args) { - if (player == null) { - SendMessage(player, - "§cThis command can only be used by a player.§r"); - return; - } - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(player); - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) { - SendMessage(player, - "§cYou can only use KittyCannon in it's minigame!"); - return; - } - try { - final Mob cat = Mob.OCELOT; - final Ocelot ocelot = (Ocelot) cat.spawn(player.getWorld(), - player.getServer(), player.getEyeLocation()); - if (ocelot == null) { - return; - } - final ArrayList lore = new ArrayList<>(); - lore.add(player.getName()); - final int i = random.nextInt(Ocelot.Type.values().length); - ocelot.setCatType(Ocelot.Type.values()[i]); - ocelot.setTamed(true); - ocelot.setBaby(); - ocelot.addPotionEffect(new PotionEffect( - PotionEffectType.DAMAGE_RESISTANCE, 5, 5)); - ocelot.setVelocity(player.getEyeLocation().getDirection() - .multiply(2)); - Bukkit.getScheduler().scheduleSyncDelayedTask(PluginMain.Instance, - new Runnable() { - @SuppressWarnings("deprecation") - @Override - public void run() { - final Location loc = ocelot.getLocation(); - ocelot.remove(); - loc.getWorld().createExplosion(loc, 0F); - final ItemStack head = new ItemStack( - Material.SKULL_ITEM, 1, (short) 3, (byte) 3); - SkullMeta im = (SkullMeta) head.getItemMeta(); - im.setDisplayName("§rOcelot Head"); - im.setOwner("MHF_Ocelot"); - im.setLore(lore); - head.setItemMeta(im); - loc.getWorld().dropItem(loc, head); - } - }, 20); - } catch (MobException e) { - } - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ff/a0790ee2cf3e001518fa86d7ae2a1cf8 b/.metadata/.plugins/org.eclipse.core.resources/.history/ff/a0790ee2cf3e001518fa86d7ae2a1cf8 deleted file mode 100644 index 38374ce..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ff/a0790ee2cf3e001518fa86d7ae2a1cf8 +++ /dev/null @@ -1,196 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; - -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.entity.Player; - -public class Commands implements CommandExecutor { - // This method is called, when somebody uses our command - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (sender instanceof Player) { - Player player = (Player) sender; - if(args.length<1) - return false; - MaybeOfflinePlayer p=MaybeOfflinePlayer.AllPlayers.get(player.getName()); //2015.08.08. - //if(!PluginMain.PlayerFlairs.containsKey(player.getName())) - if(p.Flair==null) - { - player.sendMessage("Error: You need to write your username to the reddit thread at /r/TheButtonMinecraft"); - return true; - } - switch(args[0].toLowerCase()) //toLowerCase: 2015.08.09. - { - case "accept": - { - if(p.IgnoredFlair) - p.IgnoredFlair=false; //2015.08.08. - if(!p.AcceptedFlair) - { - String flair=p.Flair; //2015.08.08. - PluginMain.AppendPlayerDisplayFlairFinal(player, flair); //2015.07.20. - p.AcceptedFlair=true; //2015.08.08. - player.sendMessage("§6Your flair has been set:§r "+flair); - } - else - player.sendMessage("§cYou already have this user's flair.§r"); - break; - } - case "ignore": - { - if(p.AcceptedFlair) - p.AcceptedFlair=false; //2015.08.08. - if(!p.IgnoredFlair) - { - p.IgnoredFlair=true; - String flair=p.Flair; //2015.08.08. - PluginMain.RemovePlayerDisplayFlairFinal(player, flair); //2015.07.20. - player.sendMessage("§6You have ignored this request. You can still use /u accept though.§r"); - } - else - player.sendMessage("§cYou already ignored this request.§r"); - break; - } - /*case "reload": //2015.07.20. - DoReload(player); - break;*/ - case "admin": //2015.08.09. - DoAdmin(player, args); - break; - case "nonpresser": //2015.08.09. - break; - default: - return false; - } - return true; - } - /*if(args[0].toLowerCase()=="reload") - DoReload(null); //2015.07.20.*/ - else if(args.length>0 && args[0].toLowerCase().equals("admin")) //2015.08.09. - { - DoAdmin(null, args); //2015.08.09. - return true; //2015.08.09. - } - return false; - } - private static void DoReload(Player player) - { //2015.07.20. - //if(player==null || player.isOp() || player.getName()=="NorbiPeti") - //{ - try - { - File file=new File("autoflairconfig.txt"); - if(file.exists()) - { - PluginMain.TownColors.clear(); - BufferedReader br=new BufferedReader(new FileReader(file)); - String line; - while((line=br.readLine())!=null) - { - String[] s=line.split(" "); - PluginMain.TownColors.put(s[0], s[1]); - } - br.close(); - for(Player p : PluginMain.GetPlayers()) - { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p.getName()); - if(mp.Flair!=null) - { - String flair=mp.Flair; - PluginMain.RemovePlayerDisplayFlairFinal(p, flair); - PluginMain.AppendPlayerDisplayFlairFinal(p, flair); - } - } - String msg="§6Reloaded config file.§r"; - SendMessage(player, msg); //2015.08.09. - } - } - catch(Exception e) - { - System.out.println("Error!\n"+e); - if(player!=null) - player.sendMessage("§cAn error occured. See console for details.§r"); - PluginMain.LastException=e; //2015.08.09. - } - //} - //else - //player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoAdmin(Player player, String[] args) - { //2015.08.09. - if(player==null || player.isOp() || player.getName()=="NorbiPeti") - { - //System.out.println("Args length: " + args.length); - if(args.length==1) - { - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - //args[0] is "admin" - switch(args[1].toLowerCase()) - { - case "reload": - DoReload(player); - break; - case "playerinfo": - DoPlayerInfo(player, args); - break; - case "getlasterror": - DoGetLastError(player, args); - default: - String message="§cUsage: /u admin reload|playerinfo§r"; - SendMessage(player, message); - return; - } - } - else - player.sendMessage("§cYou need to be OP to use this command.§r"); - } - private static void DoPlayerInfo(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "playerinfo" - if(args.length==2) - { - String message="§cUsage: /u admin playerinfo §r"; - SendMessage(player, message); - return; - } - if(!MaybeOfflinePlayer.AllPlayers.containsKey(args[2])) - { - String message="§cPlayer not found: "+args[2]+"§r"; - SendMessage(player, message); - return; - } - MaybeOfflinePlayer p = MaybeOfflinePlayer.AllPlayers.get(args[2]); - SendMessage(player, "Player name: "+p.PlayerName); - SendMessage(player, "User flair: "+p.Flair); - SendMessage(player, "Username: "+p.UserName); - SendMessage(player, "Flair accepted: "+p.AcceptedFlair); - SendMessage(player, "Flair ignored: "+p.IgnoredFlair); - } - private static void SendMessage(Player player, String message) - { //2015.08.09. - if(player==null) - System.out.println(message); - else - player.sendMessage(message); - } - private static void DoGetLastError(Player player, String[] args) - { //2015.08.09. - //args[0] is "admin" - args[1] is "getlasterror" - if(PluginMain.LastException!=null) - { - SendMessage(player, "Last error:"); - SendMessage(player, PluginMain.LastException.toString()); - PluginMain.LastException=null; - } - else - SendMessage(player, "There were no exceptions."); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/ff/a07a53fd4ca600151c15ab42d7919fee b/.metadata/.plugins/org.eclipse.core.resources/.history/ff/a07a53fd4ca600151c15ab42d7919fee deleted file mode 100644 index ba645f8..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.history/ff/a07a53fd4ca600151c15ab42d7919fee +++ /dev/null @@ -1,366 +0,0 @@ -package tk.sznp.thebuttonautoflair; - -import org.bukkit.Bukkit; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.configuration.InvalidConfigurationException; -import org.bukkit.configuration.file.YamlConfiguration; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.player.AsyncPlayerChatEvent; -import org.bukkit.event.player.PlayerChatTabCompleteEvent; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.SkullMeta; - -import au.com.mineauz.minigames.MinigamePlayer; -import au.com.mineauz.minigames.Minigames; - -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Random; -import java.util.Timer; -import java.util.TimerTask; -import java.util.UUID; - -public class PlayerListener implements Listener { // 2015.07.16. - public static HashMap nicknames = new HashMap<>(); - - public static boolean Enable = false; // 2015.08.29. - - @EventHandler - public void onPlayerJoin(PlayerJoinEvent event) { - Player p = event.getPlayer(); - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); - mp.PlayerName = p.getName(); // 2015.10.17. 0:58 - if (!mp.FlairState.equals(FlairStates.NoComment)) - // if (false) - PluginMain.ConfirmUserMessage(mp); // 2015.08.09. - else { // 2015.07.20. - Timer timer = new Timer(); - PlayerJoinTimerTask tt = new PlayerJoinTimerTask() { - @Override - public void run() { - if (mp.FlairState.equals(FlairStates.NoComment)) { - String json = "[\"\",{\"text\":\"If you'd like your /r/TheButton flair displayed ingame, write your Minecraft name to \",\"color\":\"aqua\"},{\"text\":\"[this thread].\",\"color\":\"aqua\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://www.reddit.com/r/TheButtonMinecraft/comments/3d25do/\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Click here to go to the Reddit thread\",\"color\":\"aqua\"}]}}}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - json = "[\"\",{\"text\":\"If you don't want the flair, type /u ignore to prevent this message after next login.\",\"color\":\"aqua\"}]"; - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Console, - "tellraw " + mp.PlayerName + " " + json); - } - } - }; - tt.mp = mp; - timer.schedule(tt, 15 * 1000); - } - - /* NICKNAME LOGIC */ - - UUID id = p.getUniqueId(); - - File f = new File("plugins/Essentials/userdata/" + id + ".yml"); - if (f.exists()) { - YamlConfiguration yc = new YamlConfiguration(); - try { - yc.load(f); - } catch (IOException e) { - e.printStackTrace(); - } catch (InvalidConfigurationException e) { - e.printStackTrace(); - } - String nickname = yc.getString("nickname"); - if (nickname != null) { - nicknames.put(nickname, id); - - if (Enable) { - if (!p.getName().equals("NorbiPeti")) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.chat("Hey, " + nickname + "!"); - break; - } - } - } - } - } - } - - mp.RPMode = true; // 2015.08.25. - - mp.SetFlairColor(mp.GetFlairColor()); //Update display - } - - @EventHandler - public void onPlayerLeave(PlayerQuitEvent event) { - String deletenick = null; - for (String nickname : nicknames.keySet()) { - UUID uuid = nicknames.get(nickname); - if (event.getPlayer().getUniqueId().equals(uuid)) { - deletenick = nickname; - break; - } - } - if (deletenick != null) - nicknames.remove(deletenick); - } - - public static String NotificationSound; // 2015.08.14. - public static double NotificationPitch; // 2015.08.14. - - public static boolean ShowRPTag = false; // 2015.08.31. - - @EventHandler - public void onPlayerChat(AsyncPlayerChatEvent event) { - MaybeOfflinePlayer player = MaybeOfflinePlayer.AllPlayers.get(event - .getPlayer().getUniqueId()); - String flair = player.GetFormattedFlair(); - String message = event.getMessage(); // 2015.08.08. - for (Player p : PluginMain.GetPlayers()) { // 2015.08.12. - String color = ""; // 2015.08.17. - if (message.contains(p.getName())) { - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AddPlayerIfNeeded(p - .getUniqueId()); // 2015.08.17. - color = String.format("§%x", (mp.GetFlairColor() == 0x00 ? 0xb - : mp.GetFlairColor())); // TODO: Quiz queue - } - - message = message.replace(p.getName(), color + p.getName() - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - for (String n : nicknames.keySet()) { - Player p = null; - String nwithoutformatting = new String(n); - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (message.contains(nwithoutformatting)) { - p = Bukkit.getPlayer(nicknames.get(n)); - if (NotificationSound == null) - p.playSound(p.getLocation(), Sound.ORB_PICKUP, 1.0f, 0.5f); // 2015.08.12. - else - p.playSound(p.getLocation(), NotificationSound, 1.0f, - (float) NotificationPitch); // 2015.08.14. - MaybeOfflinePlayer.AddPlayerIfNeeded(p.getUniqueId()); // 2015.08.17. - } - if (p != null) { - message = message.replace(nwithoutformatting, n - + (event.getMessage().startsWith("§2>") ? "§2" : "§r")); - } - } - - event.setMessage(message); // 2015.09.05. - - event.setFormat(event - .getFormat() - .replace( - "{rptag}", - (player.RPMode ? (ShowRPTag ? "§2[RP]§r" : "") - : "§8[OOC]§r")) - .replace("{buttonflair}", flair) - .replace( - "{isitwilds}", - (event.getPlayer().getWorld().getName() - .equalsIgnoreCase("wilds") ? "[PVP]" : ""))); // 2015.09.04. - } - - @EventHandler - public void onTabComplete(PlayerChatTabCompleteEvent e) { - String name = e.getLastToken(); - for (String nickname : nicknames.keySet()) { - String nwithoutformatting = nickname; - int index; - while ((index = nwithoutformatting.indexOf("§k")) != -1) - nwithoutformatting = nwithoutformatting.replace("§k" - + nwithoutformatting.charAt(index + 2), ""); // Support - // for - // one - // random - // char - while ((index = nwithoutformatting.indexOf('§')) != -1) - nwithoutformatting = nwithoutformatting.replace("§" - + nwithoutformatting.charAt(index + 1), ""); - if (nwithoutformatting.startsWith(name) - && !nwithoutformatting.equals(Bukkit.getPlayer( - nicknames.get(nickname)).getName())) - e.getTabCompletions().add(nwithoutformatting); - } - } - - public static boolean DebugMode = false; - - public void SendForDebug(String message) { - if (DebugMode) { - for (Player player : PluginMain.GetPlayers()) { - if (player.getName().equals("NorbiPeti")) { - player.sendMessage("[DEBUG] " + message); - break; - } - } - } - } - - private boolean ActiveF = false; - private int FCount = 0; - - @EventHandler - public void onPlayerMessage(AsyncPlayerChatEvent e) { - if (e.getMessage().equalsIgnoreCase("F")) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(e - .getPlayer().getUniqueId()); - if (!mp.PressedF && ActiveF) { - FCount++; - mp.PressedF = true; - } - } - - if (e.getMessage().startsWith(">")) - e.setMessage("§2" + e.getMessage()); - - if (e.getMessage().equalsIgnoreCase("lol")) - Commands.Lastlol = MaybeOfflinePlayer.AllPlayers.get(e.getPlayer() - .getUniqueId()); - - if (e.getFormat().contains("[g]")) { - StringBuilder sb = new StringBuilder(); - sb.append("tellraw @a [\"\""); - sb.append(",{\"text\":\"Hashtags:\"}"); - int index = -1; - ArrayList list = new ArrayList(); - while ((index = e.getMessage().indexOf("#", index + 1)) != -1) { - int index2 = e.getMessage().indexOf(" ", index + 1); - if (index2 == -1) - index2 = e.getMessage().length(); - int index3 = e.getMessage().indexOf("#", index + 1); - if (index3 != -1 && index3 < index2) // A # occurs before a - // space - index2 = index3; - String original = e.getMessage().substring(index, index2); - list.add(original); - sb.append(",{\"text\":\" \"}"); - sb.append(",{\"text\":\""); - sb.append(original); - sb.append("\",\"color\":\"blue\",\"clickEvent\":{\"action\":\"open_url\",\"value\":\"https://twitter.com/hashtag/"); - sb.append(original.substring(1)); - sb.append("\"},\"hoverEvent\":{\"action\":\"show_text\",\"value\":{\"text\":\"\",\"extra\":[{\"text\":\"Open on Twitter\",\"color\":\"blue\"}]}}}"); - } - for (String original : list) - e.setMessage(e.getMessage().replace( - original, - "§9" - + original - + (e.getMessage().startsWith("§2>") ? "§2" - : "§r"))); - /* - * for (String original : list) - * System.out.println(e.getMessage().replace( original, "§9" + - * original + (e.getMessage().startsWith("§2>") ? "§2" : "§r"))); - */ - - sb.append("]"); - - if (list.size() > 0) - PluginMain.Instance.getServer().dispatchCommand( - PluginMain.Instance.getServer().getConsoleSender(), - sb.toString()); - } - } - - private Timer Ftimer; - - @EventHandler - public void onPlayerDeath(PlayerDeathEvent e) { - if (!Minigames.plugin.pdata.getMinigamePlayer(e.getEntity()) - .isInMinigame() && new Random().nextBoolean()) { - if (Ftimer != null) - Ftimer.cancel(); - ActiveF = true; - FCount = 0; - for (Player p : PluginMain.GetPlayers()) { - MaybeOfflinePlayer mp = MaybeOfflinePlayer.AllPlayers.get(p - .getUniqueId()); - mp.PressedF = false; - p.sendMessage("§bPress F to pay respects.§r"); - } - Ftimer = new Timer(); - TimerTask tt = new TimerTask() { - @Override - public void run() { - if (ActiveF) { - ActiveF = false; - for (Player p : PluginMain.GetPlayers()) { - p.sendMessage("§b" + FCount + " " - + (FCount == 1 ? "person" : "people") - + " paid their respects.§r"); - } - } - } - }; - Ftimer.schedule(tt, 15 * 1000); - } - } - - @EventHandler - public void onPlayerItemPickup(PlayerPickupItemEvent e) { - // System.out.println("A"); - MinigamePlayer mp = Minigames.plugin.pdata.getMinigamePlayer(e - .getPlayer()); - // System.out.println("B"); - - /* - * if (!e.getPlayer().isOp() && (!mp.isInMinigame() || - * mp.getMinigame().getName(false) - * .equalsIgnoreCase(Commands.KittyCannonMinigame))) return; - */ - if (!(mp.isInMinigame() && mp.getMinigame().getName(false) - .equalsIgnoreCase(Commands.KittyCannonMinigame))) - return; - // System.out.println("C"); - ItemStack item = e.getItem().getItemStack(); - if (!item.getType().equals(Material.SKULL_ITEM) - && !item.getType().equals(Material.SKULL)) - return; - // System.out.println("D"); - SkullMeta meta = (SkullMeta) item.getItemMeta(); - if (!meta.getDisplayName().equals("§rOcelot Head") - || !meta.getOwner().equals("MHF_Ocelot")) - return; - // System.out.println("E"); - if (meta.getLore() == null || meta.getLore().size() == 0) - return; - // System.out.println("F"); - ItemStack hat = e.getPlayer().getInventory().getHelmet(); - if (!(hat != null - && (hat.getType().equals(Material.SKULL) || hat.getType() - .equals(Material.SKULL_ITEM)) && ((SkullMeta) hat - .getItemMeta()).getDisplayName().equals("§rWolf Head"))) - e.getPlayer().damage(1f * item.getAmount(), - Bukkit.getPlayer(meta.getLore().get(0))); - e.getItem().remove(); - // System.out.println("G"); - e.setCancelled(true); - // System.out.println("H"); - } -} diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/RemoteSystemsTempFiles/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/RemoteSystemsTempFiles/.markers.snap deleted file mode 100644 index 6fe4a90..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.projects/RemoteSystemsTempFiles/.markers.snap and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/RemoteSystemsTempFiles/.syncinfo.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/RemoteSystemsTempFiles/.syncinfo.snap deleted file mode 100644 index 6fe4a90..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.projects/RemoteSystemsTempFiles/.syncinfo.snap and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.indexes/e4/77/69/e/history.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.indexes/e4/77/69/e/history.index deleted file mode 100644 index 8ec48cc..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.indexes/e4/77/69/e/history.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.indexes/properties.index deleted file mode 100644 index 9615fea..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.indexes/properties.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.markers b/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.markers deleted file mode 100644 index 8797416..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.markers and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.markers.snap deleted file mode 100644 index bd10177..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.markers.snap and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.syncinfo.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.syncinfo.snap deleted file mode 100644 index 6fe4a90..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.projects/TheButtonAutoFlair/.syncinfo.snap and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version deleted file mode 100644 index 25cb955..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index deleted file mode 100644 index c0ff3a4..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version deleted file mode 100644 index 6b2aaa7..0000000 --- a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap deleted file mode 100644 index 6fe4a90..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/98.tree b/.metadata/.plugins/org.eclipse.core.resources/.root/98.tree deleted file mode 100644 index 1f77a2d..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.root/98.tree and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources deleted file mode 100644 index dfee3f8..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/98.snap b/.metadata/.plugins/org.eclipse.core.resources/98.snap deleted file mode 100644 index a06a9af..0000000 Binary files a/.metadata/.plugins/org.eclipse.core.resources/98.snap and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index dffc6b5..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs deleted file mode 100644 index 9dd00d6..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n -preferredTargets=default\:default| diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.help.base.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.help.base.prefs deleted file mode 100644 index baf7806..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.help.base.prefs +++ /dev/null @@ -1,6 +0,0 @@ -always_external_browser=false -dialog_infopop=false -eclipse.preferences.version=1 -help_view_open_mode=in_place -search_from_browser=false -window_infopop=false diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index bee14ad..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.builder.resourceCopyExclusionFilter= -org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs deleted file mode 100644 index e15346f..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.launching.PREF_VM_XML=\r\n\r\n\r\n\r\n\r\n\r\n diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs deleted file mode 100644 index 661b623..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs +++ /dev/null @@ -1,21 +0,0 @@ -content_assist_disabled_computers=org.eclipse.jdt.ui.textProposalCategory\u0000org.eclipse.jdt.ui.javaAllProposalCategory\u0000org.eclipse.jdt.ui.javaTypeProposalCategory\u0000org.eclipse.jdt.ui.javaNoTypeProposalCategory\u0000 -content_assist_lru_history= -content_assist_number_of_computers=21 -content_assist_proposals_background=255,255,255 -content_assist_proposals_foreground=0,0,0 -eclipse.preferences.version=1 -fontPropagated=true -markOccurrences=false -org.eclipse.jdt.ui.editor.tab.width= -org.eclipse.jdt.ui.formatterprofiles.version=12 -org.eclipse.jdt.ui.javadoclocations.migrated=true -org.eclipse.jdt.ui.text.code_templates_migrated=true -org.eclipse.jdt.ui.text.custom_code_templates= -org.eclipse.jdt.ui.text.custom_templates= -org.eclipse.jdt.ui.text.templates_migrated=true -org.eclipse.jface.textfont=1|Consolas|10.0|0|WINDOWS|1|0|0|0|0|0|0|0|0|1|0|0|0|0|Consolas; -proposalOrderMigrated=true -spelling_locale_initialized=true -tabWidthPropagated=true -useAnnotationsPrefPage=true -useQuickDiffPrefPage=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.j2ee.webservice.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.j2ee.webservice.ui.prefs deleted file mode 100644 index 553bb96..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.j2ee.webservice.ui.prefs +++ /dev/null @@ -1,2 +0,0 @@ -areThereWebServices=false -eclipse.preferences.version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.jsp.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.jsp.core.prefs deleted file mode 100644 index 66f87be..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.jsp.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jst.jsp.core.taglib.TaglibIndex=CLEAN diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs deleted file mode 100644 index 67b1d96..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.m2e.discovery.pref.projects= diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs deleted file mode 100644 index 43e97e4..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -mylyn.attention.migrated=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.java.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.java.ui.prefs deleted file mode 100644 index 2a6fe50..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.java.ui.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.mylyn.java.ui.run.count.3_10_0=1 -org.eclipse.mylyn.java.ui.run.count.3_1_0=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs deleted file mode 100644 index 8d462a6..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.mylyn.monitor.activity.tracking.enabled.checked=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs deleted file mode 100644 index 5330e43..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs +++ /dev/null @@ -1,4 +0,0 @@ -eclipse.preferences.version=1 -migrated.task.repositories.secure.store=true -org.eclipse.mylyn.tasks.ui.filters.nonmatching=true -org.eclipse.mylyn.tasks.ui.filters.nonmatching.encouraged=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.api.tools.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.api.tools.prefs deleted file mode 100644 index d2ed603..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.api.tools.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -knownEEFragments= diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs deleted file mode 100644 index 888c64d..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -workspace_target_handle=local\:1449259517199.target diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.ui.prefs deleted file mode 100644 index 643105e..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.ui.prefs +++ /dev/null @@ -1,2 +0,0 @@ -Preferences.MainPage.overwriteBuildFilesOnExport=prompt -eclipse.preferences.version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs deleted file mode 100644 index c27d8a2..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeuserprofiles=NORBI-PC;Team -eclipse.preferences.version=1 -org.eclipse.rse.systemtype.local.systemType.defaultUserId=Norbi -useridperkey=NORBI-PC.Local\=Norbi; diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.ui.prefs deleted file mode 100644 index 777efa3..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.rse.ui.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.rse.preferences.order.connections=NORBI-PC.Local diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.search.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.search.prefs deleted file mode 100644 index cec65c4..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.search.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.search.defaultPerspective=org.eclipse.search.defaultPerspective.none diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.cvs.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.cvs.ui.prefs deleted file mode 100644 index f9e585b..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.cvs.ui.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -pref_first_startup=false diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs deleted file mode 100644 index 56cd496..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.team.ui.first_time=false diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs deleted file mode 100644 index 61f3bb8..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -overviewRuler_migration=migrated_3.1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs deleted file mode 100644 index 3d09974..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs +++ /dev/null @@ -1,8 +0,0 @@ -IMPORT_FILES_AND_FOLDERS_RELATIVE=true -IMPORT_FILES_AND_FOLDERS_TYPE=23,1 -PROBLEMS_FILTERS_MIGRATE=true -TASKS_FILTERS_MIGRATE=true -eclipse.preferences.version=1 -platformState=1449250075322 -quickStart=false -tipsAndTricks=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs deleted file mode 100644 index 08076f2..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -showIntro=false diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs deleted file mode 100644 index ad74de0..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs +++ /dev/null @@ -1,4 +0,0 @@ -//org.eclipse.ui.commands/state/org.eclipse.wst.xml.views.XPathView.processor.xpathprocessor/org.eclipse.ui.commands.radioState=xpath10 -ENABLED_DECORATORS=org.eclipse.jst.ws.jaxws.dom.integration.navigator.WebServiceDecorator\:true,org.eclipse.wst.server.ui.decorator\:false,com.android.ide.eclipse.adt.project.FolderDecorator\:true,org.eclipse.datatools.connectivity.sqm.core.internal.ui.explorer.DependencyDecoration\:true,org.eclipse.datatools.connectivity.sqm.core.internal.ui.explorer.ColumnDecoration\:true,org.eclipse.datatools.connectivity.sqm.core.internal.ui.explorer.ForeignKeyDecoration\:true,org.eclipse.datatools.connectivity.sqm.core.internal.ui.explorer.IndexTriggerDecoration\:true,org.eclipse.datatools.connectivity.internal.core.ui.bookmarkDecoration\:true,org.eclipse.datatools.connectivity.internal.core.ui.FilterNodeDecoration\:true,org.eclipse.datatools.connectivity.ui.decorator.contentextension\:false,org.eclipse.datatools.enablement.ingres.ui.providers.decorators.SynonymDecorationService\:true,org.eclipse.datatools.enablement.ingres.internal.ui.providers.decorators.ParameterDecorationService\:true,org.eclipse.datatools.enablement.sybase.asa.proxytabledecorator\:true,org.eclipse.datatools.enablement.sybase.ase.webservicetabledecorator\:true,org.eclipse.datatools.enablement.sybase.systemtabledecorator\:true,org.eclipse.egit.ui.internal.decorators.GitLightweightDecorator\:true,org.eclipse.jdt.ui.override.decorator\:true,org.eclipse.jdt.ui.interface.decorator\:false,org.eclipse.jdt.ui.buildpath.decorator\:true,org.eclipse.jst.j2ee.internal.ui.util.AnnotationIconDecorator_ejb\:true,org.eclipse.jst.j2ee.navigator.internal.J2EEProjectDecorator\:true,org.eclipse.jst.jee.ui.internal.navigator.ejb.BeanDecorator\:true,org.eclipse.jst.jee.navigator.internal.JEEProjectDecorator\:true,org.eclipse.jst.j2ee.internal.ui.util.AnnotationIconDecorator_servlet\:true,org.eclipse.jst.servlet.ui.Decorator\:true,org.eclipse.mylyn.context.ui.decorator.interest\:true,org.eclipse.mylyn.tasks.ui.decorators.task\:true,org.eclipse.mylyn.team.ui.changeset.decorator\:true,org.eclipse.pde.ui.binaryProjectDecorator\:false,org.eclipse.rse.core.virtualobject.decorator\:true,org.eclipse.rse.core.binary.executable.decorator\:true,org.eclipse.rse.core.script.executable.decorator\:true,org.eclipse.rse.core.java.executable.decorator\:true,org.eclipse.rse.core.library.decorator\:true,org.eclipse.rse.core.link.decorator\:true,org.eclipse.rse.subsystems.error.decorator\:true,org.eclipse.team.cvs.ui.decorator\:true,org.eclipse.ui.LinkedResourceDecorator\:true,org.eclipse.ui.VirtualResourceDecorator\:true,org.eclipse.ui.ContentTypeDecorator\:true,org.eclipse.ui.ResourceFilterDecorator\:false,org.eclipse.wst.jsdt.ui.override.decorator\:true,org.eclipse.wst.server.ui.navigatorDecorator\:true, -PLUGINS_NOT_ACTIVATED_ON_STARTUP=org.eclipse.m2e.discovery; -eclipse.preferences.version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.jsdt.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.jsdt.ui.prefs deleted file mode 100644 index a092597..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.jsdt.ui.prefs +++ /dev/null @@ -1,10 +0,0 @@ -eclipse.preferences.version=1 -fontPropagated=true -org.eclipse.jface.textfont=1|Consolas|10.0|0|WINDOWS|1|0|0|0|0|0|0|0|0|1|0|0|0|0|Consolas; -org.eclipse.wst.jsdt.ui.editor.tab.width= -org.eclipse.wst.jsdt.ui.formatterprofiles.version=11 -org.eclipse.wst.jsdt.ui.javadoclocations.migrated=true -proposalOrderMigrated=true -tabWidthPropagated=true -useAnnotationsPrefPage=true -useQuickDiffPrefPage=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.sse.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.sse.core.prefs deleted file mode 100644 index a23b194..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.sse.core.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -task-tag-projects-already-scanned=RemoteSystemsTempFiles,TheButtonAutoFlair diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.sse.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.sse.ui.prefs deleted file mode 100644 index 5c6ef69..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.sse.ui.prefs +++ /dev/null @@ -1,4 +0,0 @@ -content_assist_number_of_computers=18 -eclipse.preferences.version=1 -useAnnotationsPrefPage=true -useQuickDiffPrefPage=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.ws.service.policy.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.ws.service.policy.prefs deleted file mode 100644 index 6696959..0000000 --- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.wst.ws.service.policy.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp.wsiap.defaultProtocol=http\://schemas.xmlsoap.org/wsdl/soap/ -org.eclipse.wst.ws.service.policy.ui.servicepols.wsiprofilecomp.wsissbp.defaultProtocol=http\://schemas.xmlsoap.org/wsdl/soap/ diff --git a/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml deleted file mode 100644 index bc1657f..0000000 --- a/.metadata/.plugins/org.eclipse.debug.ui/dialog_settings.xml +++ /dev/null @@ -1,18 +0,0 @@ - -
-
- - - -
-
- - - -
-
- - - -
-
diff --git a/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi deleted file mode 100644 index e963ea8..0000000 --- a/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi +++ /dev/null @@ -1,3227 +0,0 @@ - - - - activeSchemeId:org.eclipse.ui.defaultAcceleratorConfiguration - ModelMigrationProcessor.001 - - - - - - topLevel - shellMaximized - - - - - persp.actionSet:org.eclipse.mylyn.context.ui.actionSet - persp.actionSet:org.eclipse.mylyn.doc.actionSet - persp.actionSet:org.eclipse.mylyn.tasks.ui.navigation - persp.actionSet:org.eclipse.ui.cheatsheets.actionSet - persp.actionSet:org.eclipse.rse.core.search.searchActionSet - persp.actionSet:org.eclipse.search.searchActionSet - persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation - persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation - persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo - persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet - persp.actionSet:org.eclipse.ui.actionSet.keyBindings - persp.actionSet:org.eclipse.ui.actionSet.openFiles - persp.actionSet:org.eclipse.jst.j2ee.J2eeMainActionSet - persp.actionSet:org.eclipse.jdt.ui.JavaActionSet - persp.actionSet:org.eclipse.debug.ui.launchActionSet - persp.actionSet:org.eclipse.debug.ui.debugActionSet - persp.actionSet:org.eclipse.ui.NavigateActionSet - persp.viewSC:org.eclipse.ui.navigator.ProjectExplorer - persp.viewSC:org.eclipse.wst.server.ui.ServersView - persp.viewSC:org.eclipse.datatools.connectivity.DataSourceExplorerNavigator - persp.viewSC:org.eclipse.ui.views.BookmarkView - persp.viewSC:org.eclipse.ui.views.ContentOutline - persp.viewSC:org.eclipse.ui.views.PropertySheet - persp.viewSC:org.eclipse.ui.views.ResourceNavigator - persp.viewSC:org.eclipse.wst.common.snippets.internal.ui.SnippetsView - persp.viewSC:org.eclipse.ui.views.AllMarkersView - persp.viewSC:org.eclipse.mylyn.tasks.ui.views.tasks - persp.viewSC:org.eclipse.search.ui.views.SearchView - persp.viewSC:org.eclipse.ui.console.ConsoleView - persp.showIn:org.eclipse.ui.navigator.ProjectExplorer - persp.newWizSC:org.eclipse.jpt.jpa.ui.wizard.newJpaProject - persp.perspSC:org.eclipse.jpt.ui.jpaPerspective - persp.perspSC:org.eclipse.debug.ui.DebugPerspective - persp.perspSC:org.eclipse.jdt.ui.JavaPerspective - persp.perspSC:org.eclipse.ui.resourcePerspective - persp.perspSC:org.eclipse.wst.web.ui.webDevPerspective - persp.newWizSC:org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard - persp.newWizSC:org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard - persp.newWizSC:org.eclipse.jst.ejb.ui.project.facet.EjbProjectWizard - persp.newWizSC:org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorProjectWizard - persp.newWizSC:org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard - persp.newWizSC:org.eclipse.wst.web.ui.internal.wizards.SimpleWebProjectWizard - persp.newWizSC:org.eclipse.jpt.ui.wizard.newJpaProject - persp.newWizSC:org.eclipse.jst.servlet.ui.internal.wizard.AddServletWizard - persp.newWizSC:org.eclipse.jst.ejb.ui.internal.wizard.AddSessionBeanWizard - persp.newWizSC:org.eclipse.jst.ejb.ui.internal.wizard.AddMessageDrivenBeanWizard - persp.newWizSC:org.eclipse.jpt.ui.wizard.newEntity - persp.newWizSC:org.eclipse.jst.ws.creation.ui.wizard.serverwizard - persp.newWizSC:org.eclipse.ui.wizards.new.folder - persp.newWizSC:org.eclipse.ui.wizards.new.file - persp.actionSet:org.eclipse.wst.server.ui.internal.webbrowser.actionSet - persp.actionSet:org.eclipse.debug.ui.breakpointActionSet - persp.actionSet:org.eclipse.wst.ws.explorer.explorer - - - newtablook - - - - - - - - - - newtablook - - - - - - newtablook - - - - - - - - - - - - - - - - - - persp.actionSet:org.eclipse.mylyn.context.ui.actionSet - persp.actionSet:org.eclipse.mylyn.doc.actionSet - persp.actionSet:org.eclipse.mylyn.tasks.ui.navigation - persp.actionSet:org.eclipse.ui.cheatsheets.actionSet - persp.actionSet:org.eclipse.rse.core.search.searchActionSet - persp.actionSet:org.eclipse.search.searchActionSet - persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation - persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation - persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo - persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet - persp.actionSet:org.eclipse.ui.actionSet.keyBindings - persp.actionSet:org.eclipse.ui.actionSet.openFiles - persp.actionSet:org.eclipse.debug.ui.launchActionSet - persp.actionSet:org.eclipse.jdt.ui.JavaActionSet - persp.actionSet:org.eclipse.jdt.ui.JavaElementCreationActionSet - persp.actionSet:org.eclipse.ui.NavigateActionSet - persp.viewSC:org.eclipse.jdt.ui.PackageExplorer - persp.viewSC:org.eclipse.jdt.ui.TypeHierarchy - persp.viewSC:org.eclipse.jdt.ui.SourceView - persp.viewSC:org.eclipse.jdt.ui.JavadocView - persp.viewSC:org.eclipse.search.ui.views.SearchView - persp.viewSC:org.eclipse.ui.console.ConsoleView - persp.viewSC:org.eclipse.ui.views.ContentOutline - persp.viewSC:org.eclipse.ui.views.ProblemView - persp.viewSC:org.eclipse.ui.views.ResourceNavigator - persp.viewSC:org.eclipse.ui.views.TaskList - persp.viewSC:org.eclipse.ui.views.ProgressView - persp.viewSC:org.eclipse.ui.navigator.ProjectExplorer - persp.viewSC:org.eclipse.ui.texteditor.TemplatesView - persp.viewSC:org.eclipse.pde.runtime.LogView - persp.newWizSC:org.eclipse.jdt.ui.wizards.JavaProjectWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewPackageCreationWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewClassCreationWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewEnumCreationWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewAnnotationCreationWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSourceFolderCreationWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSnippetFileCreationWizard - persp.newWizSC:org.eclipse.jdt.ui.wizards.NewJavaWorkingSetWizard - persp.newWizSC:org.eclipse.ui.wizards.new.folder - persp.newWizSC:org.eclipse.ui.wizards.new.file - persp.newWizSC:org.eclipse.ui.editors.wizards.UntitledTextFileWizard - persp.perspSC:org.eclipse.jdt.ui.JavaBrowsingPerspective - persp.perspSC:org.eclipse.debug.ui.DebugPerspective - persp.newWizSC:com.android.ide.eclipse.adt.project.NewProjectWizard - persp.newWizSC:com.android.ide.eclipse.editors.wizards.NewXmlFileWizard - persp.actionSet:adt.actionSet.wizards - persp.actionSet:adt.actionSet.avdManager - persp.actionSet:adt.actionSet.lint - persp.actionSet:adt.actionSet.refactorings - persp.perspSC:com.android.ide.eclipse.ddms.Perspective - persp.perspSC:com.android.ide.eclipse.hierarchyviewer.PixelPerfectPespective - persp.perspSC:com.android.ide.eclipse.hierarchyviewer.TreeViewPerspective - persp.viewSC:org.eclipse.ant.ui.views.AntView - persp.showIn:org.eclipse.egit.ui.RepositoriesView - persp.actionSet:org.eclipse.debug.ui.breakpointActionSet - persp.actionSet:org.eclipse.jdt.debug.ui.JDTDebugActionSet - persp.newWizSC:org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard - persp.actionSet:org.eclipse.jdt.junit.JUnitActionSet - persp.showIn:org.eclipse.jdt.ui.PackageExplorer - persp.showIn:org.eclipse.team.ui.GenericHistoryView - persp.showIn:org.eclipse.ui.views.ResourceNavigator - persp.showIn:org.eclipse.ui.navigator.ProjectExplorer - persp.viewSC:org.eclipse.mylyn.tasks.ui.views.tasks - persp.newWizSC:org.eclipse.mylyn.tasks.ui.wizards.new.repository.task - persp.perspSC:org.eclipse.wst.jsdt.ui.JavaPerspective - - - - newtablook - org.eclipse.e4.primaryNavigationStack - - - - - - - - newtablook - - - - - - - - - newtablook - - - - newtablook - org.eclipse.e4.secondaryNavigationStack - - - - - - - - newtablook - org.eclipse.e4.secondaryDataStack - - - - - - - - - - - - - - - - - - - - - View - categoryTag:Help - - ViewMenu - menuContribution:menu - - - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - - - View - categoryTag:Help - - - - newtablook - org.eclipse.e4.primaryDataStack - EditorStack - active - - - Editor - org.eclipse.jdt.ui.CompilationUnitEditor - removeOnHide - - menuContribution:popup - popup:#CompilationUnitEditorContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.EditorContext - popup:#AbstractTextEditorContext - - - menuContribution:popup - popup:#CompilationUnitRulerContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.RulerContext - popup:#AbstractTextEditorRulerContext - - - menuContribution:popup - popup:#OverviewRulerContext - - - - - Editor - org.eclipse.jdt.ui.CompilationUnitEditor - removeOnHide - - menuContribution:popup - popup:#CompilationUnitEditorContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.EditorContext - popup:#AbstractTextEditorContext - - - menuContribution:popup - popup:#CompilationUnitRulerContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.RulerContext - popup:#AbstractTextEditorRulerContext - - - menuContribution:popup - popup:#OverviewRulerContext - - - - - Editor - org.eclipse.jdt.ui.CompilationUnitEditor - removeOnHide - - - - Editor - org.eclipse.ui.DefaultTextEditor - removeOnHide - - menuContribution:popup - popup:#TextEditorContext - popup:org.eclipse.ui.DefaultTextEditor.EditorContext - popup:#AbstractTextEditorContext - - - menuContribution:popup - popup:#TextRulerContext - popup:org.eclipse.ui.DefaultTextEditor.RulerContext - popup:#AbstractTextEditorRulerContext - - - menuContribution:popup - popup:#OverviewRulerContext - - - - - Editor - org.eclipse.jdt.ui.CompilationUnitEditor - removeOnHide - active - - menuContribution:popup - popup:#CompilationUnitEditorContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.EditorContext - popup:#AbstractTextEditorContext - - - menuContribution:popup - popup:#CompilationUnitRulerContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.RulerContext - popup:#AbstractTextEditorRulerContext - - - menuContribution:popup - popup:#OverviewRulerContext - - - - - Editor - org.eclipse.jdt.ui.CompilationUnitEditor - removeOnHide - - menuContribution:popup - popup:#CompilationUnitEditorContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.EditorContext - popup:#AbstractTextEditorContext - - - menuContribution:popup - popup:#CompilationUnitRulerContext - popup:org.eclipse.jdt.ui.CompilationUnitEditor.RulerContext - popup:#AbstractTextEditorRulerContext - - - menuContribution:popup - popup:#OverviewRulerContext - - - - - Editor - org.eclipse.jdt.ui.CompilationUnitEditor - removeOnHide - - - - Editor - org.eclipse.m2e.editor.MavenPomEditor - removeOnHide - - - - Editor - org.eclipse.jdt.ui.CompilationUnitEditor - removeOnHide - - - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - - - View - categoryTag:General - - - View - categoryTag:Java - - ViewMenu - menuContribution:menu - - - - - View - categoryTag:Java Browsing - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - - - View - categoryTag:General - - - View - categoryTag:Server - - - View - categoryTag:Data Management - - - View - categoryTag:General - - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - menuContribution:popup - popup:org.eclipse.ui.views.ProblemView - popup:org.eclipse.ui.ide.MarkersView - - - - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - menuContribution:popup - popup:org.eclipse.ui.views.TaskList - popup:org.eclipse.ui.ide.MarkersView - - - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - - - - View - categoryTag:General - - ViewMenu - menuContribution:menu - - - - - - View - categoryTag:Mylyn - - ViewMenu - menuContribution:menu - - - - - - View - categoryTag:Java - - ViewMenu - menuContribution:menu - - - menuContribution:popup - popup:org.eclipse.jdt.ui.PackageExplorer - - - - - - View - categoryTag:Java - - ViewMenu - menuContribution:menu - - - - - - View - categoryTag:Java - - ViewMenu - menuContribution:menu - - - - - View - categoryTag:General - - - View - categoryTag:Ant - - - View - categoryTag:Git - - - View - categoryTag:Java - - - - toolbarSeparator - - - - Draggable - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - - toolbarSeparator - - - - Draggable - - - Draggable - - - Draggable - - - Draggable - - - Draggable - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - - Draggable - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - - Draggable - - - Draggable - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - - Draggable - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - - Draggable - - - Draggable - - - toolbarSeparator - - - - Draggable - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - Opaque - - - - Opaque - - - Opaque - - - Opaque - - - - Draggable - - - Draggable - - - toolbarSeparator - - - - toolbarSeparator - - - - Draggable - - Opaque - - - Opaque - - - - stretch - SHOW_RESTORE_MENU - - - Draggable - HIDEABLE - SHOW_RESTORE_MENU - - - - - stretch - - - - Draggable - - - - - TrimStack - - - - - TrimStack - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - platform:win32 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Editor - - - View - categoryTag:Ant - - - View - categoryTag:Data Management - - - View - categoryTag:Data Management - - - View - categoryTag:Data Management - - - View - categoryTag:Debug - - - View - categoryTag:Debug - - - View - categoryTag:Debug - - - View - categoryTag:Debug - - - View - categoryTag:Debug - - - View - categoryTag:Debug - - - View - categoryTag:Debug - - - View - categoryTag:Git - - - View - categoryTag:Git - - - View - categoryTag:Git - - - View - categoryTag:Git - - - View - categoryTag:General - - - View - categoryTag:Help - - - View - categoryTag:Debug - - - View - categoryTag:Java - - - View - categoryTag:Java - - - View - categoryTag:Java - - - View - categoryTag:Java Browsing - - - View - categoryTag:Java Browsing - - - View - categoryTag:Java Browsing - - - View - categoryTag:Java Browsing - - - View - categoryTag:Java - - - View - categoryTag:General - - - View - categoryTag:Java - - - View - categoryTag:Java - - - View - categoryTag:JPA - - - View - categoryTag:JPA - - - View - categoryTag:JavaServer Faces - - - View - categoryTag:JavaServer Faces - - - View - categoryTag:JAX-WS - categoryTag:Web Services - - - View - categoryTag:Mylyn - - - View - categoryTag:Mylyn - - - View - categoryTag:Mylyn - - - View - categoryTag:API Tools - - - View - categoryTag:Plug-in Development - - - View - categoryTag:Plug-in Development - - - View - categoryTag:Plug-in Development - - - View - categoryTag:Plug-in Development - - - View - categoryTag:Remote Systems - - - View - categoryTag:Remote Systems - - - View - categoryTag:Remote Systems - - - View - categoryTag:Remote Systems - - - View - categoryTag:Remote Systems - - - View - categoryTag:Remote Systems - - - View - categoryTag:Remote Systems - - - View - categoryTag:Remote Systems - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:CVS - - - View - categoryTag:CVS - - - View - categoryTag:Team - - - View - categoryTag:Team - - - View - categoryTag:Terminal - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:Help - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:General - - - View - categoryTag:Debug - - - View - categoryTag:JavaScript - - - View - categoryTag:JavaScript - - - View - categoryTag:JavaScript - - - View - categoryTag:JavaScript - - - View - categoryTag:JavaScript - - - View - categoryTag:Server - - - View - categoryTag:XML - - - View - categoryTag:XML - - - View - categoryTag:XML - - - View - categoryTag:XML - - - View - categoryTag:XML - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Tracer for OpenGL ES - - - View - categoryTag:Tracer for OpenGL ES - - - View - categoryTag:Tracer for OpenGL ES - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Android - - - View - categoryTag:Git - - - View - categoryTag:Maven - - - View - categoryTag:Maven - - - View - categoryTag:Plug-in Development - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/.metadata/.plugins/org.eclipse.equinox.p2.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.equinox.p2.ui/dialog_settings.xml deleted file mode 100644 index e847c8f..0000000 --- a/.metadata/.plugins/org.eclipse.equinox.p2.ui/dialog_settings.xml +++ /dev/null @@ -1,62 +0,0 @@ - -
-
- - - - - -
-
- - - - - - - - -
-
- - - - - -
-
- - - - - -
-
- - - - - -
-
- - - - - -
-
- - - - - -
-
- - - - - -
-
diff --git a/.metadata/.plugins/org.eclipse.help.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.help.ui/dialog_settings.xml deleted file mode 100644 index 5ca0b77..0000000 --- a/.metadata/.plugins/org.eclipse.help.ui/dialog_settings.xml +++ /dev/null @@ -1,3 +0,0 @@ - -
-
diff --git a/.metadata/.plugins/org.eclipse.help.ui/scope_sets/Adding_32_a_32_new_32_software_32_site.hist b/.metadata/.plugins/org.eclipse.help.ui/scope_sets/Adding_32_a_32_new_32_software_32_site.hist deleted file mode 100644 index d3a80ff..0000000 --- a/.metadata/.plugins/org.eclipse.help.ui/scope_sets/Adding_32_a_32_new_32_software_32_site.hist +++ /dev/null @@ -1,6 +0,0 @@ -#Fri Dec 04 17:41:46 CET 2015 -__DEFAULT__=false -org.eclipse.sdk.Eclipse.master=true -org.eclipse.sdk.Google.master=true -org.eclipse.help.ui.localSearch.master=true -expression=Adding a new software site diff --git a/.metadata/.plugins/org.eclipse.help.ui/scope_sets/Default.pref b/.metadata/.plugins/org.eclipse.help.ui/scope_sets/Default.pref deleted file mode 100644 index ec6ade3..0000000 --- a/.metadata/.plugins/org.eclipse.help.ui/scope_sets/Default.pref +++ /dev/null @@ -1,2 +0,0 @@ -#Fri Dec 04 17:41:40 CET 2015 -__DEFAULT__=true diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1233791618.index b/.metadata/.plugins/org.eclipse.jdt.core/1233791618.index deleted file mode 100644 index 0160259..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1233791618.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1429456332.index b/.metadata/.plugins/org.eclipse.jdt.core/1429456332.index deleted file mode 100644 index 6a298f0..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1429456332.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1508644233.index b/.metadata/.plugins/org.eclipse.jdt.core/1508644233.index deleted file mode 100644 index 19d5b53..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1508644233.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1528680760.index b/.metadata/.plugins/org.eclipse.jdt.core/1528680760.index deleted file mode 100644 index ae69821..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1528680760.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1737447423.index b/.metadata/.plugins/org.eclipse.jdt.core/1737447423.index deleted file mode 100644 index 0ab3d4b..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1737447423.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1770465405.index b/.metadata/.plugins/org.eclipse.jdt.core/1770465405.index deleted file mode 100644 index a89d291..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1770465405.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/185975254.index b/.metadata/.plugins/org.eclipse.jdt.core/185975254.index deleted file mode 100644 index dcfa7fa..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/185975254.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1870255979.index b/.metadata/.plugins/org.eclipse.jdt.core/1870255979.index deleted file mode 100644 index 4e7c5a6..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1870255979.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1923297441.index b/.metadata/.plugins/org.eclipse.jdt.core/1923297441.index deleted file mode 100644 index c5dfdef..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1923297441.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1934142626.index b/.metadata/.plugins/org.eclipse.jdt.core/1934142626.index deleted file mode 100644 index 143d006..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/1934142626.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2089000613.index b/.metadata/.plugins/org.eclipse.jdt.core/2089000613.index deleted file mode 100644 index 0fecfb8..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2089000613.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2161397272.index b/.metadata/.plugins/org.eclipse.jdt.core/2161397272.index deleted file mode 100644 index 66d9fb8..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2161397272.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2216672097.index b/.metadata/.plugins/org.eclipse.jdt.core/2216672097.index deleted file mode 100644 index 3f85484..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2216672097.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2292250293.index b/.metadata/.plugins/org.eclipse.jdt.core/2292250293.index deleted file mode 100644 index db63949..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2292250293.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2345470644.index b/.metadata/.plugins/org.eclipse.jdt.core/2345470644.index deleted file mode 100644 index 3816c53..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2345470644.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2690778029.index b/.metadata/.plugins/org.eclipse.jdt.core/2690778029.index deleted file mode 100644 index 2e537ae..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2690778029.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2899965704.index b/.metadata/.plugins/org.eclipse.jdt.core/2899965704.index deleted file mode 100644 index e594a39..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2899965704.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2959957318.index b/.metadata/.plugins/org.eclipse.jdt.core/2959957318.index deleted file mode 100644 index 7f92335..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/2959957318.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3000975533.index b/.metadata/.plugins/org.eclipse.jdt.core/3000975533.index deleted file mode 100644 index dee50a6..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3000975533.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3089967703.index b/.metadata/.plugins/org.eclipse.jdt.core/3089967703.index deleted file mode 100644 index 37c3176..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3089967703.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3260353738.index b/.metadata/.plugins/org.eclipse.jdt.core/3260353738.index deleted file mode 100644 index d17f1c7..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3260353738.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3349413686.index b/.metadata/.plugins/org.eclipse.jdt.core/3349413686.index deleted file mode 100644 index 4314294..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3349413686.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3403918450.index b/.metadata/.plugins/org.eclipse.jdt.core/3403918450.index deleted file mode 100644 index 4824140..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3403918450.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3414683811.index b/.metadata/.plugins/org.eclipse.jdt.core/3414683811.index deleted file mode 100644 index e43133f..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3414683811.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/348382339.index b/.metadata/.plugins/org.eclipse.jdt.core/348382339.index deleted file mode 100644 index 1afe896..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/348382339.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3499141547.index b/.metadata/.plugins/org.eclipse.jdt.core/3499141547.index deleted file mode 100644 index cd533e4..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3499141547.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3618673065.index b/.metadata/.plugins/org.eclipse.jdt.core/3618673065.index deleted file mode 100644 index 7ba0980..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3618673065.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3699979211.index b/.metadata/.plugins/org.eclipse.jdt.core/3699979211.index deleted file mode 100644 index e41a79b..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3699979211.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3706135349.index b/.metadata/.plugins/org.eclipse.jdt.core/3706135349.index deleted file mode 100644 index 0ab3d4b..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3706135349.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/375642920.index b/.metadata/.plugins/org.eclipse.jdt.core/375642920.index deleted file mode 100644 index 0d50c39..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/375642920.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3917394261.index b/.metadata/.plugins/org.eclipse.jdt.core/3917394261.index deleted file mode 100644 index d525696..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/3917394261.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/4020602821.index b/.metadata/.plugins/org.eclipse.jdt.core/4020602821.index deleted file mode 100644 index 274baa3..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/4020602821.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/452330869.index b/.metadata/.plugins/org.eclipse.jdt.core/452330869.index deleted file mode 100644 index 873c504..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/452330869.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/50372563.index b/.metadata/.plugins/org.eclipse.jdt.core/50372563.index deleted file mode 100644 index 48036e5..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/50372563.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/51467596.index b/.metadata/.plugins/org.eclipse.jdt.core/51467596.index deleted file mode 100644 index b5247b8..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/51467596.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/638224934.index b/.metadata/.plugins/org.eclipse.jdt.core/638224934.index deleted file mode 100644 index 0c52f21..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/638224934.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/678131303.index b/.metadata/.plugins/org.eclipse.jdt.core/678131303.index deleted file mode 100644 index 5ebd324..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/678131303.index and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache deleted file mode 100644 index 593f470..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache deleted file mode 100644 index 265dac2..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps b/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps deleted file mode 100644 index 449eaa2..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt b/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt deleted file mode 100644 index 32e47ed..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt +++ /dev/null @@ -1 +0,0 @@ -INDEX VERSION 1.127 diff --git a/.metadata/.plugins/org.eclipse.jdt.core/invalidArchivesCache b/.metadata/.plugins/org.eclipse.jdt.core/invalidArchivesCache deleted file mode 100644 index 593f470..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/invalidArchivesCache and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt deleted file mode 100644 index 8586397..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt +++ /dev/null @@ -1 +0,0 @@ -java \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache b/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache deleted file mode 100644 index d7e1b92..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt deleted file mode 100644 index cef26f3..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt +++ /dev/null @@ -1,38 +0,0 @@ -INDEX VERSION 1.127+D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\.metadata\.plugins\org.eclipse.jdt.core -4020602821.index -3706135349.index -2161397272.index -185975254.index -2089000613.index -1429456332.index -1528680760.index -1233791618.index -3403918450.index -1934142626.index -3699979211.index -2959957318.index -2292250293.index -2690778029.index -2899965704.index -3089967703.index -1508644233.index -3000975533.index -3349413686.index -1770465405.index -2345470644.index -3260353738.index -51467596.index -50372563.index -348382339.index -375642920.index -1870255979.index -3499141547.index -3414683811.index -1737447423.index -452330869.index -1923297441.index -638224934.index -3618673065.index -678131303.index -3917394261.index -2216672097.index diff --git a/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat deleted file mode 100644 index 8803a1f..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml deleted file mode 100644 index 0c26fde..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.debug.ui/dialog_settings.xml +++ /dev/null @@ -1,14 +0,0 @@ - -
-
- - -
- - - - - -
-
-
diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml b/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml deleted file mode 100644 index e765dd8..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml b/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml deleted file mode 100644 index f2dc5f6..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml deleted file mode 100644 index a4ee3cb..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml deleted file mode 100644 index b425bb5..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml deleted file mode 100644 index 01e8988..0000000 --- a/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml +++ /dev/null @@ -1,89 +0,0 @@ - -
- - - - - - - -
- - - - - -
-
- - - - - -
-
- - - -
-
- -
-
- - - - -
-
- - -
-
-
-
- -
-
- -
-
-
-
- -
-
- - - -
-
- - -
-
- - - - - - - - - - - - - - - - - - - - - -
-
-
-
diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/0.png b/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/0.png deleted file mode 100644 index d198a93..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/0.png and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/1.png b/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/1.png deleted file mode 100644 index a930fe1..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/1.png and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/2.png b/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/2.png deleted file mode 100644 index a6abcd8..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/2.png and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/3.png b/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/3.png deleted file mode 100644 index 476665e..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/3.png and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/4.png b/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/4.png deleted file mode 100644 index a95f608..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/4.png and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/5.png b/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/5.png deleted file mode 100644 index 834bd74..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/5.png and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/6.png b/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/6.png deleted file mode 100644 index 2856a9f..0000000 Binary files a/.metadata/.plugins/org.eclipse.jdt.ui/jdt-images/6.png and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/1508644233.dat b/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/1508644233.dat deleted file mode 100644 index eac0f18..0000000 Binary files a/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/1508644233.dat and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/7/29/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/7/29/refactorings.history deleted file mode 100644 index 37c35e5..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/7/29/refactorings.history +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/7/29/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/7/29/refactorings.index deleted file mode 100644 index 6c53ce2..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/.workspace/2015/7/29/refactorings.index +++ /dev/null @@ -1 +0,0 @@ -1436966989747 Delete resource 'TheButtonAutoFlair' diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/11/48/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/11/48/refactorings.history deleted file mode 100644 index 9959929..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/11/48/refactorings.history +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/11/48/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/11/48/refactorings.index deleted file mode 100644 index 734064c..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/11/48/refactorings.index +++ /dev/null @@ -1,2 +0,0 @@ -1448747636805 Rename method 'AppendPlayerDisplayFlair' -1448747652243 Rename method 'ConfirmUser' diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/12/49/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/12/49/refactorings.history deleted file mode 100644 index 75929d9..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/12/49/refactorings.history +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/12/49/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/12/49/refactorings.index deleted file mode 100644 index 6fd5e22..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/12/49/refactorings.index +++ /dev/null @@ -1,11 +0,0 @@ -1449089015654 Rename resource 'licence.txt' -1449247009743 Move file -1449247024495 Move folder -1449247029089 Move folder -1449247033263 Move folder -1449247073652 Delete element -1449253392509 Move file -1449257439002 Move file -1449259040981 Move file -1449260191910 Delete element -1449262180986 Delete element diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/7/29/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/7/29/refactorings.history deleted file mode 100644 index e000f4e..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/7/29/refactorings.history +++ /dev/null @@ -1,3 +0,0 @@ - - - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/7/29/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/7/29/refactorings.index deleted file mode 100644 index a8676c0..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/7/29/refactorings.index +++ /dev/null @@ -1,3 +0,0 @@ -1436981792569 Move folder -1437034536865 Delete element -1437041052403 Rename type 'CommandKit' diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/32/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/32/refactorings.history deleted file mode 100644 index d388da2..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/32/refactorings.history +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/32/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/32/refactorings.index deleted file mode 100644 index 707fa27..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/32/refactorings.index +++ /dev/null @@ -1 +0,0 @@ -1439082947025 Delete element diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/35/refactorings.history b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/35/refactorings.history deleted file mode 100644 index bd51724..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/35/refactorings.history +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/35/refactorings.index b/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/35/refactorings.index deleted file mode 100644 index e385272..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.core.refactoring/.refactorings/TheButtonAutoFlair/2015/8/35/refactorings.index +++ /dev/null @@ -1 +0,0 @@ -1440800831420 Delete element diff --git a/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml deleted file mode 100644 index a0ee1a7..0000000 --- a/.metadata/.plugins/org.eclipse.ltk.ui.refactoring/dialog_settings.xml +++ /dev/null @@ -1,9 +0,0 @@ - -
-
- - -
-
-
-
diff --git a/.metadata/.plugins/org.eclipse.m2e.core.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.m2e.core.ui/dialog_settings.xml deleted file mode 100644 index 2b78360..0000000 --- a/.metadata/.plugins/org.eclipse.m2e.core.ui/dialog_settings.xml +++ /dev/null @@ -1,47 +0,0 @@ - -
-
-
-
- - - - - - - - -
-
- - - - -
-
- - - - -
-
- - - - - - - - - - - - -
-
- - - - -
-
diff --git a/.metadata/.plugins/org.eclipse.m2e.core/TheButtonAutoFlair.lifecyclemapping b/.metadata/.plugins/org.eclipse.m2e.core/TheButtonAutoFlair.lifecyclemapping deleted file mode 100644 index ef6e026..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/TheButtonAutoFlair.lifecyclemapping and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_0.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_0.cfs deleted file mode 100644 index 10c0c85..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_0.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_0_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_0_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_0_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_1.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_1.cfs deleted file mode 100644 index d32dbba..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_1.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_1_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_1_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_1_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_2.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_2.cfs deleted file mode 100644 index d9c1008..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_2.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_2_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_2_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_2_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_3.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_3.cfs deleted file mode 100644 index 514c166..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_3.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_3_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_3_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_3_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_4.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_4.cfs deleted file mode 100644 index 3537921..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_4.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_4_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_4_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_4_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_5.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_5.cfs deleted file mode 100644 index 2880d34..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_5.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_5_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_5_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_5_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_6.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_6.cfs deleted file mode 100644 index a11f8aa..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_6.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_6_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_6_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_6_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_7.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_7.cfs deleted file mode 100644 index 2cb041f..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_7.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_7_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_7_1.del deleted file mode 100644 index 1b473bd..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_7_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_8.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_8.cfs deleted file mode 100644 index cd34683..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/_8.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/segments.gen b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/segments.gen deleted file mode 100644 index 9b44cac..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/segments.gen and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/segments_a b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/segments_a deleted file mode 100644 index b14d3ec..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/segments_a and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/write.lock b/.metadata/.plugins/org.eclipse.m2e.core/nexus/05b0fe8524860bd73cbb07ef30fb34cc/write.lock deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/_a.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/_a.cfs deleted file mode 100644 index 6f4d3b1..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/_a.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/segments.gen b/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/segments.gen deleted file mode 100644 index 0f09d75..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/segments.gen and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/segments_b b/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/segments_b deleted file mode 100644 index 6bbf79e..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/segments_b and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/write.lock b/.metadata/.plugins/org.eclipse.m2e.core/nexus/22105a57205d73c52610d4dcad1b9155/write.lock deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_k.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_k.cfs deleted file mode 100644 index b6f4c07..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_k.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_k_1.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_k_1.del deleted file mode 100644 index d5508e6..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_k_1.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_l.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_l.cfs deleted file mode 100644 index 72e12a1..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/_l.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/segments.gen b/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/segments.gen deleted file mode 100644 index 957630d..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/segments.gen and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/segments_l b/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/segments_l deleted file mode 100644 index 40c7616..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/segments_l and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/write.lock b/.metadata/.plugins/org.eclipse.m2e.core/nexus/830bc118332e77292949ed1e6d2fabe0/write.lock deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2s.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2s.cfs deleted file mode 100644 index cb89803..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2s.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2s_2.del b/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2s_2.del deleted file mode 100644 index 29cc953..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2s_2.del and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2t.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2t.cfs deleted file mode 100644 index 35451db..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2t.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2u.cfs b/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2u.cfs deleted file mode 100644 index 91ff2b1..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/_2u.cfs and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/segments.gen b/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/segments.gen deleted file mode 100644 index 6405bf8..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/segments.gen and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/segments_2m b/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/segments_2m deleted file mode 100644 index ae5cd0a..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/segments_2m and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/write.lock b/.metadata/.plugins/org.eclipse.m2e.core/nexus/fab537b4c93f73529419b6d1f7adf1ae/write.lock deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser b/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser deleted file mode 100644 index 2340d0c..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.core/workspacestate.properties b/.metadata/.plugins/org.eclipse.m2e.core/workspacestate.properties deleted file mode 100644 index 661d364..0000000 --- a/.metadata/.plugins/org.eclipse.m2e.core/workspacestate.properties +++ /dev/null @@ -1,4 +0,0 @@ -#Fri Dec 04 21:56:30 CET 2015 -tk.sznp\:TheButtonMCPlugin\:jar\:tests\:0.0.1-SNAPSHOT=D\:\\Z - Norbi cucca\\0 Projektek\\TheButtonMCAutoFlairProto\\Spigot plugin\\TheButtonAutoFlair\\target\\test-classes -tk.sznp\:TheButtonMCPlugin\:pom\:\:0.0.1-SNAPSHOT=D\:\\Z - Norbi cucca\\0 Projektek\\TheButtonMCAutoFlairProto\\Spigot plugin\\TheButtonAutoFlair\\pom.xml -tk.sznp\:TheButtonMCPlugin\:jar\:\:0.0.1-SNAPSHOT=D\:\\Z - Norbi cucca\\0 Projektek\\TheButtonMCAutoFlairProto\\Spigot plugin\\TheButtonAutoFlair\\target\\classes diff --git a/.metadata/.plugins/org.eclipse.m2e.jdt/TheButtonAutoFlair.container b/.metadata/.plugins/org.eclipse.m2e.jdt/TheButtonAutoFlair.container deleted file mode 100644 index 42e9428..0000000 Binary files a/.metadata/.plugins/org.eclipse.m2e.jdt/TheButtonAutoFlair.container and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log b/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log deleted file mode 100644 index 52f7fc0..0000000 --- a/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log +++ /dev/null @@ -1,1662 +0,0 @@ -2015-12-04 18:49:29,913 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/2.5/maven-clean-plugin-2.5.jar -2015-12-04 18:49:30,014 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/2.5/maven-clean-plugin-2.5.jar -2015-12-04 18:49:30,534 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.jar -2015-12-04 18:49:30,672 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.jar -2015-12-04 18:49:31,018 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/3.3/maven-compiler-plugin-3.3.jar -2015-12-04 18:49:31,129 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/3.3/maven-compiler-plugin-3.3.jar -2015-12-04 18:49:31,501 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-surefire-plugin/2.12.4/maven-surefire-plugin-2.12.4.jar -2015-12-04 18:49:31,561 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-surefire-plugin/2.12.4/maven-surefire-plugin-2.12.4.jar -2015-12-04 18:49:31,864 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-jar-plugin/2.4/maven-jar-plugin-2.4.jar -2015-12-04 18:49:31,993 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-jar-plugin/2.4/maven-jar-plugin-2.4.jar -2015-12-04 18:49:32,749 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-install-plugin/2.4/maven-install-plugin-2.4.jar -2015-12-04 18:49:32,813 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-install-plugin/2.4/maven-install-plugin-2.4.jar -2015-12-04 18:49:33,116 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-deploy-plugin/2.7/maven-deploy-plugin-2.7.jar -2015-12-04 18:49:33,179 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-deploy-plugin/2.7/maven-deploy-plugin-2.7.jar -2015-12-04 18:49:33,491 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-site-plugin/3.3/maven-site-plugin-3.3.jar -2015-12-04 18:49:33,751 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-site-plugin/3.3/maven-site-plugin-3.3.jar -2015-12-04 18:49:35,431 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/3.3/maven-compiler-plugin-3.3.pom -2015-12-04 18:49:35,491 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-compiler-plugin/3.3/maven-compiler-plugin-3.3.pom -2015-12-04 18:49:35,551 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-plugins/27/maven-plugins-27.pom -2015-12-04 18:49:35,632 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-plugins/27/maven-plugins-27.pom -2015-12-04 18:49:35,687 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/26/maven-parent-26.pom -2015-12-04 18:49:35,790 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/26/maven-parent-26.pom -2015-12-04 18:49:35,850 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/16/apache-16.pom -2015-12-04 18:49:35,917 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/16/apache-16.pom -2015-12-04 18:49:36,034 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.2.1/maven-plugin-api-2.2.1.pom -2015-12-04 18:49:36,077 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.2.1/maven-plugin-api-2.2.1.pom -2015-12-04 18:49:36,123 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven/2.2.1/maven-2.2.1.pom -2015-12-04 18:49:36,197 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven/2.2.1/maven-2.2.1.pom -2015-12-04 18:49:36,246 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/11/maven-parent-11.pom -2015-12-04 18:49:36,335 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/11/maven-parent-11.pom -2015-12-04 18:49:36,384 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/5/apache-5.pom -2015-12-04 18:49:36,431 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/5/apache-5.pom -2015-12-04 18:49:36,487 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.pom -2015-12-04 18:49:36,531 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.pom -2015-12-04 18:49:36,600 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.15/plexus-utils-1.5.15.pom -2015-12-04 18:49:36,649 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.15/plexus-utils-1.5.15.pom -2015-12-04 18:49:36,721 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.2/plexus-2.0.2.pom -2015-12-04 18:49:36,771 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.2/plexus-2.0.2.pom -2015-12-04 18:49:36,823 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.2.1/maven-core-2.2.1.pom -2015-12-04 18:49:36,880 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.2.1/maven-core-2.2.1.pom -2015-12-04 18:49:36,938 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.pom -2015-12-04 18:49:36,981 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.pom -2015-12-04 18:49:37,040 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.pom -2015-12-04 18:49:37,091 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.pom -2015-12-04 18:49:37,142 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.pom -2015-12-04 18:49:37,184 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.pom -2015-12-04 18:49:37,235 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-components/1.1.14/plexus-components-1.1.14.pom -2015-12-04 18:49:37,284 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-components/1.1.14/plexus-components-1.1.14.pom -2015-12-04 18:49:37,335 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.2.1/maven-plugin-parameter-documenter-2.2.1.pom -2015-12-04 18:49:37,384 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.2.1/maven-plugin-parameter-documenter-2.2.1.pom -2015-12-04 18:49:37,442 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/slf4j/slf4j-jdk14/1.5.6/slf4j-jdk14-1.5.6.pom -2015-12-04 18:49:37,487 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/slf4j/slf4j-jdk14/1.5.6/slf4j-jdk14-1.5.6.pom -2015-12-04 18:49:37,538 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/1.5.6/slf4j-parent-1.5.6.pom -2015-12-04 18:49:38,157 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/1.5.6/slf4j-parent-1.5.6.pom -2015-12-04 18:49:38,219 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.5.6/slf4j-api-1.5.6.pom -2015-12-04 18:49:38,502 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.5.6/slf4j-api-1.5.6.pom -2015-12-04 18:49:38,694 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/slf4j/jcl-over-slf4j/1.5.6/jcl-over-slf4j-1.5.6.pom -2015-12-04 18:49:38,772 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/slf4j/jcl-over-slf4j/1.5.6/jcl-over-slf4j-1.5.6.pom -2015-12-04 18:49:38,828 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.pom -2015-12-04 18:49:38,872 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.pom -2015-12-04 18:49:38,931 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.pom -2015-12-04 18:49:38,972 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.pom -2015-12-04 18:49:39,023 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.pom -2015-12-04 18:49:39,069 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.pom -2015-12-04 18:49:39,125 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.pom -2015-12-04 18:49:39,174 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.pom -2015-12-04 18:49:39,232 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.pom -2015-12-04 18:49:39,871 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.pom -2015-12-04 18:49:39,935 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.pom -2015-12-04 18:49:40,185 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.pom -2015-12-04 18:49:40,252 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.pom -2015-12-04 18:49:40,292 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.pom -2015-12-04 18:49:40,343 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.2.1/maven-plugin-descriptor-2.2.1.pom -2015-12-04 18:49:40,397 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.2.1/maven-plugin-descriptor-2.2.1.pom -2015-12-04 18:49:40,459 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.2.1/maven-monitor-2.2.1.pom -2015-12-04 18:49:40,502 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.2.1/maven-monitor-2.2.1.pom -2015-12-04 18:49:40,561 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.pom -2015-12-04 18:49:40,603 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.pom -2015-12-04 18:49:40,664 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/spice/spice-parent/12/spice-parent-12.pom -2015-12-04 18:49:40,707 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/spice/spice-parent/12/spice-parent-12.pom -2015-12-04 18:49:40,769 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/forge/forge-parent/4/forge-parent-4.pom -2015-12-04 18:49:40,816 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/forge/forge-parent/4/forge-parent-4.pom -2015-12-04 18:49:40,867 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.5/plexus-utils-1.5.5.pom -2015-12-04 18:49:40,919 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.5/plexus-utils-1.5.5.pom -2015-12-04 18:49:40,968 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/1.0.11/plexus-1.0.11.pom -2015-12-04 18:49:41,026 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/1.0.11/plexus-1.0.11.pom -2015-12-04 18:49:41,084 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.pom -2015-12-04 18:49:41,128 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.pom -2015-12-04 18:49:41,188 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-toolchain/2.2.1/maven-toolchain-2.2.1.pom -2015-12-04 18:49:41,232 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-toolchain/2.2.1/maven-toolchain-2.2.1.pom -2015-12-04 18:49:41,294 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.pom -2015-12-04 18:49:41,341 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.pom -2015-12-04 18:49:41,393 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-containers/1.0.3/plexus-containers-1.0.3.pom -2015-12-04 18:49:41,438 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-containers/1.0.3/plexus-containers-1.0.3.pom -2015-12-04 18:49:41,493 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/1.0.4/plexus-1.0.4.pom -2015-12-04 18:49:41,537 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/1.0.4/plexus-1.0.4.pom -2015-12-04 18:49:41,590 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/junit/junit/3.8.1/junit-3.8.1.pom -2015-12-04 18:49:41,636 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/junit/junit/3.8.1/junit-3.8.1.pom -2015-12-04 18:49:41,694 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4.pom -2015-12-04 18:49:41,740 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.0.4/plexus-utils-1.0.4.pom -2015-12-04 18:49:41,798 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.pom -2015-12-04 18:49:41,842 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/classworlds/classworlds/1.1-alpha-2/classworlds-1.1-alpha-2.pom -2015-12-04 18:49:41,898 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting-api/2.2.1/maven-reporting-api-2.2.1.pom -2015-12-04 18:49:41,942 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting-api/2.2.1/maven-reporting-api-2.2.1.pom -2015-12-04 18:49:41,994 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting/2.2.1/maven-reporting-2.2.1.pom -2015-12-04 18:49:42,039 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting/2.2.1/maven-reporting-2.2.1.pom -2015-12-04 18:49:42,095 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-sink-api/1.1/doxia-sink-api-1.1.pom -2015-12-04 18:49:42,139 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-sink-api/1.1/doxia-sink-api-1.1.pom -2015-12-04 18:49:42,210 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia/1.1/doxia-1.1.pom -2015-12-04 18:49:42,249 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia/1.1/doxia-1.1.pom -2015-12-04 18:49:42,334 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-logging-api/1.1/doxia-logging-api-1.1.pom -2015-12-04 18:49:42,417 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-logging-api/1.1/doxia-logging-api-1.1.pom -2015-12-04 18:49:42,477 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-30/plexus-container-default-1.0-alpha-30.pom -2015-12-04 18:49:42,518 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-30/plexus-container-default-1.0-alpha-30.pom -2015-12-04 18:49:42,566 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-containers/1.0-alpha-30/plexus-containers-1.0-alpha-30.pom -2015-12-04 18:49:42,628 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-containers/1.0-alpha-30/plexus-containers-1.0-alpha-30.pom -2015-12-04 18:49:42,680 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.4.5/plexus-utils-1.4.5.pom -2015-12-04 18:49:42,721 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.4.5/plexus-utils-1.4.5.pom -2015-12-04 18:49:42,773 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/1.2-alpha-9/plexus-classworlds-1.2-alpha-9.pom -2015-12-04 18:49:42,869 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/1.2-alpha-9/plexus-classworlds-1.2-alpha-9.pom -2015-12-04 18:49:42,921 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/1.0.10/plexus-1.0.10.pom -2015-12-04 18:49:43,022 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/1.0.10/plexus-1.0.10.pom -2015-12-04 18:49:43,072 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.2/commons-cli-1.2.pom -2015-12-04 18:49:43,150 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.2/commons-cli-1.2.pom -2015-12-04 18:49:43,198 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/commons/commons-parent/11/commons-parent-11.pom -2015-12-04 18:49:43,276 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/commons/commons-parent/11/commons-parent-11.pom -2015-12-04 18:49:43,332 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/4/apache-4.pom -2015-12-04 18:49:43,372 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/4/apache-4.pom -2015-12-04 18:49:43,433 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.pom -2015-12-04 18:49:43,480 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.pom -2015-12-04 18:49:43,532 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/classworlds/classworlds/1.1/classworlds-1.1.pom -2015-12-04 18:49:43,574 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/classworlds/classworlds/1.1/classworlds-1.1.pom -2015-12-04 18:49:43,621 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/0.7/maven-shared-utils-0.7.pom -2015-12-04 18:49:43,692 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/0.7/maven-shared-utils-0.7.pom -2015-12-04 18:49:43,740 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/20/maven-shared-components-20.pom -2015-12-04 18:49:43,788 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/20/maven-shared-components-20.pom -2015-12-04 18:49:43,833 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/24/maven-parent-24.pom -2015-12-04 18:49:44,510 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/24/maven-parent-24.pom -2015-12-04 18:49:44,597 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/14/apache-14.pom -2015-12-04 18:49:44,640 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/14/apache-14.pom -2015-12-04 18:49:44,850 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.pom -2015-12-04 18:49:45,148 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.pom -2015-12-04 18:49:45,551 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-incremental/1.1/maven-shared-incremental-1.1.pom -2015-12-04 18:49:45,828 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-incremental/1.1/maven-shared-incremental-1.1.pom -2015-12-04 18:49:45,890 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/19/maven-shared-components-19.pom -2015-12-04 18:49:45,937 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/19/maven-shared-components-19.pom -2015-12-04 18:49:46,014 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/23/maven-parent-23.pom -2015-12-04 18:49:46,080 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/23/maven-parent-23.pom -2015-12-04 18:49:46,151 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/13/apache-13.pom -2015-12-04 18:49:46,203 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/13/apache-13.pom -2015-12-04 18:49:46,263 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/0.1/maven-shared-utils-0.1.pom -2015-12-04 18:49:46,307 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/0.1/maven-shared-utils-0.1.pom -2015-12-04 18:49:46,358 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/18/maven-shared-components-18.pom -2015-12-04 18:49:46,411 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/18/maven-shared-components-18.pom -2015-12-04 18:49:46,463 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/22/maven-parent-22.pom -2015-12-04 18:49:46,553 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/22/maven-parent-22.pom -2015-12-04 18:49:46,626 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/11/apache-11.pom -2015-12-04 18:49:46,669 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/11/apache-11.pom -2015-12-04 18:49:46,729 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.pom -2015-12-04 18:49:46,772 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.pom -2015-12-04 18:49:46,876 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-containers/1.5.5/plexus-containers-1.5.5.pom -2015-12-04 18:49:46,919 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-containers/1.5.5/plexus-containers-1.5.5.pom -2015-12-04 18:49:46,966 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.7/plexus-2.0.7.pom -2015-12-04 18:49:47,262 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.7/plexus-2.0.7.pom -2015-12-04 18:49:47,312 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-api/2.5/plexus-compiler-api-2.5.pom -2015-12-04 18:49:47,356 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-api/2.5/plexus-compiler-api-2.5.pom -2015-12-04 18:49:47,405 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler/2.5/plexus-compiler-2.5.pom -2015-12-04 18:49:47,455 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler/2.5/plexus-compiler-2.5.pom -2015-12-04 18:49:47,510 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-components/1.3.1/plexus-components-1.3.1.pom -2015-12-04 18:49:47,555 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-components/1.3.1/plexus-components-1.3.1.pom -2015-12-04 18:49:47,602 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/3.3.1/plexus-3.3.1.pom -2015-12-04 18:49:47,675 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/3.3.1/plexus-3.3.1.pom -2015-12-04 18:49:47,727 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/spice/spice-parent/17/spice-parent-17.pom -2015-12-04 18:49:47,774 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/spice/spice-parent/17/spice-parent-17.pom -2015-12-04 18:49:47,820 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/forge/forge-parent/10/forge-parent-10.pom -2015-12-04 18:49:47,879 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/forge/forge-parent/10/forge-parent-10.pom -2015-12-04 18:49:47,932 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/3.0.10/plexus-utils-3.0.10.pom -2015-12-04 18:49:47,976 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/3.0.10/plexus-utils-3.0.10.pom -2015-12-04 18:49:48,024 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/3.3/plexus-3.3.pom -2015-12-04 18:49:48,099 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/3.3/plexus-3.3.pom -2015-12-04 18:49:48,157 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-manager/2.5/plexus-compiler-manager-2.5.pom -2015-12-04 18:49:48,206 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-manager/2.5/plexus-compiler-manager-2.5.pom -2015-12-04 18:49:48,263 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-javac/2.5/plexus-compiler-javac-2.5.pom -2015-12-04 18:49:48,306 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-javac/2.5/plexus-compiler-javac-2.5.pom -2015-12-04 18:49:48,359 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compilers/2.5/plexus-compilers-2.5.pom -2015-12-04 18:49:48,403 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compilers/2.5/plexus-compilers-2.5.pom -2015-12-04 18:49:48,491 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.5.5/plexus-container-default-1.5.5.pom -2015-12-04 18:49:48,536 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.5.5/plexus-container-default-1.5.5.pom -2015-12-04 18:49:48,600 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/2.2.2/plexus-classworlds-2.2.2.pom -2015-12-04 18:49:48,647 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/2.2.2/plexus-classworlds-2.2.2.pom -2015-12-04 18:49:48,697 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.3/plexus-2.0.3.pom -2015-12-04 18:49:48,816 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.3/plexus-2.0.3.pom -2015-12-04 18:49:48,876 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/xbean/xbean-reflect/3.4/xbean-reflect-3.4.pom -2015-12-04 18:49:48,927 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/xbean/xbean-reflect/3.4/xbean-reflect-3.4.pom -2015-12-04 18:49:48,982 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/xbean/xbean/3.4/xbean-3.4.pom -2015-12-04 18:49:49,052 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/xbean/xbean/3.4/xbean-3.4.pom -2015-12-04 18:49:49,106 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/log4j/log4j/1.2.12/log4j-1.2.12.pom -2015-12-04 18:49:49,149 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/log4j/log4j/1.2.12/log4j-1.2.12.pom -2015-12-04 18:49:49,201 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.pom -2015-12-04 18:49:49,253 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.pom -2015-12-04 18:49:49,307 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/collections/google-collections/1.0/google-collections-1.0.pom -2015-12-04 18:49:49,352 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/collections/google-collections/1.0/google-collections-1.0.pom -2015-12-04 18:49:49,403 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/google/1/google-1.pom -2015-12-04 18:49:49,446 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/google/1/google-1.pom -2015-12-04 18:49:49,495 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/junit/junit/3.8.2/junit-3.8.2.pom -2015-12-04 18:49:49,541 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/junit/junit/3.8.2/junit-3.8.2.pom -2015-12-04 18:49:49,653 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.2.1/maven-plugin-api-2.2.1.jar -2015-12-04 18:49:49,710 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.2.1/maven-plugin-api-2.2.1.jar -2015-12-04 18:49:49,747 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.jar -2015-12-04 18:49:49,912 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.2.1/maven-artifact-2.2.1.jar -2015-12-04 18:49:49,975 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.15/plexus-utils-1.5.15.jar -2015-12-04 18:49:50,333 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.15/plexus-utils-1.5.15.jar -2015-12-04 18:49:50,369 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.2.1/maven-core-2.2.1.jar -2015-12-04 18:49:50,684 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.2.1/maven-core-2.2.1.jar -2015-12-04 18:49:50,727 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.jar -2015-12-04 18:49:50,843 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.2.1/maven-settings-2.2.1.jar -2015-12-04 18:49:50,885 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.jar -2015-12-04 18:49:51,007 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.jar -2015-12-04 18:49:51,050 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.2.1/maven-plugin-parameter-documenter-2.2.1.jar -2015-12-04 18:49:51,129 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.2.1/maven-plugin-parameter-documenter-2.2.1.jar -2015-12-04 18:49:51,171 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/slf4j/slf4j-jdk14/1.5.6/slf4j-jdk14-1.5.6.jar -2015-12-04 18:49:51,221 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/slf4j/slf4j-jdk14/1.5.6/slf4j-jdk14-1.5.6.jar -2015-12-04 18:49:51,257 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.5.6/slf4j-api-1.5.6.jar -2015-12-04 18:49:51,331 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.5.6/slf4j-api-1.5.6.jar -2015-12-04 18:49:51,368 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/slf4j/jcl-over-slf4j/1.5.6/jcl-over-slf4j-1.5.6.jar -2015-12-04 18:49:51,445 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/slf4j/jcl-over-slf4j/1.5.6/jcl-over-slf4j-1.5.6.jar -2015-12-04 18:49:51,483 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.jar -2015-12-04 18:49:51,580 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.2.1/maven-profile-2.2.1.jar -2015-12-04 18:49:51,644 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.jar -2015-12-04 18:49:51,795 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.2.1/maven-model-2.2.1.jar -2015-12-04 18:49:51,834 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.jar -2015-12-04 18:49:51,913 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.2.1/maven-repository-metadata-2.2.1.jar -2015-12-04 18:49:51,949 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.jar -2015-12-04 18:49:52,010 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.2.1/maven-error-diagnostics-2.2.1.jar -2015-12-04 18:49:52,047 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.jar -2015-12-04 18:49:52,323 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.2.1/maven-project-2.2.1.jar -2015-12-04 18:49:52,383 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.jar -2015-12-04 18:49:52,445 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.2.1/maven-plugin-registry-2.2.1.jar -2015-12-04 18:49:52,484 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.2.1/maven-plugin-descriptor-2.2.1.jar -2015-12-04 18:49:52,585 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.2.1/maven-plugin-descriptor-2.2.1.jar -2015-12-04 18:49:52,625 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.jar -2015-12-04 18:49:52,770 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.2.1/maven-artifact-manager-2.2.1.jar -2015-12-04 18:49:52,835 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar -2015-12-04 18:49:53,351 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar -2015-12-04 18:49:53,406 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.2.1/maven-monitor-2.2.1.jar -2015-12-04 18:49:53,448 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.2.1/maven-monitor-2.2.1.jar -2015-12-04 18:49:53,509 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar -2015-12-04 18:49:53,568 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar -2015-12-04 18:49:53,607 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar -2015-12-04 18:49:53,665 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar -2015-12-04 18:49:53,701 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-toolchain/2.2.1/maven-toolchain-2.2.1.jar -2015-12-04 18:49:53,816 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-toolchain/2.2.1/maven-toolchain-2.2.1.jar -2015-12-04 18:49:53,885 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/0.7/maven-shared-utils-0.7.jar -2015-12-04 18:49:54,159 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/0.7/maven-shared-utils-0.7.jar -2015-12-04 18:49:54,196 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.jar -2015-12-04 18:49:54,287 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.jar -2015-12-04 18:49:54,348 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-incremental/1.1/maven-shared-incremental-1.1.jar -2015-12-04 18:49:54,394 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-incremental/1.1/maven-shared-incremental-1.1.jar -2015-12-04 18:49:54,434 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar -2015-12-04 18:49:54,485 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar -2015-12-04 18:49:54,525 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-api/2.5/plexus-compiler-api-2.5.jar -2015-12-04 18:49:54,605 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-api/2.5/plexus-compiler-api-2.5.jar -2015-12-04 18:49:54,647 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-manager/2.5/plexus-compiler-manager-2.5.jar -2015-12-04 18:49:54,697 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-manager/2.5/plexus-compiler-manager-2.5.jar -2015-12-04 18:49:54,737 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-javac/2.5/plexus-compiler-javac-2.5.jar -2015-12-04 18:49:54,808 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-compiler-javac/2.5/plexus-compiler-javac-2.5.jar -2015-12-04 18:49:54,846 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.5.5/plexus-container-default-1.5.5.jar -2015-12-04 18:49:55,213 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.5.5/plexus-container-default-1.5.5.jar -2015-12-04 18:49:55,275 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/2.2.2/plexus-classworlds-2.2.2.jar -2015-12-04 18:49:55,386 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-classworlds/2.2.2/plexus-classworlds-2.2.2.jar -2015-12-04 18:49:55,423 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/xbean/xbean-reflect/3.4/xbean-reflect-3.4.jar -2015-12-04 18:49:55,663 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/xbean/xbean-reflect/3.4/xbean-reflect-3.4.jar -2015-12-04 18:49:55,725 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/log4j/log4j/1.2.12/log4j-1.2.12.jar -2015-12-04 18:49:56,281 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/log4j/log4j/1.2.12/log4j-1.2.12.jar -2015-12-04 18:49:56,318 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.jar -2015-12-04 18:49:56,426 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/commons-logging/commons-logging-api/1.1/commons-logging-api-1.1.jar -2015-12-04 18:49:56,487 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/collections/google-collections/1.0/google-collections-1.0.jar -2015-12-04 18:49:57,468 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/collections/google-collections/1.0/google-collections-1.0.jar -2015-12-04 18:49:57,529 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/junit/junit/3.8.2/junit-3.8.2.jar -2015-12-04 18:49:57,724 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/junit/junit/3.8.2/junit-3.8.2.jar -2015-12-04 18:50:12,541 [Worker-12] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: TheButtonMCPlugin:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 18:50:13,026 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.pom -2015-12-04 18:50:13,087 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-resources-plugin/2.6/maven-resources-plugin-2.6.pom -2015-12-04 18:50:13,138 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-plugins/23/maven-plugins-23.pom -2015-12-04 18:50:13,231 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-plugins/23/maven-plugins-23.pom -2015-12-04 18:50:13,822 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.0.6/maven-plugin-api-2.0.6.pom -2015-12-04 18:50:13,865 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.0.6/maven-plugin-api-2.0.6.pom -2015-12-04 18:50:13,944 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven/2.0.6/maven-2.0.6.pom -2015-12-04 18:50:14,030 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven/2.0.6/maven-2.0.6.pom -2015-12-04 18:50:14,175 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/5/maven-parent-5.pom -2015-12-04 18:50:14,266 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/5/maven-parent-5.pom -2015-12-04 18:50:14,336 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/3/apache-3.pom -2015-12-04 18:50:14,381 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/3/apache-3.pom -2015-12-04 18:50:14,434 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.0.6/maven-project-2.0.6.pom -2015-12-04 18:50:14,476 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.0.6/maven-project-2.0.6.pom -2015-12-04 18:50:14,541 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.0.6/maven-settings-2.0.6.pom -2015-12-04 18:50:14,588 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.0.6/maven-settings-2.0.6.pom -2015-12-04 18:50:14,656 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.0.6/maven-model-2.0.6.pom -2015-12-04 18:50:14,701 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.0.6/maven-model-2.0.6.pom -2015-12-04 18:50:14,786 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.4.1/plexus-utils-1.4.1.pom -2015-12-04 18:50:14,826 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.4.1/plexus-utils-1.4.1.pom -2015-12-04 18:50:14,881 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.0.6/maven-profile-2.0.6.pom -2015-12-04 18:50:14,923 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.0.6/maven-profile-2.0.6.pom -2015-12-04 18:50:14,979 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.0.6/maven-artifact-manager-2.0.6.pom -2015-12-04 18:50:15,022 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.0.6/maven-artifact-manager-2.0.6.pom -2015-12-04 18:50:15,079 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.0.6/maven-repository-metadata-2.0.6.pom -2015-12-04 18:50:15,124 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.0.6/maven-repository-metadata-2.0.6.pom -2015-12-04 18:50:15,179 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.0.6/maven-artifact-2.0.6.pom -2015-12-04 18:50:15,222 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.0.6/maven-artifact-2.0.6.pom -2015-12-04 18:50:15,274 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.0.6/maven-plugin-registry-2.0.6.pom -2015-12-04 18:50:15,317 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.0.6/maven-plugin-registry-2.0.6.pom -2015-12-04 18:50:15,371 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.0.6/maven-core-2.0.6.pom -2015-12-04 18:50:15,416 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.0.6/maven-core-2.0.6.pom -2015-12-04 18:50:15,469 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.0.6/maven-plugin-parameter-documenter-2.0.6.pom -2015-12-04 18:50:15,511 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.0.6/maven-plugin-parameter-documenter-2.0.6.pom -2015-12-04 18:50:15,565 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting-api/2.0.6/maven-reporting-api-2.0.6.pom -2015-12-04 18:50:15,609 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting-api/2.0.6/maven-reporting-api-2.0.6.pom -2015-12-04 18:50:15,658 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting/2.0.6/maven-reporting-2.0.6.pom -2015-12-04 18:50:15,701 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting/2.0.6/maven-reporting-2.0.6.pom -2015-12-04 18:50:15,750 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-sink-api/1.0-alpha-7/doxia-sink-api-1.0-alpha-7.pom -2015-12-04 18:50:15,791 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-sink-api/1.0-alpha-7/doxia-sink-api-1.0-alpha-7.pom -2015-12-04 18:50:15,845 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia/1.0-alpha-7/doxia-1.0-alpha-7.pom -2015-12-04 18:50:15,887 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia/1.0-alpha-7/doxia-1.0-alpha-7.pom -2015-12-04 18:50:15,938 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.0.6/maven-error-diagnostics-2.0.6.pom -2015-12-04 18:50:15,979 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.0.6/maven-error-diagnostics-2.0.6.pom -2015-12-04 18:50:16,029 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.0/commons-cli-1.0.pom -2015-12-04 18:50:16,069 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.0/commons-cli-1.0.pom -2015-12-04 18:50:16,120 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.0.6/maven-plugin-descriptor-2.0.6.pom -2015-12-04 18:50:16,165 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.0.6/maven-plugin-descriptor-2.0.6.pom -2015-12-04 18:50:16,216 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.0.6/maven-monitor-2.0.6.pom -2015-12-04 18:50:16,258 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.0.6/maven-monitor-2.0.6.pom -2015-12-04 18:50:16,312 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/2.0.5/plexus-utils-2.0.5.pom -2015-12-04 18:50:16,396 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/2.0.5/plexus-utils-2.0.5.pom -2015-12-04 18:50:16,444 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.6/plexus-2.0.6.pom -2015-12-04 18:50:16,579 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus/2.0.6/plexus-2.0.6.pom -2015-12-04 18:50:16,647 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-filtering/1.1/maven-filtering-1.1.pom -2015-12-04 18:50:16,689 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-filtering/1.1/maven-filtering-1.1.pom -2015-12-04 18:50:16,735 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/17/maven-shared-components-17.pom -2015-12-04 18:50:16,800 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/17/maven-shared-components-17.pom -2015-12-04 18:50:16,864 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/21/maven-parent-21.pom -2015-12-04 18:50:16,926 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/21/maven-parent-21.pom -2015-12-04 18:50:16,971 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/10/apache-10.pom -2015-12-04 18:50:17,031 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/10/apache-10.pom -2015-12-04 18:50:17,081 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.12/plexus-interpolation-1.12.pom -2015-12-04 18:50:17,123 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.12/plexus-interpolation-1.12.pom -2015-12-04 18:50:17,181 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-build-api/0.0.4/plexus-build-api-0.0.4.pom -2015-12-04 18:50:17,222 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-build-api/0.0.4/plexus-build-api-0.0.4.pom -2015-12-04 18:50:17,273 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/spice/spice-parent/10/spice-parent-10.pom -2015-12-04 18:50:17,318 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/spice/spice-parent/10/spice-parent-10.pom -2015-12-04 18:50:17,369 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/forge/forge-parent/3/forge-parent-3.pom -2015-12-04 18:50:17,410 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/forge/forge-parent/3/forge-parent-3.pom -2015-12-04 18:50:17,458 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.8/plexus-utils-1.5.8.pom -2015-12-04 18:50:17,511 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.8/plexus-utils-1.5.8.pom -2015-12-04 18:50:17,565 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.13/plexus-interpolation-1.13.pom -2015-12-04 18:50:17,628 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.13/plexus-interpolation-1.13.pom -2015-12-04 18:50:17,699 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-components/1.1.15/plexus-components-1.1.15.pom -2015-12-04 18:50:17,740 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-components/1.1.15/plexus-components-1.1.15.pom -2015-12-04 18:50:17,829 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.0.6/maven-plugin-api-2.0.6.jar -2015-12-04 18:50:17,893 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-api/2.0.6/maven-plugin-api-2.0.6.jar -2015-12-04 18:50:17,929 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.0.6/maven-project-2.0.6.jar -2015-12-04 18:50:18,145 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-project/2.0.6/maven-project-2.0.6.jar -2015-12-04 18:50:18,181 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.0.6/maven-profile-2.0.6.jar -2015-12-04 18:50:18,277 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-profile/2.0.6/maven-profile-2.0.6.jar -2015-12-04 18:50:18,342 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.0.6/maven-artifact-manager-2.0.6.jar -2015-12-04 18:50:18,471 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact-manager/2.0.6/maven-artifact-manager-2.0.6.jar -2015-12-04 18:50:18,535 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.0.6/maven-plugin-registry-2.0.6.jar -2015-12-04 18:50:18,599 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-registry/2.0.6/maven-plugin-registry-2.0.6.jar -2015-12-04 18:50:18,638 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.0.6/maven-core-2.0.6.jar -2015-12-04 18:50:18,912 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-core/2.0.6/maven-core-2.0.6.jar -2015-12-04 18:50:18,954 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.0.6/maven-plugin-parameter-documenter-2.0.6.jar -2015-12-04 18:50:19,029 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-parameter-documenter/2.0.6/maven-plugin-parameter-documenter-2.0.6.jar -2015-12-04 18:50:19,084 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting-api/2.0.6/maven-reporting-api-2.0.6.jar -2015-12-04 18:50:19,128 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/reporting/maven-reporting-api/2.0.6/maven-reporting-api-2.0.6.jar -2015-12-04 18:50:19,169 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-sink-api/1.0-alpha-7/doxia-sink-api-1.0-alpha-7.jar -2015-12-04 18:50:19,220 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/doxia/doxia-sink-api/1.0-alpha-7/doxia-sink-api-1.0-alpha-7.jar -2015-12-04 18:50:19,284 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.0.6/maven-repository-metadata-2.0.6.jar -2015-12-04 18:50:19,340 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-repository-metadata/2.0.6/maven-repository-metadata-2.0.6.jar -2015-12-04 18:50:19,380 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.0.6/maven-error-diagnostics-2.0.6.jar -2015-12-04 18:50:19,487 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-error-diagnostics/2.0.6/maven-error-diagnostics-2.0.6.jar -2015-12-04 18:50:19,529 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.0/commons-cli-1.0.jar -2015-12-04 18:50:19,615 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.0/commons-cli-1.0.jar -2015-12-04 18:50:19,655 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.0.6/maven-plugin-descriptor-2.0.6.jar -2015-12-04 18:50:19,754 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-plugin-descriptor/2.0.6/maven-plugin-descriptor-2.0.6.jar -2015-12-04 18:50:19,812 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.jar -2015-12-04 18:50:19,877 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.jar -2015-12-04 18:50:19,917 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/classworlds/classworlds/1.1/classworlds-1.1.jar -2015-12-04 18:50:20,020 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/classworlds/classworlds/1.1/classworlds-1.1.jar -2015-12-04 18:50:20,059 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.0.6/maven-artifact-2.0.6.jar -2015-12-04 18:50:20,233 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-artifact/2.0.6/maven-artifact-2.0.6.jar -2015-12-04 18:50:20,273 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.0.6/maven-settings-2.0.6.jar -2015-12-04 18:50:20,421 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-settings/2.0.6/maven-settings-2.0.6.jar -2015-12-04 18:50:20,461 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.0.6/maven-model-2.0.6.jar -2015-12-04 18:50:20,634 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-model/2.0.6/maven-model-2.0.6.jar -2015-12-04 18:50:20,674 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.0.6/maven-monitor-2.0.6.jar -2015-12-04 18:50:20,733 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/maven-monitor/2.0.6/maven-monitor-2.0.6.jar -2015-12-04 18:50:20,774 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar -2015-12-04 18:50:21,111 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-container-default/1.0-alpha-9-stable-1/plexus-container-default-1.0-alpha-9-stable-1.jar -2015-12-04 18:50:21,150 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/junit/junit/3.8.1/junit-3.8.1.jar -2015-12-04 18:50:21,374 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/junit/junit/3.8.1/junit-3.8.1.jar -2015-12-04 18:50:21,411 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/2.0.5/plexus-utils-2.0.5.jar -2015-12-04 18:50:21,789 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/2.0.5/plexus-utils-2.0.5.jar -2015-12-04 18:50:21,826 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-filtering/1.1/maven-filtering-1.1.jar -2015-12-04 18:50:21,931 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-filtering/1.1/maven-filtering-1.1.jar -2015-12-04 18:50:21,967 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-build-api/0.0.4/plexus-build-api-0.0.4.jar -2015-12-04 18:50:22,019 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/plexus/plexus-build-api/0.0.4/plexus-build-api-0.0.4.jar -2015-12-04 18:50:22,055 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.13/plexus-interpolation-1.13.jar -2015-12-04 18:50:22,185 [Worker-12] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-interpolation/1.13/plexus-interpolation-1.13.jar -2015-12-04 18:50:31,690 [Worker-11] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:50:31,711 [Worker-11] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 18:50:31,725 [Worker-11] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:50:31,725 [Worker-11] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 18:50:31,736 [Worker-12] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Adding source folder /TheButtonAutoFlair/src -2015-12-04 18:50:31,737 [Worker-12] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Resources folder /TheButtonAutoFlair/src overlaps with sources folder /TheButtonAutoFlair/src -2015-12-04 18:50:31,746 [Worker-12] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Not adding source folder /TheButtonAutoFlair/src/test/java because it overlaps with /TheButtonAutoFlair/src -2015-12-04 18:50:31,908 [Worker-12] INFO o.e.m.c.i.p.ProjectConfigurationManager - Update started -2015-12-04 18:50:32,741 [Worker-12] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: TheButtonMCPlugin:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 18:50:34,085 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:50:34,092 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 18:50:34,108 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:50:34,109 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 18:50:34,139 [Worker-12] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Adding source folder /TheButtonAutoFlair/src -2015-12-04 18:50:34,140 [Worker-12] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Resources folder /TheButtonAutoFlair/src overlaps with sources folder /TheButtonAutoFlair/src -2015-12-04 18:50:34,145 [Worker-12] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Not adding source folder /TheButtonAutoFlair/src/test/java because it overlaps with /TheButtonAutoFlair/src -2015-12-04 18:50:34,265 [Worker-12] INFO o.e.m.c.i.p.ProjectConfigurationManager - Update completed: 2 sec -2015-12-04 18:50:35,484 [Worker-12] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:50:35,486 [Worker-12] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 18:50:35,489 [Worker-12] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:50:35,490 [Worker-12] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 18:53:17,340 [Worker-20] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 18:53:18,208 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:53:18,211 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 18:53:18,213 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:53:18,214 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 18:55:18,043 [Worker-18] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 18:55:18,058 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:55:18,155 [Worker-21] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:55:18,180 [Worker-21] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:55:18,420 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:55:18,423 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 18:55:18,427 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:55:18,428 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 18:55:50,038 [Worker-19] ERROR o.e.m.c.u.i.actions.OpenPomAction - Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -org.eclipse.core.runtime.CoreException: Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:776) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:1) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:743) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:720) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openPomEditor(OpenPomAction.java:243) [org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openEditor(OpenPomAction.java:218) [org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction$1.run(OpenPomAction.java:129) [org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar:na] - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) [org.eclipse.core.jobs_3.6.1.v20141014-1248.jar:na] -2015-12-04 18:56:44,643 [main] ERROR o.e.m.c.u.i.actions.OpenPomAction - Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT -org.eclipse.core.runtime.CoreException: Could not resolve artifact org.spigotmc:spigot-api:pom:1.8.7-R0.1-SNAPSHOT - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:776) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:1) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:743) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:720) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openPomEditor(OpenPomAction.java:243) [org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openEditor(OpenPomAction.java:218) [org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.editor.pom.DependencyTreePage$3.open(DependencyTreePage.java:315) [org.eclipse.m2e.editor_1.6.2.20150902-0002.jar:na] - at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:853) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.6.200.v20130402-1505.jar:na] - at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:50) [org.eclipse.ui.workbench_3.106.2.v20150204-1030.jar:na] - at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:178) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:850) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1142) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1249) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:278) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:272) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:313) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] - at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) [org.eclipse.swt.win32.win32.x86_64_3.103.2.v20150203-1351.jar:na] - at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353) [org.eclipse.swt.win32.win32.x86_64_3.103.2.v20150203-1351.jar:na] - at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1061) [org.eclipse.swt.win32.win32.x86_64_3.103.2.v20150203-1351.jar:na] - at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4172) [org.eclipse.swt.win32.win32.x86_64_3.103.2.v20150203-1351.jar:na] - at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761) [org.eclipse.swt.win32.win32.x86_64_3.103.2.v20150203-1351.jar:na] - at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151) [org.eclipse.e4.ui.workbench.swt_0.12.100.v20141126-1150.jar:na] - at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) [org.eclipse.core.databinding.observable_1.4.1.v20140210-1835.jar:na] - at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032) [org.eclipse.e4.ui.workbench.swt_0.12.100.v20141126-1150.jar:na] - at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148) [org.eclipse.e4.ui.workbench_1.2.2.v20141212-1259.jar:na] - at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636) [org.eclipse.ui.workbench_3.106.2.v20150204-1030.jar:na] - at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) [org.eclipse.core.databinding.observable_1.4.1.v20140210-1835.jar:na] - at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579) [org.eclipse.ui.workbench_3.106.2.v20150204-1030.jar:na] - at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) [org.eclipse.ui.workbench_3.106.2.v20150204-1030.jar:na] - at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135) [org.eclipse.ui.ide.application_1.0.501.v20141111-1238.jar:na] - at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) [org.eclipse.equinox.app_1.3.200.v20130910-1609.jar:na] - at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134) [org.eclipse.osgi_3.10.2.v20150203-1939.jar:na] - at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) [org.eclipse.osgi_3.10.2.v20150203-1939.jar:na] - at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380) [org.eclipse.osgi_3.10.2.v20150203-1939.jar:na] - at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235) [org.eclipse.osgi_3.10.2.v20150203-1939.jar:na] - at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_66] - at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_66] - at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[na:1.8.0_66] - at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.8.0_66] - at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648) [org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar:na] - at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603) [org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar:na] - at org.eclipse.equinox.launcher.Main.run(Main.java:1465) [org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar:na] -2015-12-04 18:58:45,620 [Worker-15] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 18:58:45,626 [Worker-15] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:58:45,714 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:58:45,732 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:58:45,963 [Worker-15] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:58:45,967 [Worker-15] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 18:58:45,978 [Worker-15] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:58:45,979 [Worker-15] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 18:58:48,301 [Worker-23] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 18:58:48,307 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:58:48,416 [Worker-24] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:58:48,436 [Worker-24] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar:1.8.7-R0.1-SNAPSHOT is missing, no dependency information available -2015-12-04 18:58:48,686 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:58:48,688 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 18:58:48,690 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 18:58:48,691 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:00:27,258 [Worker-19] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:00:27,262 [Worker-19] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:00:27,276 [Worker-19] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:00:27,277 [Worker-19] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:03:13,115 [Worker-23] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:03:13,573 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/spigotmc/spigot-api/1.8.8-R0.1-SNAPSHOT/maven-metadata.xml -2015-12-04 19:03:13,696 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/spigotmc/spigot-api/1.8.8-R0.1-SNAPSHOT/spigot-api-1.8.8-R0.1-20151123.012015-28.pom -2015-12-04 19:03:13,766 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/sonatype/oss/oss-parent/9/oss-parent-9.pom -2015-12-04 19:03:14,053 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/9/oss-parent-9.pom -2015-12-04 19:03:14,118 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/9/oss-parent-9.pom -2015-12-04 19:03:14,430 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/commons-lang/commons-lang/2.6/commons-lang-2.6.pom -2015-12-04 19:03:14,468 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/commons-lang/commons-lang/2.6/commons-lang-2.6.pom -2015-12-04 19:03:14,548 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/commons-lang/commons-lang/2.6/commons-lang-2.6.pom -2015-12-04 19:03:14,754 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/apache/commons/commons-parent/17/commons-parent-17.pom -2015-12-04 19:03:14,817 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/commons/commons-parent/17/commons-parent-17.pom -2015-12-04 19:03:14,889 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/commons/commons-parent/17/commons-parent-17.pom -2015-12-04 19:03:15,109 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/apache/apache/7/apache-7.pom -2015-12-04 19:03:15,170 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/apache/7/apache-7.pom -2015-12-04 19:03:15,212 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/apache/7/apache-7.pom -2015-12-04 19:03:15,369 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.pom -2015-12-04 19:03:15,415 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.pom -2015-12-04 19:03:15,456 [Worker-23] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.pom -2015-12-04 19:03:15,660 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/junit/junit/4.10/junit-4.10.pom -2015-12-04 19:03:15,703 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/junit/junit/4.10/junit-4.10.pom -2015-12-04 19:03:15,748 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/junit/junit/4.10/junit-4.10.pom -2015-12-04 19:03:15,964 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.pom -2015-12-04 19:03:16,005 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.pom -2015-12-04 19:03:16,048 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.pom -2015-12-04 19:03:16,245 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/hamcrest/hamcrest-parent/1.1/hamcrest-parent-1.1.pom -2015-12-04 19:03:16,330 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-parent/1.1/hamcrest-parent-1.1.pom -2015-12-04 19:03:16,374 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-parent/1.1/hamcrest-parent-1.1.pom -2015-12-04 19:03:16,591 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/guava/guava/17.0/guava-17.0.pom -2015-12-04 19:03:16,640 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/guava/guava/17.0/guava-17.0.pom -2015-12-04 19:03:16,685 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/guava/guava/17.0/guava-17.0.pom -2015-12-04 19:03:16,902 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/guava/guava-parent/17.0/guava-parent-17.0.pom -2015-12-04 19:03:16,954 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/guava/guava-parent/17.0/guava-parent-17.0.pom -2015-12-04 19:03:16,997 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/guava/guava-parent/17.0/guava-parent-17.0.pom -2015-12-04 19:03:17,197 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/sonatype/oss/oss-parent/7/oss-parent-7.pom -2015-12-04 19:03:17,243 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/7/oss-parent-7.pom -2015-12-04 19:03:17,300 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/7/oss-parent-7.pom -2015-12-04 19:03:17,534 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/code/gson/gson/2.2.4/gson-2.2.4.pom -2015-12-04 19:03:17,606 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/code/gson/gson/2.2.4/gson-2.2.4.pom -2015-12-04 19:03:17,648 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/code/gson/gson/2.2.4/gson-2.2.4.pom -2015-12-04 19:03:17,962 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/avaje/ebean/2.8.1/ebean-2.8.1.pom -2015-12-04 19:03:18,057 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/avaje/ebean/2.8.1/ebean-2.8.1.pom -2015-12-04 19:03:18,098 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/avaje/ebean/2.8.1/ebean-2.8.1.pom -2015-12-04 19:03:18,307 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/sonatype/oss/oss-parent/5/oss-parent-5.pom -2015-12-04 19:03:18,353 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/5/oss-parent-5.pom -2015-12-04 19:03:18,483 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/5/oss-parent-5.pom -2015-12-04 19:03:19,368 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/javax/persistence/persistence-api/1.0/persistence-api-1.0.pom -2015-12-04 19:03:19,659 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/javax/persistence/persistence-api/1.0/persistence-api-1.0.pom -2015-12-04 19:03:19,832 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/javax/persistence/persistence-api/1.0/persistence-api-1.0.pom -2015-12-04 19:03:20,832 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/yaml/snakeyaml/1.15/snakeyaml-1.15.pom -2015-12-04 19:03:21,405 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/1.15/snakeyaml-1.15.pom -2015-12-04 19:03:21,756 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/1.15/snakeyaml-1.15.pom -2015-12-04 19:03:22,275 [DefaultMetadataResolver-0-0] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/maven-metadata.xml -2015-12-04 19:03:23,212 [DefaultMetadataResolver-0-1] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/maven-metadata.xml -2015-12-04 19:03:23,350 [DefaultMetadataResolver-0-1] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/maven-metadata.xml -2015-12-04 19:03:23,570 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/bungeecord-chat-1.8-20151118.214305-100.pom -2015-12-04 19:03:23,707 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/bungeecord-chat-1.8-20151118.214305-100.pom -2015-12-04 19:03:23,844 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/bungeecord-chat-1.8-20151118.214305-100.pom -2015-12-04 19:03:24,011 [DefaultMetadataResolver-1-1] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-parent/1.8-SNAPSHOT/maven-metadata.xml -2015-12-04 19:03:24,070 [DefaultMetadataResolver-1-0] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/net/md-5/bungeecord-parent/1.8-SNAPSHOT/maven-metadata.xml -2015-12-04 19:03:24,147 [DefaultMetadataResolver-1-1] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-parent/1.8-SNAPSHOT/maven-metadata.xml -2015-12-04 19:03:24,292 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-parent/1.8-SNAPSHOT/bungeecord-parent-1.8-20151118.214252-100.pom -2015-12-04 19:03:24,430 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-parent/1.8-SNAPSHOT/bungeecord-parent-1.8-20151118.214252-100.pom -2015-12-04 19:03:24,638 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/code/gson/gson/2.3.1/gson-2.3.1.pom -2015-12-04 19:03:24,686 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/code/gson/gson/2.3.1/gson-2.3.1.pom -2015-12-04 19:03:24,744 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/code/gson/gson/2.3.1/gson-2.3.1.pom -2015-12-04 19:03:24,954 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/guava/guava/18.0/guava-18.0.pom -2015-12-04 19:03:25,018 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/guava/guava/18.0/guava-18.0.pom -2015-12-04 19:03:25,066 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/guava/guava/18.0/guava-18.0.pom -2015-12-04 19:03:25,259 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/guava/guava-parent/18.0/guava-parent-18.0.pom -2015-12-04 19:03:25,311 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/guava/guava-parent/18.0/guava-parent-18.0.pom -2015-12-04 19:03:25,375 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/guava/guava-parent/18.0/guava-parent-18.0.pom -2015-12-04 19:03:25,543 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/spigotmc/spigot-api/1.8.8-R0.1-SNAPSHOT/spigot-api-1.8.8-R0.1-20151123.012015-28.jar -2015-12-04 19:03:26,915 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/spigotmc/spigot-api/1.8.8-R0.1-SNAPSHOT/spigot-api-1.8.8-R0.1-20151123.012015-28.jar -2015-12-04 19:03:26,986 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/commons-lang/commons-lang/2.6/commons-lang-2.6.jar -2015-12-04 19:03:27,187 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.jar -2015-12-04 19:03:27,393 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/junit/junit/4.10/junit-4.10.jar -2015-12-04 19:03:27,600 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar -2015-12-04 19:03:27,810 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/guava/guava/17.0/guava-17.0.jar -2015-12-04 19:03:28,010 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar -2015-12-04 19:03:28,210 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/avaje/ebean/2.8.1/ebean-2.8.1.jar -2015-12-04 19:03:28,417 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar -2015-12-04 19:03:28,633 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/yaml/snakeyaml/1.15/snakeyaml-1.15.jar -2015-12-04 19:03:28,963 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/commons-lang/commons-lang/2.6/commons-lang-2.6.jar -2015-12-04 19:03:29,442 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/commons-lang/commons-lang/2.6/commons-lang-2.6.jar -2015-12-04 19:03:29,504 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.jar -2015-12-04 19:03:29,556 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.jar -2015-12-04 19:03:29,619 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/junit/junit/4.10/junit-4.10.jar -2015-12-04 19:03:30,020 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/junit/junit/4.10/junit-4.10.jar -2015-12-04 19:03:30,055 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar -2015-12-04 19:03:30,214 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/hamcrest/hamcrest-core/1.1/hamcrest-core-1.1.jar -2015-12-04 19:03:30,251 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/guava/guava/17.0/guava-17.0.jar -2015-12-04 19:03:33,692 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/guava/guava/17.0/guava-17.0.jar -2015-12-04 19:03:33,731 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar -2015-12-04 19:03:34,061 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar -2015-12-04 19:03:34,136 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/avaje/ebean/2.8.1/ebean-2.8.1.jar -2015-12-04 19:03:36,980 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/avaje/ebean/2.8.1/ebean-2.8.1.jar -2015-12-04 19:03:37,020 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar -2015-12-04 19:03:37,161 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/javax/persistence/persistence-api/1.0/persistence-api-1.0.jar -2015-12-04 19:03:37,197 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/1.15/snakeyaml-1.15.jar -2015-12-04 19:03:37,641 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/1.15/snakeyaml-1.15.jar -2015-12-04 19:03:42,689 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/bungeecord-chat-1.8-20151118.214305-100.jar -2015-12-04 19:03:43,085 [Worker-18] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://oss.sonatype.org/content/repositories/snapshots/net/md-5/bungeecord-chat/1.8-SNAPSHOT/bungeecord-chat-1.8-20151118.214305-100.jar -2015-12-04 19:03:44,132 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:03:44,135 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:03:44,137 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:03:44,138 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:03:45,513 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:03:45,516 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:03:45,528 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:03:45,528 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:11:24,386 [Worker-27] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:11:24,982 [Worker-27] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:11:24,985 [Worker-27] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:11:24,989 [Worker-27] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:11:24,990 [Worker-27] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:12:07,062 [Worker-29] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:12:07,675 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:12:07,678 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:12:07,681 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:12:07,682 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:12:22,540 [Worker-35] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:12:23,125 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:12:23,127 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:12:23,130 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:12:23,131 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:12:24,459 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:12:24,462 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:12:24,472 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:12:24,473 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:13:43,163 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:13:43,166 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:13:43,170 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:13:43,171 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:16:41,211 [Worker-5] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:16:41,235 [Worker-5] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:16:41,248 [Worker-5] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:16:41,254 [Worker-5] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:20:13,388 [ModalContext] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:20:14,438 [ModalContext] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:20:14,442 [ModalContext] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:20:14,449 [ModalContext] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:20:14,450 [ModalContext] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:20:46,218 [Worker-6] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:20:46,589 [Worker-0] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/htmlcleaner/htmlcleaner/2.16/htmlcleaner-2.16.pom -2015-12-04 19:20:47,058 [Worker-0] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/htmlcleaner/htmlcleaner/2.16/htmlcleaner-2.16.pom -2015-12-04 19:20:47,062 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available -2015-12-04 19:20:47,068 [Worker-6] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available -2015-12-04 19:20:47,304 [Worker-0] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/htmlcleaner/htmlcleaner/2.16/htmlcleaner-2.16.jar -2015-12-04 19:20:47,632 [Worker-0] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/htmlcleaner/htmlcleaner/2.16/htmlcleaner-2.16.jar -2015-12-04 19:20:48,105 [Worker-6] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:20:48,108 [Worker-6] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:20:48,111 [Worker-6] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:20:48,114 [Worker-6] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:21:11,999 [Worker-7] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available -2015-12-04 19:21:12,775 [Worker-4] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:21:12,920 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available -2015-12-04 19:21:13,435 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:13,438 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:21:13,441 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:13,442 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:21:14,633 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available -2015-12-04 19:21:14,669 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:14,670 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:21:14,672 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:14,673 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:21:22,585 [Worker-0] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:21:22,705 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for htmlcleaner:htmlcleaner:jar:2.16 is missing, no dependency information available -2015-12-04 19:21:23,139 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:23,142 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:21:23,144 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:23,145 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:21:41,707 [Worker-3] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 19:21:42,311 [Worker-3] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:42,344 [Worker-3] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:21:42,347 [Worker-3] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:42,348 [Worker-3] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:21:44,316 [Worker-3] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:44,328 [Worker-3] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:21:44,340 [Worker-3] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:21:44,341 [Worker-3] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:22:10,338 [Worker-7] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:22:10,340 [Worker-7] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:22:10,344 [Worker-7] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:22:10,345 [Worker-7] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:23:12,761 [Worker-7] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:23:12,762 [Worker-7] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 19:23:12,764 [Worker-7] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:23:12,764 [Worker-7] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:23:38,735 [Worker-8] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:23:38,739 [Worker-8] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:23:38,758 [Worker-8] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:23:38,761 [Worker-8] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 19:25:24,731 [Worker-8] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:25:24,734 [Worker-8] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 19:25:24,740 [Worker-8] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 19:25:24,741 [Worker-8] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:16:56,565 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:16:56,571 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:16:56,575 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:16:56,576 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:17:04,872 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:17:04,875 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:17:04,882 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:17:04,883 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:17:37,162 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:17:37,166 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:17:37,168 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:17:37,170 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:17:59,143 [Worker-24] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:17:59,146 [Worker-24] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:17:59,147 [Worker-24] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:17:59,148 [Worker-24] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:18:11,749 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:18:11,764 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:18:11,767 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:18:11,768 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:22:50,840 [Worker-25] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:22:50,843 [Worker-25] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:22:50,847 [Worker-25] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:22:50,848 [Worker-25] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:30:39,150 [Worker-27] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:30:39,151 [Worker-27] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:30:39,152 [Worker-27] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:30:39,154 [Worker-27] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:31:33,707 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:31:33,710 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:31:33,718 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:31:33,719 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:31:53,794 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:31:53,795 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:31:53,797 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:31:53,798 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:32:34,244 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:32:34,245 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:32:34,246 [Worker-29] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:32:34,247 [Worker-29] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:36:08,746 [Worker-30] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:36:08,747 [Worker-30] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:36:08,749 [Worker-30] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:36:08,749 [Worker-30] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:48:41,820 [ModalContext] ERROR o.e.m.c.i.p.r.ProjectRegistryManager - Could not read pom.xml -org.eclipse.core.runtime.CoreException: Could not read pom.xml - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:565) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:574) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refreshPhase2(ProjectRegistryManager.java:541) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:497) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:350) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:297) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.getProjectFacade(MavenBuilder.java:154) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:89) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.6.200.v20130402-1505.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.6.200.v20130402-1505.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:401) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.resources.Project$1.run(Project.java:618) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2313) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.resources.Project.build(Project.java:114) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.buildProjects(JarFileExportOperation.java:1159) [org.eclipse.jdt.ui_3.10.2.v20141014-1419.jar:na] - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.singleRun(JarFileExportOperation.java:1006) [org.eclipse.jdt.ui_3.10.2.v20141014-1419.jar:na] - at org.eclipse.jdt.internal.ui.jarpackager.JarFileExportOperation.execute(JarFileExportOperation.java:987) [org.eclipse.jdt.ui_3.10.2.v20141014-1419.jar:na] - at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:106) [org.eclipse.ui.ide_3.10.2.v20141118-1227.jar:na] - at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2313) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:118) [org.eclipse.ui.ide_3.10.2.v20141118-1227.jar:na] - at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122) [org.eclipse.jface_3.10.2.v20141021-1035.jar:na] -Caused by: org.apache.maven.model.io.ModelParseException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:130) ~[maven-model-builder-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:94) ~[maven-model-builder-3.3.3.jar:3.3.3] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:563) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - ... 32 common frames omitted -Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.checkFieldWithDuplicate(MavenXpp3Reader.java:114) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Reader.java:2237) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:3807) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:557) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:125) ~[maven-model-builder-3.3.3.jar:3.3.3] - ... 34 common frames omitted -2015-12-04 20:48:43,903 [Worker-41] ERROR o.e.m.c.i.p.r.ProjectRegistryManager - Could not read pom.xml -org.eclipse.core.runtime.CoreException: Could not read pom.xml - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:565) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:574) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refreshPhase2(ProjectRegistryManager.java:541) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:497) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:350) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.project.registry.ProjectRegistryManager.refresh(ProjectRegistryManager.java:297) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.getProjectFacade(MavenBuilder.java:154) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:89) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200) [org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.6.200.v20130402-1505.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.6.200.v20130402-1505.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241) [org.eclipse.core.resources_3.9.1.v20140825-1431.jar:na] - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) [org.eclipse.core.jobs_3.6.1.v20141014-1248.jar:na] -Caused by: org.apache.maven.model.io.ModelParseException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:130) ~[maven-model-builder-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:94) ~[maven-model-builder-3.3.3.jar:3.3.3] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.readModel(MavenImpl.java:563) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - ... 24 common frames omitted -Caused by: org.codehaus.plexus.util.xml.pull.XmlPullParserException: Duplicated tag: 'build' (position: START_TAG seen ...\r\n ... @44:10) - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.checkFieldWithDuplicate(MavenXpp3Reader.java:114) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.parseModel(MavenXpp3Reader.java:2237) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:3807) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.xpp3.MavenXpp3Reader.read(MavenXpp3Reader.java:557) ~[maven-model-3.3.3.jar:3.3.3] - at org.apache.maven.model.io.DefaultModelReader.read(DefaultModelReader.java:125) ~[maven-model-builder-3.3.3.jar:3.3.3] - ... 26 common frames omitted -2015-12-04 20:49:22,907 [Worker-40] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloading https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-shade-plugin/2.4.2/maven-shade-plugin-2.4.2.jar -2015-12-04 20:49:23,623 [Worker-40] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-shade-plugin/2.4.2/maven-shade-plugin-2.4.2.jar -2015-12-04 20:49:24,806 [Worker-40] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 20:49:25,634 [Worker-40] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:49:25,637 [Worker-40] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:49:25,638 [Worker-40] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:49:25,639 [Worker-40] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:49:28,667 [Worker-37] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:49:28,672 [Worker-37] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:49:28,683 [Worker-37] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:49:28,684 [Worker-37] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:51:21,311 [Worker-41] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 20:51:21,843 [Worker-41] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:51:21,846 [Worker-41] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:51:21,850 [Worker-41] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:51:21,851 [Worker-41] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:56:08,783 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:56:08,785 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:56:08,787 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:56:08,788 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:56:31,718 [Worker-45] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:56:31,720 [Worker-45] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:56:31,721 [Worker-45] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:56:31,722 [Worker-45] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:57:18,365 [Worker-45] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:57:18,366 [Worker-45] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:57:18,368 [Worker-45] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:57:18,369 [Worker-45] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:57:21,175 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:57:21,176 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 20:57:21,178 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:57:21,179 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 20:59:55,337 [Worker-45] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:59:55,340 [Worker-45] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 20:59:55,353 [Worker-45] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 20:59:55,354 [Worker-45] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:04:46,552 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:04:46,555 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:04:46,557 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:04:46,558 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:07:43,286 [Worker-52] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:07:43,293 [Worker-52] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:07:43,296 [Worker-52] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:07:43,311 [Worker-52] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:07:57,407 [Worker-44] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:07:57,410 [Worker-44] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:07:57,411 [Worker-44] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:07:57,412 [Worker-44] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:10:39,898 [Worker-50] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:10:39,901 [Worker-50] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:10:39,903 [Worker-50] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:10:39,904 [Worker-50] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:15:40,994 [Worker-53] INFO o.e.m.c.i.p.ProjectConfigurationManager - Update started -2015-12-04 21:15:41,751 [Worker-53] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:15:42,947 [Worker-53] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Adding source folder /TheButtonAutoFlair/src -2015-12-04 21:15:42,948 [Worker-53] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Resources folder /TheButtonAutoFlair/src overlaps with sources folder /TheButtonAutoFlair/src -2015-12-04 21:15:42,949 [Worker-53] INFO o.e.m.j.i.AbstractJavaProjectConfigurator - Not adding source folder /TheButtonAutoFlair/src/test/java because it overlaps with /TheButtonAutoFlair/src -2015-12-04 21:15:43,337 [Worker-53] INFO o.e.m.c.i.p.ProjectConfigurationManager - Update completed: 2 sec -2015-12-04 21:15:43,800 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:15:43,804 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:15:43,818 [Worker-46] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:15:43,819 [Worker-46] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:16:32,381 [Worker-44] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:16:32,385 [Worker-44] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:16:32,389 [Worker-44] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:16:32,390 [Worker-44] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:16:42,779 [Worker-55] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:16:42,782 [Worker-55] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:16:42,786 [Worker-55] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:16:42,787 [Worker-55] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:20:39,443 [Worker-56] ERROR o.e.m.c.u.i.actions.OpenPomAction - Could not resolve artifact htmlcleaner:htmlcleaner:pom:2.16 -org.eclipse.core.runtime.CoreException: Could not resolve artifact htmlcleaner:htmlcleaner:pom:2.16 - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:776) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl$5.call(MavenImpl.java:1) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:743) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.internal.embedder.MavenImpl.resolve(MavenImpl.java:720) ~[org.eclipse.m2e.core_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openPomEditor(OpenPomAction.java:243) [org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.core.ui.internal.actions.OpenPomAction.openEditor(OpenPomAction.java:218) [org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar:na] - at org.eclipse.m2e.editor.xml.PomHyperlinkDetector$6$1.run(PomHyperlinkDetector.java:616) [org.eclipse.m2e.editor.xml_1.6.2.20150902-0002.jar:na] - at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) [org.eclipse.core.jobs_3.6.1.v20141014-1248.jar:na] -2015-12-04 21:20:49,116 [Worker-59] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:20:50,009 [Worker-59] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:20:50,011 [Worker-59] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:20:50,023 [Worker-59] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:20:50,025 [Worker-59] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:22:06,104 [Worker-60] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:22:06,752 [Worker-60] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:22:06,754 [Worker-60] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:22:06,759 [Worker-60] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:22:06,760 [Worker-60] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:22:08,169 [Worker-60] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:22:08,171 [Worker-60] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:22:08,183 [Worker-60] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:22:08,184 [Worker-60] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:22:50,057 [Worker-61] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:22:50,717 [Worker-61] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:22:50,726 [Worker-61] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:22:50,737 [Worker-61] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:22:50,738 [Worker-61] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:39:07,967 [ModalContext] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:39:08,915 [ModalContext] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:39:08,918 [ModalContext] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:39:08,929 [ModalContext] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:39:08,930 [ModalContext] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:40:22,018 [Worker-76] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:40:23,453 [Worker-76] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:23,456 [Worker-76] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:40:23,493 [Worker-76] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:23,494 [Worker-76] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:40:43,147 [Worker-78] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:40:43,742 [Worker-78] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:43,745 [Worker-78] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:40:43,749 [Worker-78] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:43,750 [Worker-78] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:40:45,578 [Worker-79] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:40:46,251 [Worker-79] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:46,255 [Worker-79] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:40:46,258 [Worker-79] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:46,259 [Worker-79] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:40:53,084 [Worker-74] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:40:53,689 [Worker-74] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:53,692 [Worker-74] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:40:53,725 [Worker-74] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:53,726 [Worker-74] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:40:55,167 [Worker-78] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:55,170 [Worker-78] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:40:55,181 [Worker-78] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:40:55,182 [Worker-78] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:41:19,932 [Worker-71] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:41:20,618 [Worker-77] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://hub.spigotmc.org/nexus/content/repositories/snapshots/org/spigotmc/spigot-api//spigot-api-.pom -2015-12-04 21:41:21,111 [Worker-77] INFO o.e.m.c.i.e.AbstractTransferListenerAdapter - Downloaded https://repo.maven.apache.org/maven2/org/spigotmc/spigot-api//spigot-api-.pom -2015-12-04 21:41:21,113 [Worker-77] WARN o.e.m.c.i.embedder.EclipseLogger - The POM for org.spigotmc:spigot-api:jar: is missing, no dependency information available -2015-12-04 21:42:23,965 [Worker-80] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:42:24,529 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:42:24,532 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:42:24,552 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:42:24,553 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:42:25,847 [Worker-64] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:42:25,850 [Worker-64] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:42:25,876 [Worker-64] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:42:25,876 [Worker-64] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:42:35,185 [Worker-80] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:42:35,820 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:42:35,823 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:42:35,826 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:42:35,827 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:49:41,401 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:49:41,402 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:49:41,403 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:49:41,403 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:50:38,947 [Worker-88] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:38,950 [Worker-88] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:50:38,960 [Worker-88] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:38,961 [Worker-88] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:50:43,654 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:43,663 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:50:43,665 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:43,666 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:50:46,877 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:46,879 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:50:46,881 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:46,881 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:50:50,823 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:50,825 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:50:50,827 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:50:50,827 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:51:44,506 [Worker-89] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:51:44,509 [Worker-89] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:51:44,511 [Worker-89] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:51:44,512 [Worker-89] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:52:47,266 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:52:47,269 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:52:47,272 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:52:47,273 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:53:23,536 [Worker-88] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:23,539 [Worker-88] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:53:23,541 [Worker-88] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:23,541 [Worker-88] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:53:38,590 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:38,593 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:53:38,594 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:38,595 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:53:41,614 [Worker-89] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:41,616 [Worker-89] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:53:41,618 [Worker-89] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:41,619 [Worker-89] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:53:49,777 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:49,779 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:53:49,781 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:53:49,782 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:54:12,527 [Worker-91] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:54:12,529 [Worker-91] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:54:12,531 [Worker-91] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:54:12,532 [Worker-91] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:56:30,836 [Worker-87] INFO o.e.m.c.i.l.LifecycleMappingFactory - Using org.eclipse.m2e.jdt.JarLifecycleMapping lifecycle mapping for MavenProject: tk.sznp:TheButtonMCPlugin:0.0.1-SNAPSHOT @ D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\pom.xml. -2015-12-04 21:56:31,779 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:56:31,782 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:56:31,785 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:56:31,786 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:56:52,402 [Worker-77] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:56:52,405 [Worker-77] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:56:52,417 [Worker-77] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:56:52,418 [Worker-77] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:57:14,441 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:57:14,444 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:57:14,447 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:57:14,448 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:57:48,226 [Worker-89] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:57:48,227 [Worker-89] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 21:57:48,228 [Worker-89] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:57:48,229 [Worker-89] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 21:58:10,193 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:58:10,196 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 21:58:10,197 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 21:58:10,198 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:07:16,564 [Worker-96] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:07:16,567 [Worker-96] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:07:16,569 [Worker-96] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:07:16,570 [Worker-96] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:09:55,751 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:09:55,753 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:09:55,755 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:09:55,759 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:10:20,010 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:10:20,012 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:10:20,014 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:10:20,015 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:10:21,128 [Worker-104] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:10:21,131 [Worker-104] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:10:21,132 [Worker-104] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:10:21,133 [Worker-104] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:12:56,290 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:12:56,293 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:12:56,294 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:12:56,295 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:13:18,020 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:18,022 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:13:18,024 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:18,024 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:13:22,655 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:22,672 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:13:22,674 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:22,675 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:13:28,001 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:28,004 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:13:28,007 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:28,008 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:13:31,668 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:31,671 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:13:31,672 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:31,673 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:13:33,225 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:33,227 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:13:33,228 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:33,229 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:13:35,749 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:35,752 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:13:35,754 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:13:35,755 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:14:22,266 [Worker-98] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:14:22,269 [Worker-98] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:14:22,270 [Worker-98] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:14:22,271 [Worker-98] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:15:21,225 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:15:21,227 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:15:21,228 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:15:21,236 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:17:52,207 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:17:52,299 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:17:52,301 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:17:52,302 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:18:09,588 [Worker-107] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:18:09,591 [Worker-107] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:18:09,593 [Worker-107] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:18:09,594 [Worker-107] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:18:25,430 [Worker-107] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:18:25,432 [Worker-107] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:18:25,435 [Worker-107] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:18:25,436 [Worker-107] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:18:34,047 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:18:34,050 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:18:34,051 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:18:34,052 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:21:03,941 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:03,944 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:21:03,945 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:03,946 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:21:13,394 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:13,396 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:21:13,397 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:13,398 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:21:17,520 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:17,523 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:21:17,524 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:17,525 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:21:24,535 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:24,538 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:21:24,539 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:24,540 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:21:32,731 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:32,734 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:21:32,736 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:32,739 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:21:46,908 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:46,911 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:21:46,912 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:46,912 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:21:53,525 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:53,528 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:21:53,530 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:21:53,531 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:22:05,040 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:22:05,042 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:22:05,043 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:22:05,044 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:22:13,589 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:22:13,591 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:22:13,592 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:22:13,593 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:23:47,614 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:23:47,616 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:23:47,618 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:23:47,619 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:23:52,172 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:23:52,175 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:23:52,176 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:23:52,177 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:24:31,567 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:24:31,569 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:24:31,571 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:24:31,572 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:26:08,955 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:26:08,957 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:26:08,959 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:26:08,960 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:39:23,493 [Worker-121] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:39:23,496 [Worker-121] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:39:23,498 [Worker-121] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:39:23,499 [Worker-121] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:39:29,700 [Worker-119] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:39:29,702 [Worker-119] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:39:29,704 [Worker-119] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:39:29,704 [Worker-119] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:43:10,025 [Worker-125] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:43:10,036 [Worker-125] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 22:43:10,038 [Worker-125] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:43:10,038 [Worker-125] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:45:28,086 [Worker-123] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:45:28,088 [Worker-123] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:45:28,090 [Worker-123] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:45:28,090 [Worker-123] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:45:34,057 [Worker-127] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:45:34,060 [Worker-127] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:45:34,061 [Worker-127] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:45:34,062 [Worker-127] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 22:45:35,151 [Worker-131] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:45:35,153 [Worker-131] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 22:45:35,155 [Worker-131] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 22:45:35,156 [Worker-131] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:05:36,242 [Worker-141] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:05:36,246 [Worker-141] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:05:36,247 [Worker-141] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:05:36,248 [Worker-141] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:20:47,063 [Worker-155] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:20:47,067 [Worker-155] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:20:47,068 [Worker-155] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:20:47,069 [Worker-155] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:30:12,744 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:30:12,769 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:30:12,776 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:30:12,777 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:30:40,379 [Worker-1] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:30:40,394 [Worker-1] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:30:40,398 [Worker-1] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:30:40,399 [Worker-1] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:43:18,903 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:43:18,904 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 0 resource -2015-12-04 23:43:18,906 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:43:18,907 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:45:57,784 [Worker-21] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:45:57,787 [Worker-21] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:45:57,789 [Worker-21] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:45:57,790 [Worker-21] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:47:06,633 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:47:06,636 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:47:06,638 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:47:06,639 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:47:43,260 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:47:43,263 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:47:43,265 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:47:43,266 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:47:56,932 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:47:56,935 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:47:56,937 [Worker-20] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:47:56,938 [Worker-20] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:48:07,311 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:48:07,314 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:48:07,317 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:48:07,318 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-04 23:48:10,333 [Worker-14] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:48:10,336 [Worker-14] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-04 23:48:10,338 [Worker-14] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-04 23:48:10,339 [Worker-14] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:09:58,538 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:09:58,588 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:09:58,618 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:09:58,618 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:10:00,039 [Worker-9] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:00,102 [Worker-9] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:10:00,112 [Worker-9] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:00,112 [Worker-9] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:10:15,382 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:15,392 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:10:15,392 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:15,392 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:10:16,604 [Worker-9] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:16,604 [Worker-9] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:10:16,604 [Worker-9] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:16,614 [Worker-9] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:10:25,851 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:25,854 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:10:25,856 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:10:25,857 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:20:44,813 [Worker-13] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:20:44,816 [Worker-13] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:20:44,819 [Worker-13] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:20:44,820 [Worker-13] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:21:13,697 [Worker-14] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:13,701 [Worker-14] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:21:13,707 [Worker-14] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:13,708 [Worker-14] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:21:20,333 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:20,335 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:21:20,339 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:20,340 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:21:21,821 [Worker-11] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:21,825 [Worker-11] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:21:21,827 [Worker-11] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:21,827 [Worker-11] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:21:29,611 [Worker-14] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:29,614 [Worker-14] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:21:29,616 [Worker-14] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:29,617 [Worker-14] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:21:33,694 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:33,697 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:21:33,700 [Worker-17] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:33,700 [Worker-17] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:21:37,798 [Worker-19] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:37,801 [Worker-19] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:21:37,804 [Worker-19] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:21:37,805 [Worker-19] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:25:35,368 [Worker-21] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:25:35,372 [Worker-21] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:25:35,375 [Worker-21] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:25:35,376 [Worker-21] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:25:47,343 [Worker-13] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:25:47,346 [Worker-13] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:25:47,347 [Worker-13] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:25:47,348 [Worker-13] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 15:26:02,269 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:26:02,272 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 15:26:02,274 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 15:26:02,274 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-05 22:47:47,859 [Worker-8] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 22:47:48,215 [Worker-8] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-05 22:47:48,355 [Worker-8] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-05 22:47:48,356 [Worker-8] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-09 20:43:25,193 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-09 20:43:25,230 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-09 20:43:25,257 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-09 20:43:25,258 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-09 20:43:27,557 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-09 20:43:27,588 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-09 20:43:27,593 [Worker-0] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-09 20:43:27,594 [Worker-0] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-09 20:43:29,066 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-09 20:43:29,069 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-09 20:43:29,072 [Worker-4] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-09 20:43:29,073 [Worker-4] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 22:47:51,420 [Worker-1] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 22:47:51,466 [Worker-1] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 22:47:51,501 [Worker-1] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 22:47:51,502 [Worker-1] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:15:29,649 [Worker-24] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:15:29,658 [Worker-24] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:15:29,661 [Worker-24] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:15:29,662 [Worker-24] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:16:46,383 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:16:46,386 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:16:46,388 [Worker-18] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:16:46,389 [Worker-18] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:18:04,390 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:18:04,424 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:18:04,429 [Worker-23] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:18:04,430 [Worker-23] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:39:23,141 [Worker-28] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:39:23,193 [Worker-28] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:39:23,196 [Worker-28] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:39:23,197 [Worker-28] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:39:31,231 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:39:31,236 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:39:31,238 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:39:31,239 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:39:45,705 [Worker-37] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:39:45,707 [Worker-37] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:39:45,710 [Worker-37] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:39:45,710 [Worker-37] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:40:20,360 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:40:20,363 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:40:20,364 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:40:20,365 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:40:21,499 [Worker-31] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:40:21,502 [Worker-31] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:40:21,503 [Worker-31] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:40:21,504 [Worker-31] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:42:09,153 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:09,157 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:42:09,159 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:09,159 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:42:15,454 [Worker-37] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:15,457 [Worker-37] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:42:15,458 [Worker-37] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:15,459 [Worker-37] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:42:17,056 [Worker-28] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:17,059 [Worker-28] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:42:17,062 [Worker-28] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:17,062 [Worker-28] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:42:34,856 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:34,860 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:42:34,862 [Worker-35] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:34,863 [Worker-35] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-18 23:42:37,056 [Worker-31] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:37,059 [Worker-31] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-18 23:42:37,060 [Worker-31] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-18 23:42:37,061 [Worker-31] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:13:44,560 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:13:44,592 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:13:44,592 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:13:44,592 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:13:49,490 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:13:49,490 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:13:49,506 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:13:49,506 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:15:22,930 [Worker-79] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:15:22,930 [Worker-79] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:15:22,930 [Worker-79] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:15:22,930 [Worker-79] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:15:26,446 [Worker-75] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:15:26,446 [Worker-75] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:15:26,462 [Worker-75] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:15:26,462 [Worker-75] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:15:50,762 [Worker-77] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:15:50,762 [Worker-77] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:15:50,778 [Worker-77] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:15:50,778 [Worker-77] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:16:29,381 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:16:29,381 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:16:29,381 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:16:29,381 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:17:40,556 [Worker-75] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:17:40,556 [Worker-75] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:17:40,556 [Worker-75] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:17:40,556 [Worker-75] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:18:18,610 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:18:18,610 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:18:18,610 [Worker-80] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:18:18,610 [Worker-80] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:18:20,172 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:18:20,172 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:18:20,172 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:18:20,172 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:18:30,770 [Worker-75] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:18:30,770 [Worker-75] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:18:30,770 [Worker-75] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:18:30,770 [Worker-75] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:19:45,890 [Worker-84] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:19:45,890 [Worker-84] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:19:45,890 [Worker-84] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:19:45,890 [Worker-84] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:20:58,882 [Worker-84] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:20:58,897 [Worker-84] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:20:58,897 [Worker-84] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:20:58,897 [Worker-84] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:31:13,566 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:31:13,566 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:31:13,566 [Worker-83] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:31:13,566 [Worker-83] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:33:35,254 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:33:35,254 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:33:35,254 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:33:35,254 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:34:07,890 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:34:07,890 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:34:07,890 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:34:07,890 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:34:35,365 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:34:35,365 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:34:35,365 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:34:35,365 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:34:39,826 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:34:39,826 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:34:39,826 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:34:39,826 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:36:20,441 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:36:20,441 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:36:20,456 [Worker-90] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:36:20,456 [Worker-90] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:37:38,999 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:37:39,002 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:37:39,004 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:37:39,004 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:38:11,294 [Worker-91] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:38:11,297 [Worker-91] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:38:11,300 [Worker-91] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:38:11,301 [Worker-91] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:38:24,122 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:38:24,124 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:38:24,125 [Worker-86] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:38:24,126 [Worker-86] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:38:48,499 [Worker-85] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:38:48,501 [Worker-85] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:38:48,503 [Worker-85] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:38:48,504 [Worker-85] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:39:01,033 [Worker-88] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:39:01,035 [Worker-88] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:39:01,036 [Worker-88] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:39:01,037 [Worker-88] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:40:34,659 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:40:34,662 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:40:34,664 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:40:34,664 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:40:51,076 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:40:51,079 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:40:51,081 [Worker-82] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:40:51,081 [Worker-82] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:40:57,294 [Worker-93] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:40:57,297 [Worker-93] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:40:57,299 [Worker-93] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:40:57,300 [Worker-93] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:41:23,315 [Worker-91] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:41:23,318 [Worker-91] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:41:23,320 [Worker-91] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:41:23,320 [Worker-91] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 12:41:26,102 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:41:26,104 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 12:41:26,107 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 12:41:26,108 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:09:02,194 [Worker-94] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:02,197 [Worker-94] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:09:02,199 [Worker-94] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:02,200 [Worker-94] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:09:26,128 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:26,130 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:09:26,137 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:26,138 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:09:52,697 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:52,699 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:09:52,701 [Worker-87] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:52,702 [Worker-87] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:09:56,988 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:56,991 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:09:56,992 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:09:56,993 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:10:19,663 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:10:19,666 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:10:19,668 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:10:19,669 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:10:41,065 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:10:41,067 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:10:41,070 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:10:41,071 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:11:05,901 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:05,903 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:11:05,905 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:05,906 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:11:09,395 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:09,398 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:11:09,401 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:09,401 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:11:34,221 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:34,223 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:11:34,225 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:34,225 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:11:38,178 [Worker-94] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:38,180 [Worker-94] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:11:38,182 [Worker-94] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:38,183 [Worker-94] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:11:39,586 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:39,589 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:11:39,590 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:11:39,591 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:12:08,071 [Worker-104] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:08,073 [Worker-104] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:12:08,075 [Worker-104] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:08,075 [Worker-104] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:12:34,486 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:34,489 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:12:34,490 [Worker-101] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:34,491 [Worker-101] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:12:35,583 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:35,586 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:12:35,587 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:35,588 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:12:54,763 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:54,765 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:12:54,767 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:12:54,768 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:13:03,352 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:03,354 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:13:03,356 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:03,357 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:13:10,418 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:10,421 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:13:10,423 [Worker-99] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:10,424 [Worker-99] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:13:40,494 [Worker-102] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:40,497 [Worker-102] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:13:40,498 [Worker-102] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:40,499 [Worker-102] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:13:59,644 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:59,647 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:13:59,649 [Worker-100] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:13:59,650 [Worker-100] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:14:26,373 [Worker-98] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:14:26,375 [Worker-98] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:14:26,377 [Worker-98] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:14:26,378 [Worker-98] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:17:34,301 [Worker-102] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:17:34,303 [Worker-102] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:17:34,305 [Worker-102] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:17:34,307 [Worker-102] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:18:12,376 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:18:12,379 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:18:12,382 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:18:12,382 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:18:23,998 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:18:24,001 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:18:24,003 [Worker-105] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:18:24,003 [Worker-105] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:22:31,352 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:31,355 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:22:31,356 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:31,357 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:22:32,702 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:32,704 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:22:32,705 [Worker-109] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:32,706 [Worker-109] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:22:42,165 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:42,168 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:22:42,170 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:42,170 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:22:48,430 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:48,433 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:22:48,437 [Worker-110] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:48,438 [Worker-110] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:22:59,182 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:59,185 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:22:59,186 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:22:59,187 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:23:12,683 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:23:12,685 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:23:12,687 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:23:12,688 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:27:22,358 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:27:22,361 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:27:22,362 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:27:22,363 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:28:23,756 [Worker-114] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:28:23,758 [Worker-114] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:28:23,760 [Worker-114] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:28:23,760 [Worker-114] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:29:10,484 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:10,486 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:29:10,488 [Worker-106] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:10,488 [Worker-106] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:29:23,446 [Worker-114] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:23,448 [Worker-114] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:29:23,449 [Worker-114] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:23,449 [Worker-114] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:29:32,163 [Worker-113] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:32,166 [Worker-113] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:29:32,167 [Worker-113] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:32,168 [Worker-113] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:29:36,304 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:36,306 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:29:36,308 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:36,308 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:29:38,423 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:38,425 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:29:38,427 [Worker-108] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:38,428 [Worker-108] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:29:43,697 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:43,699 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:29:43,701 [Worker-103] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:29:43,701 [Worker-103] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:30:49,810 [Worker-113] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:30:49,812 [Worker-113] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:30:49,814 [Worker-113] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:30:49,814 [Worker-113] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:33:56,802 [Worker-117] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:33:56,805 [Worker-117] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:33:56,807 [Worker-117] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:33:56,808 [Worker-117] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:34:07,749 [Worker-119] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:34:07,752 [Worker-119] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:34:07,754 [Worker-119] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:34:07,754 [Worker-119] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources -2015-12-19 13:35:30,537 [Worker-119] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:35:30,539 [Worker-119] INFO o.e.m.c.i.embedder.EclipseLogger - Copying 1 resource -2015-12-19 13:35:30,540 [Worker-119] WARN o.e.m.c.i.embedder.EclipseLogger - Using platform encoding (Cp1250 actually) to copy filtered resources, i.e. build is platform dependent! -2015-12-19 13:35:30,541 [Worker-119] INFO o.e.m.c.i.embedder.EclipseLogger - skip non existing resourceDirectory D:\Z - Norbi cucca\0 Projektek\TheButtonMCAutoFlairProto\Spigot plugin\TheButtonAutoFlair\src\test\resources diff --git a/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.6.2.20150902-0002.xml b/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.6.2.20150902-0002.xml deleted file mode 100644 index e33758c..0000000 --- a/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.6.2.20150902-0002.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - %date [%thread] %-5level %logger{35} - %msg%n - - - OFF - - - - - ${org.eclipse.m2e.log.dir}/0.log - - ${org.eclipse.m2e.log.dir}/%i.log - 1 - 10 - - - 100MB - - - %date [%thread] %-5level %logger{35} - %msg%n - - - - - - WARN - - - - - - - - - - - - - - - diff --git a/.metadata/.plugins/org.eclipse.mylyn.tasks.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.mylyn.tasks.ui/dialog_settings.xml deleted file mode 100644 index 9e1d9ed..0000000 --- a/.metadata/.plugins/org.eclipse.mylyn.tasks.ui/dialog_settings.xml +++ /dev/null @@ -1,18 +0,0 @@ - -
-
- - - - - - -
- - - - - -
-
-
diff --git a/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties b/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties deleted file mode 100644 index 9be39ca..0000000 --- a/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties +++ /dev/null @@ -1,2 +0,0 @@ -#Cached timestamps -#Sat Dec 12 23:02:54 CET 2015 diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.contributions.1 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.contributions.1 deleted file mode 100644 index fe6d53e..0000000 Binary files a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.contributions.1 and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.contributors.1 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.contributors.1 deleted file mode 100644 index 01838df..0000000 Binary files a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.contributors.1 and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.extraData.1 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.extraData.1 deleted file mode 100644 index 72c7bfd..0000000 Binary files a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.extraData.1 and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.mainData.1 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.mainData.1 deleted file mode 100644 index ad9aeb1..0000000 Binary files a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.mainData.1 and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTable.7 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTable.7 deleted file mode 100644 index dde617f..0000000 --- a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTable.7 +++ /dev/null @@ -1,10 +0,0 @@ -#safe table -#Fri Dec 04 23:20:59 CET 2015 -.contributors=0 -.table=0 -.mainData=0 -.namespaces=0 -.orphans=0 -.extraData=0 -.contributions=0 -.crc9793898e.v1 diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTable.8 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTable.8 deleted file mode 100644 index c9dd71b..0000000 --- a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTable.8 +++ /dev/null @@ -1,10 +0,0 @@ -#safe table -#Fri Dec 04 23:21:02 CET 2015 -.contributors=1 -.table=1 -.mainData=1 -.namespaces=1 -.orphans=1 -.extraData=1 -.contributions=1 -.crc68d5bb08.v1 diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTableLock b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.manager/.fileTableLock deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.namespaces.1 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.namespaces.1 deleted file mode 100644 index dcb169b..0000000 Binary files a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.namespaces.1 and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.orphans.1 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.orphans.1 deleted file mode 100644 index 9b48e83..0000000 Binary files a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.orphans.1 and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.table.1 b/.metadata/.plugins/org.eclipse.pde.core/.extensions/.table.1 deleted file mode 100644 index 0fe6685..0000000 Binary files a/.metadata/.plugins/org.eclipse.pde.core/.extensions/.table.1 and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.pde.core/.local_targets/1449259517199.target b/.metadata/.plugins/org.eclipse.pde.core/.local_targets/1449259517199.target deleted file mode 100644 index 8208402..0000000 --- a/.metadata/.plugins/org.eclipse.pde.core/.local_targets/1449259517199.target +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - -win32 -win32 -x86_64 -en_US - - --Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx512m - - diff --git a/.metadata/.plugins/org.eclipse.pde.core/SavedExternalPluginList.txt b/.metadata/.plugins/org.eclipse.pde.core/SavedExternalPluginList.txt deleted file mode 100644 index 3ff2e3f..0000000 --- a/.metadata/.plugins/org.eclipse.pde.core/SavedExternalPluginList.txt +++ /dev/null @@ -1,849 +0,0 @@ -# List of external plug-in models previously loaded. Timestamp: 1449259565010 -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/ch.qos.logback.classic_1.0.7.v20121108-1250.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/ch.qos.logback.core_1.0.7.v20121108-1250.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/ch.qos.logback.slf4j_1.0.7.v20121108-1250.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.android.ide.eclipse.base_22.3.0.v201310242005-887826.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.android.ide.eclipse.ddms_22.3.0.v201310242005-887826.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.android.ide.eclipse.gldebugger_22.3.0.v201310242005-887826.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/guava-18.0.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.google.guava_15.0.0.v201403281430.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.ibm.icu_52.1.1.v201501240615.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.jcraft.jsch_0.1.50.v201403120620.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.jcraft.jsch_0.1.51.v201410302000.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/com.sun.el_2.2.0.v201303151357.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/java_cup.runtime_0.10.0.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javaewah_0.7.9.v201401101600.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.activation_1.1.0.v201211130549.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.annotation_1.2.0.v201401042248.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.el_2.2.0.v201303151357.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.inject_1.0.0.v20091030.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.jws_2.0.0.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.mail_1.4.0.v201005080615.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.persistence_2.1.0.v201304241213.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.servlet_3.0.0.v201112011016.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.servlet.jsp_2.2.0.v201112011158.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.wsdl_1.5.1.v201012040544.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.wsdl_1.6.2.v201012040545.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.xml_1.3.4.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.xml.rpc_1.1.0.v201209140446/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.xml.soap_1.2.0.v201005080501/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.xml.stream_1.0.1.v201004272200.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/javax.xml.ws_2.1.0.v200902101523.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/net.sourceforge.lpg.lpgjavaruntime_1.1.0.v201004271650.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.ant_1.9.2.v201404171502/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.axis_1.4.0.v201005080400/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.batik.css_1.7.0.v201011041433.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.batik.util_1.7.0.v201011041433.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.batik.util.gui_1.7.0.v200903091627.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.bcel_5.2.0.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.codec_1.6.0.v201305230611.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.collections_3.2.0.v2013030210310.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.compress_1.6.0.v201310281400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.discovery_0.2.0.v201004190315/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.httpclient_3.1.0.v201012070820.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.io_2.0.1.v201105210651.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.lang_2.6.0.v201404270220.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.logging_1.0.4.v201101211617.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.logging_1.1.1.v201101211721.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.commons.net_3.2.0.v201305141515.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.felix.gogo.command_0.10.0.v201209301215.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.felix.gogo.runtime_0.10.0.v201209301036.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.felix.gogo.shell_0.10.0.v201212101605.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.httpcomponents.httpclient_4.3.6.v201411290715.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.httpcomponents.httpcore_4.3.3.v201411290715.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.jasper.glassfish_2.2.2.v201501141630.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.log4j_1.2.15.v201012070815.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.lucene.analysis_3.5.0.v20120725-1805.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.lucene.core_3.5.0.v20120725-1805.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.velocity_1.5.0.v200905192330.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.ws.commons.util_1.0.1.v20100518-1140.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.wsil4j_1.0.0.v200901211807.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.xalan_2.7.1.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.xerces_2.9.0.v201101211617.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.xml.resolver_1.2.0.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.xml.serializer_2.7.1.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.apache.xmlrpc_3.0.0.v20100427-1100.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ant.core_3.3.1.v20150123-1553.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ant.launching_1.0.400.v20140518-0030.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ant.ui_3.5.500.v20140521-1557.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.compare_3.5.501.v20140817-1445.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.compare.core_3.5.400.v20130903-0736.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.compare.win32_1.0.200.v20130514-1224.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.commands_3.6.100.v20140528-1422.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.contenttype_3.4.200.v20140207-1251.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.databinding_1.4.2.v20140729-1044.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.databinding.beans_1.2.200.v20140214-0004.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.databinding.observable_1.4.1.v20140210-1835.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.databinding.property_1.4.200.v20140214-0004.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.expressions_3.4.600.v20140128-0851.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.externaltools_1.0.300.v20140219-0051.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.filebuffers_3.5.400.v20140127-1516.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.filesystem_1.4.100.v20140514-1614.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.filesystem.java7_1.0.0.v20140429-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.filesystem.win32.x86_64_1.4.0.v20140124-1940.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.jobs_3.6.1.v20141014-1248.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.net_1.2.200.v20140124-2013.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.net.win32.x86_64_1.0.100.v20140124-2013.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.resources_3.9.1.v20140825-1431.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.resources.win32.x86_64_3.5.0.v20140124-1940.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.runtime_3.10.0.v20140318-2214.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.runtime.compatibility_3.2.200.v20140128-0851.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.runtime.compatibility.registry_3.5.300.v20140128-0851/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.core.variables_3.2.800.v20130819-1716.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.cvs_1.4.100.v20150204-1700.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.common.doc.user_1.7.0.20090521092446.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity_1.2.11.v201401230755.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.apache.derby_1.0.103.v201212070447.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.apache.derby.dbdefinition_1.0.2.v201107221459.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.apache.derby.ui_1.0.3.v201107221459.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.console.profile_1.0.10.v201109250955.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.db.generic_1.0.1.v201107221459.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.db.generic.ui_1.0.2.v201211200622.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.dbdefinition.genericJDBC_1.0.2.v201310181001.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.doc.user_1.7.0.20090521092446.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.doc.user.contexts_1.7.0.20090521092446.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda_3.4.3.v201405301249.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda.consumer_3.2.6.v201403131814.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda.design_3.3.6.v201403131814.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda.design.ui_3.2.9.v201403131814.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda.flatfile_3.1.8.v201403010906.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda.flatfile.ui_3.1.9.v201403131825.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda.profile_3.2.9.v201403131814.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.oda.template.ui_3.2.5.v201403131814.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.sqm.core_1.2.8.v201401230755.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.sqm.core.ui_1.2.3.v201212070447.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.sqm.server.ui_1.1.101.v201212070447.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.ui_1.2.4.v201212070447.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.connectivity.ui.dse_1.1.5.v201212070447.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.doc.user_1.7.0.20090521092446.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.finfo_1.5.1.v200906161800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.hsqldb_1.0.0.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.hsqldb.dbdefinition_1.0.0.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.hsqldb.ui_1.0.0.v201108120600.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm_1.0.0.v201401170830.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2_1.0.0.v201401170830.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.iseries_1.0.2.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.iseries.dbdefinition_1.0.3.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.iseries.ui_1.0.3.v201212120614.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.luw_1.0.3.v201401170830.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.luw.dbdefinition_1.0.7.v201405302027.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.luw.ui_1.0.6.v201402010752.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.zseries_1.0.2.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.zseries.dbdefinition_1.0.4.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.db2.zseries.ui_1.0.2.v201202100836.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.informix_1.0.1.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.informix.dbdefinition_1.0.4.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.informix.ui_1.0.3.v201202100836.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ibm.ui_1.0.0.v201107221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ingres_1.0.0.v200906111150.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ingres.dbdefinition_1.0.0.v200906161800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.ingres.ui_1.0.0.v201105270214.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.jdt.classpath_1.0.1.v201107221501.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.msft.sqlserver_1.0.3.v201308161009.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.msft.sqlserver.dbdefinition_1.0.1.v201201240505.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.msft.sqlserver.ui_1.0.4.v201308031011.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.mysql_1.0.4.v201212120617.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.mysql.dbdefinition_1.0.4.v201109022331.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.mysql.ui_1.0.0.v201109022331.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.oda.ws_1.2.6.v201403131825.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.oda.ws.ui_1.2.6.v201403131825.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.oda.xml_1.2.5.v201403131825.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.oda.xml.ui_1.2.7.v201403131825.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.oracle_1.0.0.v201107221506.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.oracle.dbdefinition_1.0.103.v201206010214.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.oracle.ui_1.0.3.v201201131121.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.postgresql_1.1.1.v201205252207.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.postgresql.dbdefinition_1.0.2.v201110070445.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.postgresql.ui_1.0.0.v201107221506.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sap.maxdb_1.0.0.v201107221507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sap.maxdb.dbdefinition_1.0.0.v201107221507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sap.maxdb.ui_1.0.0.v201107221507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sqlite_1.0.0.v201002041100.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sqlite.dbdefinition_1.0.2.v201206010441.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sqlite.ui_1.0.0.v201107221507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase_1.0.1.v201107221507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.asa_1.0.2.v201212120618.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.asa.dbdefinition_1.0.0.v200906161800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.asa.models_1.0.0.v201107221507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.asa.schemaobjecteditor.examples_2.5.0.200810071.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.asa.ui_1.0.1.v200906111204.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.ase_1.0.3.v201212120618.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.ase.dbdefinition_1.0.0.v201107221507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.ase.models_1.0.1.v201010140307.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.ase.ui_1.0.1.v200906020900.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.models_1.0.0.v201010140307.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.enablement.sybase.ui_1.0.0.v200906090452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.help_1.5.0.v200906020553.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.intro_1.7.0.v201005281800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.modelbase.dbdefinition_1.0.2.v201107221519.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.modelbase.derby_1.0.0.v201107221519.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.modelbase.sql_1.0.6.v201208230744.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.modelbase.sql.edit_1.0.2.v201208230744.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.modelbase.sql.query_1.1.4.v201212120619.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.modelbase.sql.query.edit_1.0.1.v201110151245.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.modelbase.sql.xml.query_1.0.2.v201201131123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.oda.cshelp_1.1.2.v201309200751.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.common.ui_1.0.1.v201212120623.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.data.core_1.2.3.v201212120623.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.data.ui_1.2.2.v201212120623.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.db.derby_1.0.0.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.db.derby.ui_1.0.0.v200906020900.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.db.generic_1.0.0.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.db.generic.ui_1.0.0.v200906020900.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.ddlgen.ui_1.0.3.v201211200616.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.debugger.core_1.0.1.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.debugger.core.ui_1.0.0.v201003161000.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.doc.user_1.7.0.20090521092446.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.doc.user.contexts_1.7.0.20090521092446.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.editor.core_1.0.3.v201212120623.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.editor.core.ui_1.0.0.v201001150815.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.parsers.sql_1.0.2.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.parsers.sql.lexer_1.0.1.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.parsers.sql.query_1.2.1.v201201250511.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.parsers.sql.xml.query_1.0.0.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.plan_1.0.0.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.result_1.1.6.v201402080246.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.result.ui_1.1.3.v201302061703.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.routineeditor_1.0.0.v201107221520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.routineeditor.ui_1.0.3.v201211200616.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.schemaobjecteditor_1.1.0.v200906022302.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.schemaobjecteditor.ui_1.1.1.200810071.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.schemaobjecteditor.ui.pages_1.1.1.200810071.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.sql_1.0.1.v201110050515.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.sql.ui_1.0.1.v201201270735.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.sqlbuilder_1.0.7.v201401250704.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.sqleditor_1.0.4.v201212120623.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.sqlscrapbook_1.0.2.v201205310922.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.datatools.sqltools.tabledataeditor_1.0.2.v201212120623.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.debug.core_3.9.1.v20140805-1629.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.debug.ui_3.10.2.v20141014-1039.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.draw2d_3.9.101.201408150207.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.dstore.core_3.4.0.201411132153.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.dstore.extra_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.core.commands_0.10.2.v20140424-2344.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.core.contexts_1.3.100.v20140407-1019.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.core.di_1.4.0.v20140414-1837.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.core.di.extensions_0.12.0.v20140417-2033.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.core.services_1.2.1.v20140808-1251.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.bindings_0.10.200.v20140424-2042.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.css.core_0.10.100.v20140424-2042.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.css.swt_0.11.101.v20140818-1343.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.css.swt.theme_0.9.300.v20141126-1957.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.di_1.0.0.v20140328-2112.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.model.workbench_1.1.0.v20140512-1820.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.services_1.1.0.v20140328-1925.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.widgets_1.0.0.v20140514-1823.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.workbench_1.2.2.v20141212-1259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.workbench.addons.swt_1.1.2.v20141126-1310.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.workbench.renderers.swt_0.12.2.v20150204-1353.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.workbench.swt_0.12.100.v20141126-1150.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.e4.ui.workbench3_0.12.0.v20140227-2118.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf_3.4.0.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf.filetransfer_5.0.0.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf.identity_3.4.0.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf.provider.filetransfer_3.2.200.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf.provider.filetransfer.httpclient4_1.0.1043.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf.provider.filetransfer.httpclient4.ssl_1.0.0.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf.provider.filetransfer.ssl_1.0.0.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ecf.ssl_1.1.0.v20141221-2352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.egit_3.4.2.201412180340-r.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.egit.core_3.4.2.201412180340-r.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.egit.doc_3.4.2.201412180340-r.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.egit.mylyn.ui_3.4.2.201412180340-r.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.egit.ui_3.4.2.201412180340-r.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf_2.6.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.ant_2.8.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.codegen_2.10.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.codegen.ecore_2.10.2.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.codegen.ecore.ui_2.10.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.codegen.ui_2.6.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.common_2.10.1.v20150123-0348.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.common.ui_2.9.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.converter_2.7.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.databinding_1.3.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.databinding.edit_1.3.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.ecore_2.10.2.v20150123-0348.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.ecore.change_2.10.0.v20150123-0348.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.ecore.change.edit_2.6.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.ecore.edit_2.9.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.ecore.editor_2.10.1.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.ecore.xmi_2.10.2.v20150123-0348.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.edit_2.10.1.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.edit.ui_2.10.2.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.exporter_2.7.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.importer_2.9.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.importer.ecore_2.8.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.importer.java_2.7.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.importer.rose_2.7.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping_2.8.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping.ecore_2.6.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping.ecore.editor_2.6.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping.ecore2ecore_2.8.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping.ecore2ecore.editor_2.7.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping.ecore2xml_2.8.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping.ecore2xml.ui_2.7.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.emf.mapping.ui_2.6.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.epp.mpc.core_1.3.2.v20141216-2136.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.epp.mpc.help.ui_1.3.2.v20141006-1249.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.epp.mpc.ui_1.3.2.v20150204-1930.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.epp.package.jee_4.4.2.20150219-0708/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.app_1.3.200.v20130910-1609.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.bidi_0.10.0.v20130327-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.common_3.6.200.v20130402-1505.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.concurrent_1.1.0.v20130327-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.console_1.1.0.v20140131-1639.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.ds_1.4.200.v20131126-2331.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.event_1.3.100.v20140115-1647.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.frameworkadmin_2.0.100.v20131209-2144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.frameworkadmin.equinox_1.0.500.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.http.jetty_3.0.200.v20131021-1843.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.http.registry_1.1.300.v20130402-1529.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.http.servlet_1.1.500.v20140318-1755.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.jsp.jasper_1.0.400.v20130327-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.jsp.jasper.registry_1.0.300.v20130327-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20150204-1316/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.artifact.repository_1.1.300.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.console_1.0.300.v20131113-1212.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.core_2.3.0.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.director_2.3.100.v20140224-1921.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.director.app_1.0.300.v20150129-0838.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.directorywatcher_1.1.0.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.discovery_1.0.300.v20131210-1027.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.discovery.compatibility_1.0.200.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.engine_2.3.0.v20140506-1720.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.extensionlocation_1.2.100.v20131119-0908.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.garbagecollector_1.0.200.v20131115-1210.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.jarprocessor_1.0.300.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.metadata_2.2.0.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.metadata.repository_1.2.100.v20131209-2144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.operations_2.4.0.v20131119-0908.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.publisher_1.3.0.v20140911-0143.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.publisher.eclipse_1.1.200.v20140414-0825.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.ql_2.0.100.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.reconciler.dropins_1.1.200.v20131119-0908.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.repository_2.3.0.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.repository.tools_2.1.0.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.touchpoint.eclipse_2.1.200.v20140512-1650.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.touchpoint.natives_1.1.100.v20140523-0116.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.transport.ecf_1.1.0.v20140408-1354.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.ui_2.3.0.v20140404-1657.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.ui.discovery_1.0.100.v20131210-1027.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.ui.importexport_1.1.0.v20131210-1027.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.ui.sdk_1.0.300.v20140407-1803.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.ui.sdk.scheduler_1.2.0.v20140422-1847.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.updatechecker_1.1.200.v20131119-0908.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.p2.updatesite_1.0.400.v20131211-1531.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.preferences_3.5.200.v20140224-1527.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.registry_3.5.400.v20140428-1507.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.security_1.2.0.v20130424-1801.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.security.ui_1.1.200.v20130626-2037.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.security.win32.x86_64_1.0.100.v20130327-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.simpleconfigurator_1.1.0.v20131217-1203.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.simpleconfigurator.manipulator_2.0.0.v20131217-1203.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.equinox.util_1.0.500.v20130404-1337.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.gef_3.9.100.201408150207.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.help_3.6.0.v20130326-1254.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.help.base_4.0.201.v20150204-1700.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.help.ui_4.0.100.v20140401-0608.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.help.webapp_3.6.301.v20150115-1843.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt_3.10.1.v20150204-1700.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.annotation_1.1.0.v20140129-1625.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.annotation_2.0.0.v20140415-1436.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.apt.core_3.3.600.v20150122-0735.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.apt.pluggable.core_1.0.400.v20131113-0353.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.apt.ui_3.3.400.v20140311-1758.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.compiler.apt_1.1.0.v20150122-0735.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.compiler.tool_1.0.300.v20150114-1827.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.core_3.10.2.v20150120-1634.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.core.manipulation_1.5.0.v20130605-1748.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.debug_3.8.102.v20150115-1323/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.debug.ui_3.6.300.v20140512-1926.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.doc.user_3.10.1.v20140827-1504.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.junit_3.7.300.v20140418-0836.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.junit.core_3.7.300.v20140409-1618.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.junit.runtime_3.4.500.v20140527-1138.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.junit4.runtime_1.1.400.v20140314-0036.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.launching_3.7.102.v20141111-0953.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jdt.ui_3.10.2.v20141014-1419.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jem_2.0.600.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jem.beaninfo_2.0.300.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jem.beaninfo.vm_2.0.300.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jem.beaninfo.vm.common_2.0.300.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jem.proxy_2.0.410.v201411191736.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jem.util_2.1.200.v201404021757.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jem.workbench_2.0.400.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.continuation_8.1.16.v20140903.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.http_8.1.16.v20140903.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.io_8.1.16.v20140903.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.security_8.1.16.v20140903.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.server_8.1.16.v20140903.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.servlet_8.1.16.v20140903.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.util_8.1.16.v20140903.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.webapp_8.1.3.v20120522.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jetty.xml_8.1.3.v20120522.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jface_3.10.2.v20141021-1035.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jface.databinding_1.6.200.v20140528-1422.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jface.text_3.9.2.v20141003-1326.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jgit_3.4.2.201412180340-r.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jgit.archive_3.4.2.201412180340-r.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.common.branding_1.4.0.v201310142259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.common.core_1.4.0.v201310142259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.common.eclipselink.branding_1.3.100.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.common.eclipselink.core_1.3.100.v201308091549.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.common.ui_1.4.0.v201310142259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.common.utility_2.3.0.v201311210251.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.dbws.eclipselink.branding_1.2.100.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.dbws.eclipselink.core.gen_1.1.100.v201308132122.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.dbws.eclipselink.ui_1.1.101.v201501152048.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.doc.user_3.2.100.v201308231650.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.branding_1.4.0.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.core_1.4.1.v201501152041.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.core.schemagen_1.1.100.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.eclipselink.branding_1.4.100.v201310142259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.eclipselink.core_1.3.100.v201310142259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.eclipselink.core.schemagen_1.2.100.v201310142259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.eclipselink.ui_1.4.100.v201310142259.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jaxb.ui_1.5.0.v201308091549.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.annotate_1.0.100.v201309261652.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.branding_3.4.0.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.core_3.4.0.v201312052110.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.db_2.2.100.v201311150251.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.db.ui_2.1.100.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.eclipselink.branding_3.4.0.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.eclipselink.core_2.4.0.v201309122001.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.eclipselink.core.ddlgen_2.2.100.v201309202144.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.eclipselink.ui_2.4.0.v201308271953.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.gen_2.3.100.v201309061349.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jpt.jpa.ui_3.4.0.v201312022017.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jsch.core_1.1.500.v20131112-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jsch.ui_1.1.500.v20131112-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jsf.branding_3.5.0.v201309172308.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.common.annotations.controller_1.1.300.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.common.annotations.core_1.1.300.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.common.annotations.ui_1.1.300.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.common.frameworks_1.1.601.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.common.project.facet.core_1.4.400.v201403261418.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.common.project.facet.ui_1.4.510.v201501141810.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.common.ui_1.0.201.v201208291950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ejb.doc.user_1.1.301.v201105130955.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ejb.ui_1.1.900.v201402130359.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ejb.ui.infopop_1.0.300.v201002231012.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee_1.1.802.v201502041526.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.core_1.3.100.v201404161520.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.doc.user_1.1.400.v201008122207.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.ejb_1.1.800.v201404021607.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.ejb.annotation.model_1.1.300.v201004110730.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.ejb.annotations.emitter_1.1.200.v201004110730.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.ejb.annotations.ui_1.1.200.v201004261420.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.ejb.annotations.xdoclet_1.2.200.v201103302126.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.infopop_1.0.300.v201309091923.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.jca_1.1.700.v201305311426.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.jca.ui_1.1.500.v201304231803.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.navigator.ui_1.1.600.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.ui_1.1.801.v201501141713.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.web_1.1.810.v201501141727.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.webservice_1.1.400.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.webservice.ui_1.1.500.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.j2ee.xdoclet.runtime_1.1.300.v201004280609.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jee_1.0.700.v201404092004.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jee.ejb_1.0.400.v201305061702.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jee.ui_1.0.701.v201408251535.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jee.web_1.0.500.v201404021628.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.apache.trinidad.tagsupport_1.4.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.common_1.5.100.v201409111805.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.common.runtime_1.4.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.common.ui_1.5.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.core_1.7.100.v201409111805.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.doc.user_1.5.0.v201309172352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.facelet.core_1.3.0.v201405282043.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.facelet.ui_1.3.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.facesconfig_1.5.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.facesconfig.ui_1.5.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.standard.tagsupport_1.5.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsf.ui_1.6.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsp.core_1.2.701.v201501151629.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsp.ui_1.1.901.v201501261620.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.jsp.ui.infopop_1.0.200.v201309112106.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.pagedesigner_1.6.200.v201409302017.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.pagedesigner.jsf.ui_1.5.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.pagedesigner.jsp.core_1.5.0.v201309172102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.core_1.2.400.v201309182039.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.generic.core_1.0.900.v201402262303.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.generic.jonas_1.5.500.v201405151744.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.generic.ui_1.0.600.v201402262303.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.preview.adapter_1.1.300.v201309182039.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.tomcat.core_1.1.601.v201501040116.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.tomcat.ui_1.1.400.v201311302002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.ui_1.1.300.v201309182039.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.ui.doc.user_1.0.600.v201309182117.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.server.ui.infopop_1.0.500.v201309182117.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.servlet.ui_1.1.801.v201409042158.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.servlet.ui.infopop_1.0.500.v201105121947.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.standard.schemas_1.2.201.v201501151629.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws_1.0.701.v201411261651.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.annotations.core_1.2.200.v201311102023.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis.consumption.core_1.0.500.v201401152035.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis.consumption.ui_1.0.750.v201311011546.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis.creation.ui_1.0.800.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis.infopop_1.0.400.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis.ui.doc.user_1.1.200.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis2.consumption.core_1.0.200.v201310240024.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis2.consumption.ui_1.0.200.v201310240024.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis2.core_1.0.300.v201310240024.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis2.creation.core_1.0.200.v201310240024.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis2.creation.ui_1.0.200.v201310240024.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis2.ui_1.0.400.v201310240024.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.axis2.ui.doc.user_1.0.200.v201310240024.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.consumption_1.0.750.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.consumption.infopop_1.0.400.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.consumption.ui_1.1.751.v201501131919.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.consumption.ui.doc.user_1.0.700.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.creation.ejb.ui_1.0.250.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.creation.ui_1.0.851.v201501131919.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.cxf.consumption.core_1.0.300.v201309232152.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.cxf.consumption.ui_1.0.300.v201309232152.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.cxf.core_1.1.200.v201404292022.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.cxf.creation.core_1.0.401.v201408111743.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.cxf.creation.ui_1.0.300.v201403242125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.cxf.doc.user_1.0.300.v201309232209.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.cxf.ui_1.0.300.v201309232152.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.doc.user_1.0.700.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.infopop_1.0.400.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxb.core_1.0.200.v201309232152.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxrs.core_1.0.551.v201409041522.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxrs.ui_1.0.651.v201409041522.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxws.core_1.0.401.v201410232139.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxws.doc.user_1.0.400.v201309232209.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxws.dom.integration_1.0.300.v201309242047.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxws.dom.runtime_1.0.300.v201309242047.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxws.dom.ui_1.0.100.v201309242047.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxws.ui_1.0.400.v201309232152.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.jaxws.utils_1.0.300.v201309242047.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.uddiregistry_1.0.550.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.jst.ws.ui_1.0.450.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ltk.core.refactoring_3.6.101.v20140817-1500.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ltk.ui.refactoring_3.7.100.v20140324-1358.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.archetype.common_1.6.2.20150902-0001/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.core_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.core.ui_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.discovery_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.editor_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.editor.xml_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.jdt_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.jdt.ui_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.launching_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.lifecyclemapping.defaults_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.logback.appender_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.logback.configuration_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.maven.indexer_1.6.2.20150902-0001/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.maven.runtime_1.6.2.20150902-0001/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.maven.runtime.slf4j.simple_1.6.2.20150902-0001/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.model.edit_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.profiles.core_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.profiles.ui_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.refactoring_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.scm_1.6.2.20150902-0002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.workspace.cli_0.3.1.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.wtp_1.1.0.20140611-1646.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.wtp.jaxrs_1.1.0.20140611-1646.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.wtp.jpa_1.1.0.e43-20140611-1648.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.wtp.jsf_1.1.0.20140611-1646.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.wtp.overlay_1.1.0.20140611-1646.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.m2e.wtp.overlay.ui_1.1.0.20140611-1646.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.bugzilla.core_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.bugzilla.ide_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.bugzilla.ui_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.core_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.identity.core_1.6.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.net_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.notifications.core_1.6.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.notifications.feed_1.6.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.notifications.ui_1.6.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.repositories.core_1.6.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.repositories.ui_1.6.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.screenshots_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.ui_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.workbench_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.commons.xmlrpc_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.context.core_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.context.tasks.ui_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.context.ui_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.debug.ui_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.discovery.core_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.discovery.ui_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.help.ui_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.ide.ant_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.ide.ui_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.java.tasks_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.java.ui_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.monitor.core_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.monitor.ui_3.14.2.v20150217-2244.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.resources.ui_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.tasks.bugs_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.tasks.core_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.tasks.index.core_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.tasks.index.ui_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.tasks.search_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.tasks.ui_3.14.2.v20150217-2341.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.team.cvs_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.team.ui_3.14.2.v20150218-0125.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.confluence.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.confluence.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.context.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.core.ant_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.core.osgi_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.help.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.html.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.markdown.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.markdown.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.mediawiki.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.mediawiki.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.tasks.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.textile.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.textile.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.tracwiki.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.tracwiki.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.twiki.core_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.twiki.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.mylyn.wikitext.ui_2.3.2.v20150217-2315.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.osgi_3.10.2.v20150203-1939.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.osgi.compatibility.state_1.0.1.v20140709-1414.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.osgi.services_3.4.0.v20140312-2051.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.osgi.util_3.3.0.v20131023-1243.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde_3.10.1.v20150204-1700.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.api.tools_1.0.600.v20140520-1809.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.api.tools.annotations_1.0.0.v20140602-1527.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.api.tools.ui_1.0.501.v20140808-0849.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.build_3.9.0.v20140415-2029/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.core_3.10.2.v20150127-1015.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.doc.user_3.10.2.v20150202-1407.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.ds.core_1.0.300.v20140204-1740.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.ds.ui_1.0.300.v20140204-1740.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.junit.runtime_3.4.400.v20140204-1740.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.launching_3.6.200.v20140521-1231.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.runtime_3.4.400.v20140512-1555.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.ua.core_1.0.301.v20140702-1823.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.ua.ui_1.0.300.v20140307-1548.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.ui_3.8.101.v20141001-1400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.pde.ui.templates_3.4.800.v20140410-2009.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.antlr_3.2.0.v201302191141.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.asm_5.0.1.v201405080102.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.core_2.6.0.v20140809-296a69f.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.dbws_2.6.0.v20140809-296a69f.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.dbws.builder_2.6.0.v20140809-296a69f.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.jpa_2.6.0.v20140809-296a69f.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.jpa.jpql_2.6.0.v20140809-296a69f.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.persistence.moxy_2.6.0.v20130815-a4708b6.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.platform_4.4.2.v20150204-1700/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.platform.doc.user_4.4.2.v20141003-1449.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rcp_4.4.2.v20150204-1700.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse_3.5.0.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.connectorservice.dstore_3.1.301.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.connectorservice.local_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.connectorservice.ssh_2.1.300.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.connectorservice.telnet_1.2.300.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.core_3.3.100.201407181907.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.doc.user_3.4.100.201403101646.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.dstore.security_3.0.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.efs_2.1.401.201411041812.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.efs.ui_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.files.ui_3.2.200.201403211850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.importexport_1.2.300.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.processes.ui_3.0.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.services_3.3.0.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.services.dstore_3.3.0.201406041609.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.services.files.ftp_3.0.500.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.services.local_2.2.0.201410241330.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.services.ssh_3.2.100.201403281521.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.services.telnet_2.0.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.shells.ui_3.0.500.201403271554.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.files.core_3.3.1.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.files.dstore_2.1.300.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.files.ftp_2.2.0.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.files.local_2.1.300.201403251512.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.files.ssh_2.1.300.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.processes.core_3.1.300.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.processes.dstore_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.processes.local_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.processes.shell.linux_1.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.shells.core_3.1.300.201403271554.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.shells.dstore_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.shells.local_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.shells.ssh_2.1.400.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.shells.telnet_1.2.300.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.terminals.core_1.0.300.201411271155.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.subsystems.terminals.ssh_1.0.200.201411271155.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.terminals.ui_1.2.200.201412161015.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.ui_3.3.100.201408221458.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.rse.useractions_1.1.500.201403100950.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.search_3.9.100.v20140226-1637.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.swt_3.103.2.v20150203-1313.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.swt.win32.win32.x86_64_3.103.2.v20150203-1351.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.team.core_3.7.0.v20130514-1224.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.team.cvs.core_3.3.600.v20131112-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.team.cvs.ssh2_3.2.400.v20131112-1442.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.team.cvs.ui_3.3.600.v20130514-1224.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.team.ui_3.7.100.v20130710-1213.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.text_3.5.300.v20130515-1451.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.tm.terminal_3.3.0.201501281007.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.tm.terminal.ssh_2.1.400.201412161015.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.tm.terminal.telnet_2.1.400.201412161015.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.tm.terminal.view_2.4.200.201412161015.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui_3.106.1.v20141002-1150.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.browser_3.4.200.v20131003-1453.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.cheatsheets_3.4.200.v20131227-1524.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.console_3.5.300.v20140424-1437.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.editors_3.8.200.v20140401-1310.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.externaltools_3.2.300.v20140327-1949.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.forms_3.6.100.v20140422-1825.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.ide_3.10.2.v20141118-1227.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.ide.application_1.0.501.v20141111-1238.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.intro_3.4.200.v20130326-1254.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.intro.universal_3.2.701.v20150204-1123/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.navigator_3.5.401.v20140724-1117.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.navigator.resources_3.4.700.v20140407-1004.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.net_1.2.200.v20120807-0927.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.themes_1.0.1.v20141126-1957/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.trace_1.0.201.v20140702-1807.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.views_3.7.0.v20140408-0703.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.views.log_1.0.500.v20140512-1221.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.views.properties.tabbed_3.6.0.v20140519-0906.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.win32_3.2.400.v20140423-2207.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.workbench_3.106.2.v20150204-1030.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.ui.workbench.texteditor_3.9.0.v20140411-1521.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.update.configurator_3.3.300.v20140518-1928.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.command.env_1.0.450.v201401132311.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.command.env.core_1.0.250.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.command.env.doc.user_1.5.400.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.command.env.infopop_1.0.200.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.command.env.ui_1.1.151.v201501131919.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.core_1.2.0.v200908251833.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.emf_1.2.300.v201501292352.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.emfworkbench.integration_1.2.101.v201107081800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.environment_1.0.400.v200912181831.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.frameworks_1.2.200.v201304241450.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.frameworks.ui_1.2.300.v201401292051.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.infopop_1.0.300.v201309101952.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.modulecore_1.2.401.v201408132036.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.modulecore.ui_1.0.201.v201208241542.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.project.facet.core_1.4.300.v201111030423.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.project.facet.ui_1.4.500.v201409111446.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.snippets_1.2.200.v201208080420.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.ui_1.1.500.v200911182011.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.common.uriresolver_1.2.100.v201305141634.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.css.core_1.1.800.v201402172058.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.css.ui_1.0.901.v201501212057.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.doc.user_1.2.0.v201309112106.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.dtd.core_1.1.700.v201211012112.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.dtd.ui_1.0.801.v201308100602.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.dtd.ui.infopop_1.0.400.v201309112106.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.dtdeditor.doc.user_1.0.700.v201208081537.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.html.core_1.1.802.v201501312139.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.html.ui_1.0.902.v201501212057.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.html.ui.infopop_1.0.201.v201409111852.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.internet.cache_1.0.700.v201211211430.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.internet.monitor.core_1.0.600.v201309182039.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.internet.monitor.ui_1.0.700.v201309182039.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.core_1.3.300.v201410221502.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.debug.core_3.1.100.v201405212207.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.debug.crossfire_1.0.400.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.debug.rhino_1.0.300.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.debug.rhino.debugger_1.0.400.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.debug.rhino.ui_1.0.300.v201405071359.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.debug.transport_1.0.200.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.debug.ui_1.0.400.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.doc_1.4.100.v201309042002.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.manipulation_1.0.500.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.support.firefox_1.0.500.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.support.ie_1.0.500.v201402051800.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.ui_1.1.500.v201409121658.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.web.core_1.0.700.v201307151913.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.web.support.jsp_1.0.600.v201307151913.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.jsdt.web.ui_1.0.800.v201403271809.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.core_1.6.2.v201409292121.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.discovery_1.0.501.v201501132217.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.http.core_1.0.300.v20130918_1641.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.http.ui_1.0.400.v20130918_1641.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.preview_1.1.300.v20130918_1641.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.preview.adapter_1.1.300.v20130918_1641.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.ui_1.5.100.v201407281532.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.ui.doc.user_1.1.600.v201309182117.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.server.ui.infopop_1.1.200.v201309182117.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.sse.core_1.1.900.v201401092025.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.sse.doc.user_1.1.100.v201208081537.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.sse.ui_1.3.301.v201501151629.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.sse.ui.infopop_1.0.300.v201309112106.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.standard.schemas_1.0.700.v201304171715.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.validation_1.2.600.v201501211647.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.validation.infopop_1.0.300.v201309101952.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.validation.ui_1.2.500.v201310231452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.web_1.1.800.v201312041437.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.web.ui_1.1.600.v201302011850.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.web.ui.infopop_1.0.300.v200805140206.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.webtools.doc.user_1.0.500.v201208081537.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.ws_1.1.350.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.ws.explorer_1.0.750.v201401291755.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.ws.infopop_1.0.400.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.ws.parser_1.0.550.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.ws.service.policy_1.0.400.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.ws.service.policy.ui_1.0.450.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.ws.ui_1.1.250.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.wsdl_1.2.350.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.wsdl.ui_1.2.650.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.wsdl.ui.doc.user_1.0.850.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.wsdl.validation_1.1.650.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.wsi_1.0.550.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.wsi.ui_1.0.550.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.wsi.ui.doc.user_1.0.750.v201309242123.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.core_1.1.902.v201501211904.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.ui_1.1.501.v201501212057.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.ui.infopop_1.0.400.v201309112106.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.xpath.core_1.3.0.v201108312022.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.xpath.ui_1.1.101.v201204252215.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.xpath2_1.1.0.v201309251557.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.xpath2.processor_2.1.101.v201409111854.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.xpath2.processor.doc.user_2.0.0.v201209212251.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xml.xpath2.wtptypes_2.0.0.v201208081543.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xmleditor.doc.user_1.0.700.v201208081537.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsd.core_1.1.900.v201401141857.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsd.ui_1.2.500.v201208081537.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsdeditor.doc.user_1.0.800.v201208081537.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl_1.2.0.v201309251559.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.core_1.1.301.v201405151730.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.debug.ui_1.0.302.v201304240928.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.doc_1.0.100.v201309251559.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.exslt.core_1.0.0.v201005240422.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.exslt.ui_1.0.0.v201006012004.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.jaxp.debug_1.0.300.v201304102131.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.jaxp.debug.ui_1.0.200.v201103081755.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.jaxp.launching_1.0.300.v201304102131.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.launching_1.1.0.v201304240928.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.saxon_1.0.200.v201103081755.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.ui_1.1.301.v201304222136.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wst.xsl.xalan_1.0.100.v201208081544.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wtp.epp.package.capabilities_1.3.0.v201005102000.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wtp.epp.package.jee.intro_1.3.0.v201006142040.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wtp.javascript.capabilities_1.0.100.v201005102000.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wtp.jee.capabilities_1.0.100.v201005102000.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wtp.web.capabilities_1.0.100.v201005102000.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.wtp.xml.capabilities_1.0.100.v201005102000.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.xsd_2.10.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.eclipse.xsd.edit_2.7.0.v20150123-0452.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.hamcrest.core_1.3.0.v201303031735.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.jdom_1.1.1.v201101151400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.jsoup_1.7.2.v201304221138.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.junit_4.11.0.v201303080030/ -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.mozilla.javascript_1.7.2.v201005080400.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.objectweb.asm_5.0.1.v201404251740.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.objectweb.asm.tree_5.0.1.v201404251740.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.sat4j.core_2.3.5.v201308161310.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.sat4j.pb_2.3.5.v201404071733.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.slf4j.api_1.7.2.v20121108-1250.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.sonatype.m2e.mavenarchiver_0.16.0.201401211452-signed-20140310144306.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.uddi4j_2.0.5.v200805270300.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.w3c.css.sac_1.3.1.v200903091627.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.w3c.dom.events_3.0.0.draft20060413_v201105210656.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.w3c.dom.smil_1.0.0.v200806040011.jar -file:/D:/Downloads/eclipse-jee-juno-SR2-win32-x86_64/eclipse/plugins/org.w3c.dom.svg_1.1.0.v201011041433.jar diff --git a/.metadata/.plugins/org.eclipse.rse.core/.log b/.metadata/.plugins/org.eclipse.rse.core/.log deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.rse.core/initializerMarks/org.eclipse.rse.internal.core.RSELocalConnectionInitializer.mark b/.metadata/.plugins/org.eclipse.rse.core/initializerMarks/org.eclipse.rse.internal.core.RSELocalConnectionInitializer.mark deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/FP.local.files_0/node.properties b/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/FP.local.files_0/node.properties deleted file mode 100644 index 28fb3f4..0000000 --- a/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/FP.local.files_0/node.properties +++ /dev/null @@ -1,57 +0,0 @@ -# RSE DOM Node -00-name=NORBI-PC\:local.files -01-type=FilterPool -03-attr.default=true -03-attr.deletable=true -03-attr.id=local.files -03-attr.nonRenamable=false -03-attr.owningParentName=null -03-attr.release=200 -03-attr.singleFilterStringOnly=false -03-attr.singleFilterStringOnlyESet=false -03-attr.stringsCaseSensitive=true -03-attr.supportsDuplicateFilterStrings=false -03-attr.supportsNestedFilters=true -03-attr.type=default -06-child.00000.00-name=My Home -06-child.00000.01-type=Filter -06-child.00000.03-attr.default=false -06-child.00000.03-attr.filterType=default -06-child.00000.03-attr.id=My Home -06-child.00000.03-attr.nonChangable=false -06-child.00000.03-attr.nonDeletable=false -06-child.00000.03-attr.nonRenamable=false -06-child.00000.03-attr.promptable=false -06-child.00000.03-attr.relativeOrder=0 -06-child.00000.03-attr.release=200 -06-child.00000.03-attr.singleFilterStringOnly=false -06-child.00000.03-attr.stringsCaseSensitive=false -06-child.00000.03-attr.stringsNonChangable=false -06-child.00000.03-attr.supportsDuplicateFilterStrings=false -06-child.00000.03-attr.supportsNestedFilters=true -06-child.00000.06-child.00000.00-name=C\:\\Users\\Norbi\\* -06-child.00000.06-child.00000.01-type=FilterString -06-child.00000.06-child.00000.03-attr.default=false -06-child.00000.06-child.00000.03-attr.string=C\:\\Users\\Norbi\\* -06-child.00000.06-child.00000.03-attr.type=default -06-child.00001.00-name=Drives -06-child.00001.01-type=Filter -06-child.00001.03-attr.default=false -06-child.00001.03-attr.filterType=default -06-child.00001.03-attr.id=Drives -06-child.00001.03-attr.nonChangable=false -06-child.00001.03-attr.nonDeletable=false -06-child.00001.03-attr.nonRenamable=false -06-child.00001.03-attr.promptable=false -06-child.00001.03-attr.relativeOrder=0 -06-child.00001.03-attr.release=200 -06-child.00001.03-attr.singleFilterStringOnly=false -06-child.00001.03-attr.stringsCaseSensitive=false -06-child.00001.03-attr.stringsNonChangable=false -06-child.00001.03-attr.supportsDuplicateFilterStrings=false -06-child.00001.03-attr.supportsNestedFilters=true -06-child.00001.06-child.00000.00-name=* -06-child.00001.06-child.00000.01-type=FilterString -06-child.00001.06-child.00000.03-attr.default=false -06-child.00001.06-child.00000.03-attr.string=* -06-child.00001.06-child.00000.03-attr.type=default diff --git a/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/H.local_16/node.properties b/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/H.local_16/node.properties deleted file mode 100644 index 128cdf7..0000000 --- a/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/H.local_16/node.properties +++ /dev/null @@ -1,25 +0,0 @@ -# RSE DOM Node -00-name=Local -01-type=Host -03-attr.description= -03-attr.hostname=LOCALHOST -03-attr.offline=false -03-attr.promptable=false -03-attr.systemType=org.eclipse.rse.systemtype.local -03-attr.type=Local -06-child.00000.00-name=Local Connector Service -06-child.00000.01-type=ConnectorService -06-child.00000.03-attr.group=Local Connector Service -06-child.00000.03-attr.port=0 -06-child.00000.03-attr.useSSL=false -06-child.00000.06-child.00000.00-name=Local Files -06-child.00000.06-child.00000.01-type=SubSystem -06-child.00000.06-child.00000.03-attr.hidden=false -06-child.00000.06-child.00000.03-attr.type=local.files -06-child.00000.06-child.00000.06-child.00000.00-name=NORBI-PC___NORBI-PC\:local.files -06-child.00000.06-child.00000.06-child.00000.01-type=FilterPoolReference -06-child.00000.06-child.00000.06-child.00000.03-attr.refID=local.files -06-child.00000.06-child.00001.00-name=Local Shells -06-child.00000.06-child.00001.01-type=SubSystem -06-child.00000.06-child.00001.03-attr.hidden=false -06-child.00000.06-child.00001.03-attr.type=local.shells diff --git a/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/node.properties b/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/node.properties deleted file mode 100644 index 910091b..0000000 --- a/.metadata/.plugins/org.eclipse.rse.core/profiles/PRF.norbi-pc_251/node.properties +++ /dev/null @@ -1,7 +0,0 @@ -# RSE DOM Node -00-name=NORBI-PC -01-type=Profile -03-attr.defaultPrivate=true -03-attr.isActive=true -05-ref.00000=FP.local.files_0 -05-ref.00001=H.local_16 diff --git a/.metadata/.plugins/org.eclipse.rse.ui/.log b/.metadata/.plugins/org.eclipse.rse.ui/.log deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.search/dialog_settings.xml b/.metadata/.plugins/org.eclipse.search/dialog_settings.xml deleted file mode 100644 index c0a135f..0000000 --- a/.metadata/.plugins/org.eclipse.search/dialog_settings.xml +++ /dev/null @@ -1,48 +0,0 @@ - -
-
- - -
-
- -
-
- - -
-
- -
-
- - - - - - - - - - - - - - - - - - -
-
- - -
-
- - - - - -
-
diff --git a/.metadata/.plugins/org.eclipse.team.cvs.core/.running b/.metadata/.plugins/org.eclipse.team.cvs.core/.running deleted file mode 100644 index e69de29..0000000 diff --git a/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml deleted file mode 100644 index 50f1edb..0000000 --- a/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml +++ /dev/null @@ -1,5 +0,0 @@ - -
-
-
-
diff --git a/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml deleted file mode 100644 index c458f04..0000000 --- a/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml +++ /dev/null @@ -1,16 +0,0 @@ - -
-
- - -
-
- - - -
-
- - -
-
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml deleted file mode 100644 index 4927d2f..0000000 --- a/.metadata/.plugins/org.eclipse.ui.workbench.texteditor/dialog_settings.xml +++ /dev/null @@ -1,36 +0,0 @@ - -
-
- - -
-
- - - - - - - - - - - - - - - - - - - - -
-
- - - - - -
-
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml deleted file mode 100644 index f8d2a7b..0000000 --- a/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml +++ /dev/null @@ -1,45 +0,0 @@ - -
-
- - -
-
- - - - - - - - - - -
-
-
-
- - - - - -
-
- - - - -
-
- - - - - - - - - -
-
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml deleted file mode 100644 index 7f91f53..0000000 --- a/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.wst.internet.cache/cache.xml b/.metadata/.plugins/org.eclipse.wst.internet.cache/cache.xml deleted file mode 100644 index 6574033..0000000 --- a/.metadata/.plugins/org.eclipse.wst.internet.cache/cache.xml +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.core/externalLibsTimeStamps b/.metadata/.plugins/org.eclipse.wst.jsdt.core/externalLibsTimeStamps deleted file mode 100644 index 752fe12..0000000 Binary files a/.metadata/.plugins/org.eclipse.wst.jsdt.core/externalLibsTimeStamps and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/baseBrowserLibrary.js b/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/baseBrowserLibrary.js deleted file mode 100644 index 2fc99ea..0000000 --- a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/baseBrowserLibrary.js +++ /dev/null @@ -1,5393 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2013 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ - -/** - * Object DOMException() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Object - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Object - */ -function DOMException(){}; -DOMException.prototype = new Object(); -/** - * Constant DOMException.INDEX_SIZE_ERR=1 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.INDEX_SIZE_ERR=1; -/** - * Constant DOMException.DOMSTRING_SIZE_ERR=2 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.DOMSTRING_SIZE_ERR=2; -/** - * Constant DOMException.HIERARCHY_REQUEST_ERR=3 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.HIERARCHY_REQUEST_ERR=3; -/** - * Constant DOMException.WRONG_DOCUMENT_ERR=4 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.WRONG_DOCUMENT_ERR=4; -/** - * Constant DOMException.INVALID_CHARACTER_ERR=5 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.INVALID_CHARACTER_ERR=5; -/** - * Constant DOMException.NO_DATA_ALLOWED_ER=6 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.NO_DATA_ALLOWED_ER=6; -/** - * Constant DOMException.NO_MODIFICATION_ALLOWED_ERR=7 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.NO_MODIFICATION_ALLOWED_ERR=7; -/** - * Constant DOMException.NOT_FOUND_ERR=8 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.NOT_FOUND_ERR=8; -/** - * Constant DOMException.NOT_SUPPORTED_ERR=9 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.NOT_SUPPORTED_ERR=9; -/** - * Constant DOMException.INUSE_ATTRIBUTE_ERR=10 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.INUSE_ATTRIBUTE_ERR=10; -/** - * Constant DOMException.INVALID_STATE_ERR=11 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.INVALID_STATE_ERR=11; -/** - * Constant DOMException.SYNTAX_ERR=12 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.SYNTAX_ERR=12; -/** - * Constant DOMException.INVALID_MODIFICATION_ER=13 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.INVALID_MODIFICATION_ER=13; -/** - * Constant DOMException.NAMESPACE_ERR=14 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.NAMESPACE_ERR=14; -/** - * Constant DOMException.NVALID_ACCESS_ERR=15 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.INVALID_ACCESS_ERR=15; -/** - * Property code - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMException.prototype.code=0; - -/** - * Object DOMImplementation() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Object - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Object - */ -function DOMImplementation(){}; -DOMImplementation.prototype = new Object(); -/** - * function hasFeature(feature, version) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} feature - * @param {String} version - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DOMImplementation.prototype.hasFeature = function(feature, version){return false;}; -/** - * function createDocumentType(qualifiedName, publicId, systemId) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} qualifiedName - * @param {String} publicId - * @param {String} systemId - * @returns {DocumentType} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see DocumentType - */ -DOMImplementation.prototype.createDocumentType = function(qualifiedName, publicId, systemId){return new DocumentType();}; -/** - * function createDocument(namespaceURI, qualifiedName, doctype) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} qualifiedName - * @param {DocumentType} doctype - * @returns {Document} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Document - */ -DOMImplementation.prototype.createDocument = function(namespaceURI, qualifiedName, doctype){return new HTMLDocument();}; - -/** - * Object DocumentFragment() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function DocumentFragment(){}; -DocumentFragment.prototype=new Node(); - -/** - * Object Document() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function Document(){}; -Document.prototype = new Node(); -/** - * Property defaultView - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Window - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Window - */ -Document.prototype.defaultView = new Window(); -/** - * Property doctype - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type DocumentType - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see DocumentType - */ -Document.prototype.doctype = new DocumentType(); -/** - * Property implementation - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type DOMImplementation - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see DOMImplementation - */ -Document.prototype.implementation = new DOMImplementation(); -/** - * Property documentElement - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Element - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Element - */ -Document.prototype.documentElement= new HTMLElement(); -/** - * Property styleSheets - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Document.prototype.styleSheets= new Array(); -/** - * function createElement(tagName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} tagName - * @returns {Element} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Element - */ -Document.prototype.createElement=function(tagName){return new HTMLElement();}; -/** - * function createDocumentFragment() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @returns {DocumentFragment} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see DocumentFragment - */ -Document.prototype.createDocumentFragment=function(){return new DocumentFragment();}; -/** - * function createTextNode(data) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} data - * @returns {Text} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Text - */ -Document.prototype.createTextNode=function(data){return new Text();}; -/** - * function createComment(data) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} data - * @returns {Comment} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Comment - */ -Document.prototype.createComment=function(data){return new Comment();}; -/** - * function createCDATASection(data) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} data - * @returns {CDATASection} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see CDATASection - */ -Document.prototype.createCDATASection=function(data){}; -/** - * function createProcessingInstruction(target, data) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type ProcessingInstruction - * @param {String} target - * @param {String} data - * @returns {ProcessingInstruction} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see ProcessingInstruction -*/ -Document.prototype.createProcessingInstruction=function(target, data){return new ProcessingInstruction();}; -/** - * function createAttribute(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {Attr} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Attr - */ -Document.prototype.createAttribute=function(name){return new Attr();}; -/** - * function createEntityReference(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {EntityReference} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see EntityReference - */ -Document.prototype.createEntityReference=function(name){return new EntityReference();}; -/** - * function getElementsByTagName(tagname) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} tagname - * @returns {NodeList} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see NodeList - */ -Document.prototype.getElementsByTagName=function(tagname){return new NodeList();}; -/** - * function importNode(importedNode, deep) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Node} importedNode - * @param {Boolean} deep - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Document.prototype.importNode=function(importedNode, deep){return new Node();}; -/** - * function createElementNS(namespaceURI, qualifiedName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} qualifiedName - * @returns {Element} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Element - */ -Document.prototype.createElementNS=function(namespaceURI, qualifiedName){return new HTMLElement();}; -/** - * function createEvent(String eventType) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} eventType - * @returns {Object} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Element - */ -Document.prototype.createEvent=function(eventType){return new Object();}; -/** - * function createAttributeNS(namespaceURI, qualifiedName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} qualifiedName - * @returns {Attr} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Attr - */ -Document.prototype.createAttributeNS=function(namespaceURI, qualifiedName){return new Attr();}; -/** - * function getElementsByTagNameNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @returns {NodeList} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see NodeList - */ -Document.prototype.getElementsByTagNameNS=function(namespaceURI, localName){return new NodeList();}; -/** - * function getElementById(elementId) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} elementId - * @returns {Element} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Element - */ -Document.prototype.getElementById=function(elementId){return new HTMLElement();}; - -/** - * Object Node() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Object - * @constructor - * @memberOf Node - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see EventTarget - */ -function Node(){}; -Node.prototype=new EventTarget(); -/** - * Constant Node.ELEMENT_NODE=1 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.ELEMENT_NODE=1; -/** - * Constant Node.ATTRIBUTE_NODE=2 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.ATTRIBUTE_NODE=2; -/** - * Constant Node.TEXT_NODE=3 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.TEXT_NODE=3; -/** - * Constant Node.CDATA_SECTION_NODE=4 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.CDATA_SECTION_NODE=4; -/** - * Constant Node.ENTITY_REFERENCE_NODE=5 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.ENTITY_REFERENCE_NODE=5; -/** - * Constant Node.ENTITY_NODE=6 - * @type Number - * @memberOf Node - * @see Node - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - - * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html -*/ -Node.ENTITY_NODE=6; -/** - * Constant Node.PROCESSING_INSTRUCTION_NODE=7 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.PROCESSING_INSTRUCTION_NODE=7; -/** - * Constant Node.COMMENT_NODE=8 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.COMMENT_NODE=8; -/** - * Constant Node.DOCUMENT_NODE=9 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.DOCUMENT_NODE=9; -/** - * Constant Node.DOCUMENT_TYPE_NODE=10 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.DOCUMENT_TYPE_NODE=10; -/** - * Constant Node.DOCUMENT_FRAGMENT_NODE=11 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.DOCUMENT_FRAGMENT_NODE=11; -/** - * Constant Node.NOTATION_NODE=12 - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @constant - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.NOTATION_NODE=12; -/** - * Property nodeName - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.nodeName = ""; -/** - * Property nodeValue - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.nodeValue = ""; -/** - * Property nodeType - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.nodeType = 0; -/** - * Property parentNode - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Node - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.parentNode=new Node(); -/** - * Property childNodes - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type NodeList - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see NodeList -*/ -Node.prototype.childNodes=new NodeList(); -/** - * Property firstChild - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Node - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.firstChild=new Node(); -/** - * Property lastChild - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Node - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.lastChild=new Node(); -/** - * Property previousSibling - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Node - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.previousSibling=new Node(); -/** - * Property nextSibling - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Node - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.nextSibling=new Node(); -/** - * Property attributes - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type NamedNodeMap - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see NamedNodeMap - */ -Node.prototype.attributes=new NamedNodeMap(); -/** - * Property ownerDocument - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Document - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Document - */ -Node.prototype.ownerDocument = new HTMLDocument(); -/** - * Property namespaceURI - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.namespaceURI=""; -/** - * Property prefix - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.prefix = ""; -/** - * Property localName - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.localName= ""; -/** - * function insertBefore(newChild, refChild) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Node} newChild - * @param {Node} refChild - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.insertBefore = function(newChild, refChild){return new Node();}; -/** - * function replaceChild(newChild, oldChild) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Node} newChild - * @param {Node} oldChild - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.replaceChild = function(newChild, oldChild){return new Node();}; -/** - * function removeChild(oldChild) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Node} oldChild - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.removeChild = function(oldChild){return new Node();}; -/** - * function appendChild(newChild) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Node} newChild - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.appendChild = function(newChild){return new Node();}; -/** - * function hasChildNodes() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.hasChildNodes=function(){return false;}; -/** - * function cloneNode(deep) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Boolean} deep - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -Node.prototype.cloneNode=function(deep){return new Node();}; -/** - * function normalize() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.normalize = function(){}; -/** - * function isSupported(feature, version) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} feature - * @param {String} version - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.isSupported=function(feature, version){return false;}; -/** - * function hasAttributes() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Node.prototype.hasAttributes=function(){return false;}; - -/** - * Object NodeList() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Object - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Object - */ -function NodeList(){}; -NodeList.prototype = new Object(); -/** - * Property length - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -NodeList.prototype.length=0; -/** - * function item(index) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * Note: This object can also be dereferenced using square bracket notation (e.g. obj[1]). Dereferencing with an integer index is equivalent to invoking the item method with that index - * - * @param {Number} index - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node -*/ -NodeList.prototype.item = function(index){return new Node();}; - -/** - * Object NamedNodeMap() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Object - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Object - */ -function NamedNodeMap(){}; -NamedNodeMap.prototype = new Object(); -/** - * Property length - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -NamedNodeMap.prototype.length=0; -/** - * function getNamedItem(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -NamedNodeMap.prototype.getNamedItem=function(name){return new Node();}; -/** - * function setNamedItem(arg) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Node} arg - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -NamedNodeMap.prototype.setNamedItem=function(arg){return new Node();}; -/** - * function removeNamedItem(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -NamedNodeMap.prototype.removeNamedItem=function(name){return new Node();}; -/** - * function item(index) - * Note: This object can also be dereferenced using square bracket notation (e.g. obj[1]). Dereferencing with an integer index is equivalent to invoking the item method with that index. - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Number} index - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -NamedNodeMap.prototype.item=function(index){return new Node();}; -/** - * function getNamedItemNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -NamedNodeMap.prototype.getNamedItemNS=function(namespaceURI, localName){return new Node();}; -/** - * function setNamedItemNS(arg) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Node} arg - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -NamedNodeMap.prototype.setNamedItemNS=function(arg){return new Node();}; -/** - * function removeNamedItemNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @returns {Node} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -NamedNodeMap.prototype.removeNamedItemNS=function(namespaceURI, localName){return new Node();}; - -/** - * Object CharacterData() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function CharacterData(){}; -CharacterData.prototype=new Node(); -/** - * Property data - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -CharacterData.prototype.data=""; -/** - * Property length - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -CharacterData.prototype.length=0; -/** - * function substringData(offset, count) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Number} offset - * @param {Number} count - * @returns {String} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -CharacterData.prototype.substringData=function(offset, count){return "";}; -/** - * function appendData(arg) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} arg - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -CharacterData.prototype.appendData=function(arg){}; -/** - * function insertData(offset, arg) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Number} offset - * @param {String} arg - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -CharacterData.prototype.insertData=function(offset, arg){}; -/** - * function deleteData(offset, count) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Number} offset - * @param {Number} count - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -CharacterData.prototype.deleteData=function(offset, count){}; -/** - * function replaceData(offset, count, arg) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Number} offset - * @param {Number} count - * @param {String} arg - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -CharacterData.prototype.replaceData=function(offset, count, arg){}; - -/** - * Object Attr() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function Attr(){}; -Attr.prototype = new Node(); -/** - * Property name - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Attr.prototype.name = ""; -/** - * Property specified - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Attr.prototype.specified = false; -/** - * Property value - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Attr.prototype.value = ""; -/** - * Property ownerElement - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type Element - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Element - */ -Attr.prototype.ownerElement = new Element(); - -/** - * Object Element() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function Element(){}; -Element.prototype=new Node(); -/** - * Property tagName - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.tagName=""; -/** - * function addEventListener(Stirng type, Function listener, Boolean useCapture) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} type - * @param {Function} listener - * @param {Boolean} useCapture - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.addEventListener=function(type, listener, useCapture){}; -/** - * function attachEvent(String type, Function listener) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} type - * @param {Function} listener - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.attachEvent=function(type, listener){}; -/** - * function detachEvent(String type, Function listener) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} type - * @param {Function} listener - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.detachEvent=function(type, listener){}; -/** - * function dispatchEvent(Object event) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Object} event - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.dispatchEvent=function(event){return false;}; -/** - * function getAttribute(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.getAttribute=function(name){return "";}; -/** - * function setAttribute(name, value) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @param {String} value - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.setAttribute=function(name, value){}; -/** - * function removeAttribute(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.removeAttribute=function(name){}; -/** - * function getAttributeNode(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {Attr} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.getAttributeNode=function(name){return new Attr();}; -/** - * function setAttributeNode(newAttr) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Attr} newAttr - * @returns {Attr} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.setAttributeNode=function(newAttr){return new Attr();}; -/** - * function removeAttributeNode(oldAttr) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Attr} oldAttr - * @returns {Attr} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.removeAttributeNode=function(oldAttr){return new Attr();}; -/** - * function getElementsByTagName(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {NodeList} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.getElementsByTagName=function(name){return new NodeList();}; -/** - * function getAttributeNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @returns {String} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.getAttributeNS=function(namespaceURI, localName){return "";}; -/** - * function setAttributeNS(namespaceURI, qualifiedName, value) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} qualifiedName - * @param {String} value - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.setAttributeNS=function(namespaceURI, qualifiedName, value){}; -/** - * function removeAttributeNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.removeAttributeNS=function(namespaceURI, localName){}; -/** - * function getAttributeNodeNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @returns {Attr} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.getAttributeNodeNS=function(namespaceURI, localName){return new Attr();}; -/** - * function setAttributeNodeNS(newAttr) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Attr} newAttr - * @returns {Attr} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.setAttributeNodeNS=function(newAttr){return new Attr();}; -/** - * function getElementsByTagNameNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @returns {NodeList} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.getElementsByTagNameNS=function(namespaceURI, localName){return new NodeList();}; -/** - * function hasAttribute(name) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} name - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.hasAttribute=function(name){return false;}; -/** - * function hasAttributeNS(namespaceURI, localName) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {String} namespaceURI - * @param {String} localName - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Element.prototype.hasAttributeNS=function(namespaceURI, localName){return false;}; - -/** - * Object Text() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments CharacterData - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see CharacterData - */ -function Text(){}; -Text.prototype = new CharacterData(); -/** - * function splitText(offset) - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @param {Number} offset - * @returns {Text} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Text - */ -Text.prototype.splitText = function(offset) {return new Text();}; - -/** - * Object Comment() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments CharacterData - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see CharacterData - */ -function Comment(){}; -Comment.prototype = new CharacterData(); - -/** - * Object CDATASection() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Text - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Text - */ -function CDATASection(){}; -CDATASection.prototype = new Text(); - -/** - * Object DocumentType() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function DocumentType(){}; -DocumentType.prototype = new Node(); -/** - * Property name - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DocumentType.prototype.name=""; -/** - * Property entities - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type NamedNodeMap - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DocumentType.prototype.entities = new NamedNodeMap(); -/** - * Property notations - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type NamedNodeMap - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DocumentType.prototype.notations=new NamedNodeMap(); -/** - * Property publicId - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DocumentType.prototype.publicId=""; -/** - * Property systemId - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DocumentType.prototype.systemId=""; -/** - * Property internalSubset - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -DocumentType.prototype.internalSubset=""; - -/** - * Object Notation() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function Notation(){}; -Notation.prototype=new Node(); -/** - * Property publicId - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Notation.prototype.publicId=""; -/** - * Property systemId - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Notation.prototype.systemId=""; - -/** - * Object Entity() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function Entity(){}; -Entity.prototype=new Node(); -/** - * Property publicId - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Entity.prototype.publicId=""; -/** - * Property systemId - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Entity.prototype.systemId=""; -/** - * Property notationName - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Entity.prototype.notationName=""; - -/** - * Object EntityReference() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function EntityReference(){}; -EntityReference.prototype=new Node(); - -/** - * Object ProcessingInstruction() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @augments Node - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - * @see Node - */ -function ProcessingInstruction(){}; -ProcessingInstruction.prototype=new Node(); -/** - * Property target - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -ProcessingInstruction.prototype.target=""; -/** - * Property target - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html - * - * @type String - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -ProcessingInstruction.prototype.data=""; - - -/*HTML DOM Below this line*/ - -/** - * Object HTMLCollection() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments Object - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -function HTMLCollection(){}; -HTMLCollection.prototype = new Object(); -/** - * Property length - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLCollection.prototype.length=0; -/** - * function item(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLCollection.prototype.item = function(index){return new Node();}; -/** - * function namedItem(name) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {String} name - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLCollection.prototype.namedItem = function(index){return new Node();}; - -/** - * Object HTMLOptionsCollection() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments Object - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -function HTMLOptionsCollection(){}; -HTMLOptionsCollection.prototype = new Object(); -/** - * Property length - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionsCollection.prototype.length=0; -/** - * function item(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionsCollection.prototype.item = function(index){return new Node();}; -/** - * function namedItem(name) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {String} name - * @returns {Node} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionsCollection.prototype.namedItem = function(index){return new Node();}; - -/** - * Object HTMLDocument() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments Document - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see Document - */ -function HTMLDocument(){}; -HTMLDocument.prototype = new Document(); -/** - * Property title - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.title=""; -/** - * Property referrer - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.referrer=""; -/** - * Property domain - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.domain=""; -/** - * Property URL - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.URL=""; -/** - * Property body - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.body=new HTMLElement(); -/** - * Property images - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.images=new HTMLCollection(); -/** - * Property applets - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.applets=new HTMLCollection(); -/** - * Property links - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.links=new HTMLCollection(); -/** - * Property forms - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.forms=new HTMLCollection(); -/** - * Property anchors - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.anchors=new HTMLCollection(); -/** - * Property cookie - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.cookie=""; -/** - * Property lastModified - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.lastModified=""; -/** - * function open() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.open = function(){}; -/** - * function close() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.close = function(){}; -/** - * function write(text) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {String} text - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.write = function(text){}; -/** - * function writeln(text) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {String} text - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.writeln = function(text){}; -/** - * function getElementsByName(elementName) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {String} elementName - * @returns {NodeList} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDocument.prototype.getElementsByName = function(elementName){return new NodeList();}; - -/** - * Object HTMLElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments Element - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see Element - */ -function HTMLElement(){}; -HTMLElement.prototype = new Element(); -/** - * Property id - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLElement.prototype.id=""; -/** - * Property title - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLElement.prototype.title=""; -/** - * Property lang - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLElement.prototype.lang=""; -/** - * Property dir - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLElement.prototype.dir=""; -/** - * Property className - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLElement.prototype.className=""; -/** - * Property innerHTML - * - * @type String - */ -HTMLElement.prototype.innerHTML=""; -/** - * Property offsetHeight - * - * @type Number - */ -HTMLElement.prototype.offsetHeight=0; -/** - * Property offsetWidth - * - * @type Number - */ -HTMLElement.prototype.offsetWidth=0; -/** - * Property offsetLeft - * - * @type Number - */ -HTMLElement.prototype.offsetLeft=0; -/** - * Property offsetTop - * - * @type Number - */ -HTMLElement.prototype.offsetTop=0; -/** - * Property offsetParent - * - * @type HTMLElement - */ -HTMLElement.prototype.offsetParent = new HTMLElement(); -/** - * Property scrollHeight - * - * @type Number - */ -HTMLElement.prototype.scrollHeight=0; -/** - * Property scrollWidth - * - * @type Number - */ -HTMLElement.prototype.scrollWidth=0; -/** - * Property scrollLeft - * - * @type Number - */ -HTMLElement.prototype.scrollLeft=0; -/** - * Property scrollTop - * - * @type Number - */ -HTMLElement.prototype.scrollTop=0; -/** - * Property style - * - * @type CSS2Properties - */ -HTMLElement.prototype.style = new CSS2Properties(); - -/** - * Object HTMLHtmlElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLHtmlElement(){}; -HTMLHtmlElement.prototype = new HTMLElement(); -/** - * Property version - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLHtmlElement.prototype.version=""; - -/** - * Object HTMLHeadElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLHeadElement(){}; -HTMLHeadElement.prototype = new HTMLElement(); -/** - * Property profile - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLHeadElement.prototype.profile=""; - -/** - * Object HTMLLinkElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLLinkElement(){}; -HTMLLinkElement.prototype = new HTMLElement(); -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.disabled=false; -/** - * Property charset - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.charset=""; -/** - * Property href - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.href=""; -/** - * Property hreflang - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.hreflang=""; -/** - * Property media - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.media=""; -/** - * Property rel - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.rel=""; -/** - * Property rev - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.rev=""; -/** - * Property target - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.target=""; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLinkElement.prototype.type=""; - -/** - * Object HTMLTitleElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTitleElement(){}; -HTMLTitleElement.prototype = new HTMLElement(); -/** - * Property text - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTitleElement.prototype.text=""; - -/** - * Object HTMLMetaElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLMetaElement(){}; -HTMLMetaElement.prototype = new HTMLElement(); -/** - * Property content - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLMetaElement.prototype.content=""; -/** - * Property httpEquiv - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLMetaElement.prototype.httpEquiv=""; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLMetaElement.prototype.name=""; -/** - * Property scheme - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLMetaElement.prototype.scheme=""; - -/** - * Object HTMLBaseElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLBaseElement(){}; -HTMLBaseElement.prototype = new HTMLElement(); -/** - * Property href - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBaseElement.prototype.href=""; -/** - * Property target - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBaseElement.prototype.target=""; - -/** - * Object HTMLIsIndexElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLIsIndexElement(){}; -HTMLIsIndexElement.prototype = new HTMLElement(); -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIsIndexElement.prototype.form=new HTMLFormElement(); -/** - * Property prompt - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIsIndexElement.prototype.prompt=""; - -/** - * Object HTMLStyleElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLStyleElement(){}; -HTMLStyleElement.prototype = new HTMLElement(); -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLStyleElement.prototype.disabled=false; -/** - * Property media - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLStyleElement.prototype.media=""; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLStyleElement.prototype.type=""; - -/** - * Object HTMLBodyElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLBodyElement(){}; -HTMLBodyElement.prototype = new HTMLElement(); -/** - * Property aLink - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBodyElement.prototype.aLink=""; -/** - * Property background - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBodyElement.prototype.background=""; -/** - * Property bgColor - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBodyElement.prototype.bgColor=""; -/** - * Property link - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBodyElement.prototype.link=""; -/** - * Property text - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBodyElement.prototype.text=""; -/** - * Property vLink - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBodyElement.prototype.vLink=""; - -/** - * Object HTMLFormElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLFormElement(){}; -HTMLFormElement.prototype = new HTMLElement(); -/** - * Property elements - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.elements=new HTMLCollection(); -/** - * Property length - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.length=0; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.name=""; -/** - * Property acceptCharset - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.acceptCharset=""; -/** - * Property action - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.action=""; -/** - * Property enctype - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.enctype=""; -/** - * Property method - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.method=""; -/** - * Property target - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.target=""; -/** - * function submit() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.submit = function(){}; -/** - * function reset() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFormElement.prototype.reset = function(){}; - -/** - * Object HTMLSelectElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLSelectElement(){}; -HTMLSelectElement.prototype = new HTMLElement(); -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.type=""; -/** - * Property selectedIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.selectedIndex=0; -/** - * Property value - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.value=""; -/** - * Property length - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.length=0; -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.form = new HTMLFormElement(); -/** - * Property options - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLOptionsCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.options= new HTMLOptionsCollection(); -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.disabled=false; -/** - * Property multiple - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.multiple=false; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.name=""; -/** - * Property size - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.size=0; -/** - * Property tabIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.tabIndex=0; -/** - * function add(element, before) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {HTMLElement} element - * @param {HTMLElement} before - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.add = function(element, before){}; -/** - * function remove(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.remove = function(index){}; -/** - * function blur() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.blur = function(){}; -/** - * function focus() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLSelectElement.prototype.focus = function(){}; - -/** - * Object HTMLOptGroupElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLOptGroupElement(){}; -HTMLOptGroupElement.prototype = new HTMLElement(); -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptGroupElement.prototype.disabled=false; -/** - * Property label - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptGroupElement.prototype.label=""; - -/** - * Object Option() - * @constructor - * @param {String} text - * @param {String} value - * @param {Boolean} defaultSelected - * @param {Boolean} selected - */ -function Option(text, value, defaultSelected, selected){}; -Option.prototype = new HTMLOptionElement(); -/** - * Object HTMLOptionElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLOptionElement(){}; -HTMLOptionElement.prototype = new HTMLElement(); -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.form = new HTMLFormElement(); -/** - * Property defaultSelected - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.defaultSelected=false; -/** - * Property text - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.text=""; -/** - * Property index - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.index=0; -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.disabled=false; -/** - * Property label - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.label=""; -/** - * Property selected - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.selected=false; -/** - * Property value - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOptionElement.prototype.value=""; - -/** - * Object HTMLInputElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLInputElement(){}; -HTMLInputElement.prototype = new HTMLElement(); -/** - * Property defaultValue - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.defaultValue=""; -/** - * Property defaultChecked - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.defaultChecked=false; -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.form = new HTMLFormElement(); -/** - * Property accept - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.accept=""; -/** - * Property accessKey - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.accessKey=""; -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.align=""; -/** - * Property alt - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.alt=""; -/** - * Property checked - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.checked=false; -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.disabled=false; -/** - * Property masLength - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.maxLenght=0; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.name=""; -/** - * Property readOnly - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.readOnly=false; -/** - * Property size - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.size=0; -/** - * Property src - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.src=""; -/** - * Property tabIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.tabIndex=0; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.type=""; -/** - * Property useMap - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.useMap=""; -/** - * Property value - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.value=""; -/** - * function blur() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.blur = function(){}; -/** - * function focus() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.focus = function(){}; -/** - * function select() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.select = function(){}; -/** - * function click() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLInputElement.prototype.click = function(){}; - -/** - * Object HTMLTextAreaElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTextAreaElement(){}; -HTMLTextAreaElement.prototype = new HTMLElement(); -/** - * Property defaultValue - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.defaultValue=""; -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.form= new HTMLFormElement(); -/** - * Property accessKey - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.accessKey=""; -/** - * Property cols - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.cols=0; -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.disabled=false; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.name=""; -/** - * Property readOnly - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.readOnly=false; -/** - * Property rows - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.rows=0; -/** - * Property tabIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.tabIndex=0; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.type=""; -/** - * Property value - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.value=""; -/** - * function blur() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.blur = function(){}; -/** - * function focus() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.focus = function(){}; -/** - * function select() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTextAreaElement.prototype.select = function(){}; - -/** - * Object HTMLButtonElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLButtonElement(){}; -HTMLButtonElement.prototype = new HTMLElement(); -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLButtonElement.prototype.form = new HTMLFormElement(); -/** - * Property accessKey - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLButtonElement.prototype.accessKey = ""; -/** - * Property disabled - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLButtonElement.prototype.disabled=false; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLButtonElement.prototype.name=""; -/** - * Property tabIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLButtonElement.prototype.tabIndex=0; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLButtonElement.prototype.type=""; -/** - * Property value - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLButtonElement.prototype.value=""; - -/** - * Object HTMLLabelElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLLabelElement(){}; -HTMLLabelElement.prototype = new HTMLElement(); -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLabelElement.prototype.form = new HTMLFormElement(); -/** - * Property accessKey - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLabelElement.prototype.accessKey=""; -/** - * Property htmlFor - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLabelElement.prototype.htmlFor=""; - -/** - * Object HTMLFieldSetElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLFieldSetElement(){}; -HTMLFieldSetElement.prototype = new HTMLElement(); -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFieldSetElement.prototype.form = new HTMLFormElement(); - -/** - * Object HTMLLegendElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLLegendElement(){}; -HTMLLegendElement.prototype = new HTMLElement(); -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLegendElement.prototype.form = new HTMLFormElement(); -/** - * Property accessKey - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLegendElement.prototype.accessKey=""; -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLegendElement.prototype.align=""; - -/** - * Object HTMLUListElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLUListElement(){}; -HTMLUListElement.prototype = new HTMLElement(); -/** - * Property compact - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLUListElement.prototype.compact=false; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLUListElement.prototype.type=""; - -/** - * Object HTMLOListElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLOListElement(){}; -HTMLOListElement.prototype = new HTMLElement(); -/** - * Property compact - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOListElement.prototype.compact=false; -/** - * Property start - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOListElement.prototype.start=0; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLOListElement.prototype.type=""; - -/** - * Object HTMLDListElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLDListElement(){}; -HTMLDListElement.prototype = new HTMLElement(); -/** - * Property compact - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDListElement.prototype.compact=false; - -/** - * Object HTMLDirectoryElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLDirectoryElement(){}; -HTMLDirectoryElement.prototype = new HTMLElement(); -/** - * Property compact - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDirectoryElement.prototype.compact=false; - -/** - * Object HTMLMenuElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLMenuElement(){}; -HTMLMenuElement.prototype = new HTMLElement(); -/** - * Property compact - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLMenuElement.prototype.compact=false; - -/** - * Object HTMLLIElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLLIElement(){}; -HTMLLIElement.prototype = new HTMLElement(); -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLIElement.prototype.type=""; -/** - * Property value - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLLIElement.prototype.value=0; - -/** - * Object HTMLDivElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLDivElement(){}; -HTMLDivElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLDivElement.prototype.align=""; - -/** - * Object HTMLParagraphElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLParagraphElement(){}; -HTMLParagraphElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLParagraphElement.prototype.align=""; - -/** - * Object HTMLHeadingElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLHeadingElement(){}; -HTMLHeadingElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLHeadingElement.prototype.align=""; - -/** - * Object HTMLQuoteElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLQuoteElement(){}; -HTMLQuoteElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLQuoteElement.prototype.align=""; - -/** - * Object HTMLPreElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLPreElement(){}; -HTMLPreElement.prototype = new HTMLElement(); -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLPreElement.prototype.width=0; - -/** - * Object HTMLBRElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLBRElement(){}; -HTMLBRElement.prototype = new HTMLElement(); -/** - * Property clear - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBRElement.prototype.clear=""; - -/** - * Object HTMLBaseFontElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLBaseFontElement(){}; -HTMLBaseFontElement.prototype = new HTMLElement(); -/** - * Property color - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBaseFontElement.prototype.color=""; -/** - * Property face - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBaseFontElement.prototype.face=""; -/** - * Property size - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLBaseFontElement.prototype.size=0; - -/** - * Object HTMLBaseFontElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLFontElement(){}; -HTMLFontElement.prototype = new HTMLElement(); -/** - * Property color - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFontElement.prototype.color=""; -/** - * Property face - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFontElement.prototype.face=""; -/** - * Property size - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFontElement.prototype.size=0; - -/** - * Object HTMLHRElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLHRElement(){}; -HTMLHRElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLHRElement.prototype.align=""; -/** - * Property noShade - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLHRElement.prototype.noShade=false; -/** - * Property size - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLHRElement.prototype.size=""; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLHRElement.prototype.width=""; - -/** - * Object HTMLModElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLModElement(){}; -HTMLModElement.prototype = new HTMLElement(); -/** - * Property cite - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLModElement.prototype.cite=""; -/** - * Property dateTime - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLModElement.prototype.dateTime=""; - -/** - * Object HTMLAnchorElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLAnchorElement(){}; -HTMLAnchorElement.prototype = new HTMLElement(); -/** - * Property accessKey - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.accessKey=""; -/** - * Property charset - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.charset=""; -/** - * Property coords - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.coords=""; -/** - * Property href - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.href=""; -/** - * Property hreflang - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.hreflang=""; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.name=""; -/** - * Property rel - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.rel=""; -/** - * Property rev - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.rev=""; -/** - * Property shape - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.shape=""; -/** - * Property tabIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.tabIndex=0; -/** - * Property target - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.target=""; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.type=""; -/** - * function blur() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.blur = function(){}; -/** - * function focus() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAnchorElement.prototype.focus = function(){}; - -/** - * Object Image() - * @constructor - * @param {Number} width - * @param {Number} height - */ -function Image(width, height){}; -Image.prototype = new HTMLImageElement(); -/** - * Object HTMLImageElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLImageElement(){}; -HTMLImageElement.prototype = new HTMLElement(); -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.name=""; -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.align=""; -/** - * Property alt - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.alt=""; -/** - * Property border - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.border=""; -/** - * Property height - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.height=0; -/** - * Property hspace - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.hspace=0; -/** - * Property isMap - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.isMap=false; -/** - * Property longDesc - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.longDesc=""; -/** - * Property src - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.src=""; -/** - * Property useMap - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.useMap=""; -/** - * Property vspace - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.vspace=0; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLImageElement.prototype.width=0; - -/** - * Object HTMLObjectElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLObjectElement(){}; -HTMLObjectElement.prototype = new HTMLElement(); -/** - * Property form - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLFormElement - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.form = new HTMLFormElement(); -/** - * Property code - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.code=""; -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.align=""; -/** - * Property archive - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.archive=""; -/** - * Property border - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.border=""; -/** - * Property codeBase - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.codeBase=""; -/** - * Property codeType - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.codeType=""; -/** - * Property data - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.data=""; -/** - * Property declare - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.declare=false; -/** - * Property height - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.height=""; -/** - * Property hspace - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.hspace=0; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.name=""; -/** - * Property standby - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.standby=""; -/** - * Property tabIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.tabIndex=0; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.type=""; -/** - * Property useMap - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.useMap=""; -/** - * Property vspace - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.vspace=0; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.width=""; -/** - * Property contentDocument - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Document - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLObjectElement.prototype.contentDocument= new HTMLDocument(); - -/** - * Object HTMLParamElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLParamElement(){}; -HTMLParamElement.prototype = new HTMLElement(); -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLParamElement.prototype.name=""; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLParamElement.prototype.type=""; -/** - * Property value - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLParamElement.prototype.value=""; -/** - * Property valueType - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLParamElement.prototype.valueType=""; - -/** - * Object HTMLAppletElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLAppletElement(){}; -HTMLAppletElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.align=""; -/** - * Property alt - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.alt=""; -/** - * Property archive - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.archive=""; -/** - * Property code - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.code=""; -/** - * Property codeBase - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.codeBase=""; -/** - * Property height - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.hight=""; -/** - * Property hspace - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.hspace=0; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.name=""; -/** - * Property object - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.object=""; -/** - * Property vspace - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.vspace=0; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAppletElement.prototype.width=""; - -/** - * Object HTMLMapElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLMapElement(){}; -HTMLMapElement.prototype = new HTMLElement(); -/** - * Property areas - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLMapElement.prototype.areas = new HTMLCollection(); -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLMapElement.prototype.name=""; - -/** - * Object HTMLAreaElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLAreaElement(){}; -HTMLAreaElement.prototype = new HTMLElement(); -/** - * Property accessKey - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.accessKey=""; -/** - * Property alt - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.alt=""; -/** - * Property coords - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.coords=""; -/** - * Property href - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.href=""; -/** - * Property noHref - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.noHref=false; -/** - * Property shape - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.shape=""; -/** - * Property tabIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.tabIndex=0; -/** - * Property target - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLAreaElement.prototype.target=""; - -/** - * Object HTMLScriptElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLScriptElement(){}; -HTMLScriptElement.prototype = new HTMLElement(); -/** - * Property text - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLScriptElement.prototype.text=""; -/** - * Property htmlFor - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLScriptElement.prototype.htmlFor=""; -/** - * Property event - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLScriptElement.prototype.event=""; -/** - * Property charset - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLScriptElement.prototype.charset=""; -/** - * Property defer - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLScriptElement.prototype.defer=""; -/** - * Property src - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLScriptElement.prototype.src=""; -/** - * Property type - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLScriptElement.prototype.type=""; - -/** - * Object HTMLTableElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTableElement(){}; -HTMLTableElement.prototype = new HTMLElement(); -/** - * Property caption - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLTableCaptionElement - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.caption = new HTMLTableCaptionElement(); -/** - * Property tHead - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLTableSectionElement - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.tHead = new HTMLTableSelectionElement(); -/** - * Property tFoot - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLTableSectionElement - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.tFoot = new HTMLTableSelectionElement(); -/** - * Property rows - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.rows = new HTMLCollection(); -/** - * Property tBodies - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.tBodies = new HTMLCollection(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.align=""; -/** - * Property bgColor - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.bgColor=""; -/** - * Property border - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.border=""; -/** - * Property cellPadding - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.cellPadding=""; -/** - * Property cellSpacing - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.cellSpacing=""; -/** - * Property frame - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.frame=""; -/** - * Property rules - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.rules=""; -/** - * Property summary - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.summary=""; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.width=""; -/** - * function createTHead(); - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @returns {HTMLElement} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.createTHead = function(){return new HTMLElement();}; -/** - * function deleteTHead(); - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.deleteTHead = function(){}; -/** - * function createTFoot(); - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @returns {HTMLElement} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.createTFoot = function(){return new HTMLElement();}; -/** - * function deleteTFoot(); - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.deleteTFoot = function(){}; -/** - * function createCaption(); - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @returns {HTMLElement} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.createCaption = function(){return new HTMLElement();}; -/** - * function deleteCaption(); - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.deleteCaption = function(){}; -/** - * function insertRow(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @returns {HTMLElement} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.insertRow = function(index){return new HTMLElement();}; -/** - * function deleteRow(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableElement.prototype.deleteRow = function(index){}; - -/** - * Object HTMLTableCaptionElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTableCaptionElement(){}; -HTMLTableCaptionElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCaptionElement.prototype.align=""; - -/** - * Object HTMLTableColElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTableColElement(){}; -HTMLTableColElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableColElement.prototype.align=""; -/** - * Property ch - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableColElement.prototype.ch=""; -/** - * Property chOff - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableColElement.prototype.chOff=""; -/** - * Property span - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableColElement.prototype.span=0; -/** - * Property vAlign - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableColElement.prototype.vAlign=""; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableColElement.prototype.width=""; - -/** - * Object HTMLTableSelectionElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTableSelectionElement(){}; -HTMLTableSelectionElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableSelectionElement.prototype.align=""; -/** - * Property ch - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableSelectionElement.prototype.ch=""; -/** - * Property chOff - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableSelectionElement.prototype.chOff=""; -/** - * Property vAlign - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableSelectionElement.prototype.vAlign=""; -/** - * Property rows - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableSelectionElement.prototype.rows=""; -/** - * function insertRow(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @returns {HTMLElement} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableSelectionElement.prototype.insertRow = function(index){return new HTMLElement();}; -/** - * function deleteRow(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableSelectionElement.prototype.deleteRow = function(index){}; - -/** - * Object HTMLTableRowElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTableRowElement(){}; -HTMLTableRowElement.prototype = new HTMLElement(); -/** - * Property rowIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.rowIndex=0; -/** - * Property sectionRowIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.sectionRowIndex=0; -/** - * Property cells - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type HTMLCollection - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.cells = new HTMLCollection(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.align=""; -/** - * Property bgColor - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.bgColor=""; -/** - * Property ch - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.ch=""; -/** - * Property chOff - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.chOff=""; -/** - * Property vAlign - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.vAlign=""; -/** - * function insertCell(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @returns {HTMLElement} - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.insertCell = function(index){return new HTMLElement();}; -/** - * function insertCell(index) - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @param {Number} index - * @throws DOMException - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableRowElement.prototype.deleteCell = function(index){}; - -/** - * Object HTMLTableRowElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLTableCellElement(){}; -HTMLTableCellElement.prototype = new HTMLElement(); -/** - * Property cellIndex - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.cellIndex=0; -/** - * Property abbr - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.abbr=""; -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.align=""; -/** - * Property axis - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.axis=""; -/** - * Property bgColor - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.bgColor=""; -/** - * Property ch - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.ch=""; -/** - * Property chOff - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.chOff=""; -/** - * Property colSpan - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.colSpan=0; -/** - * Property headers - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.headers=""; -/** - * Property height - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.height=""; -/** - * Property noWrap - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.noWrap=false; -/** - * Property rowSpan - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.rowSpan=0; -/** - * Property scope - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.scope=""; -/** - * Property vAlign - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.vAlign=""; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLTableCellElement.prototype.width=""; - -/** - * Object HTMLFrameSetElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLFrameSetElement(){}; -HTMLFrameSetElement.prototype = new HTMLElement(); -/** - * Property cols - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameSetElement.prototype.cols=""; -/** - * Property rows - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameSetElement.prototype.rows=""; - -/** - * Object HTMLFrameElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLFrameElement(){}; -HTMLFrameElement.prototype = new HTMLElement(); -/** - * Property frameBorder - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.frameBorder=""; -/** - * Property longDesc - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.longDesc=""; -/** - * Property marginHeight - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.marginHeight=""; -/** - * Property marginWidth - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.marginWidth=""; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.name=""; -/** - * Property noResize - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Boolean - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.noResize=false; -/** - * Property scrolling - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.scrolling=""; -/** - * Property src - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.src=""; -/** - * Property contentDocument - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Document - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLFrameElement.prototype.contentDocument= new HTMLDocument(); - -/** - * Object HTMLIFrameElement() - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @augments HTMLElement - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - * @see HTMLElement - */ -function HTMLIFrameElement(){}; -HTMLIFrameElement.prototype = new HTMLElement(); -/** - * Property align - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.align=""; -/** - * Property frameBorder - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.frameBorder=""; -/** - * Property height - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.height=""; -/** - * Property longDesc - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.longDesc=""; -/** - * Property marginHeight - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.marginHeight=""; -/** - * Property marginWidth - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.marginWidth=""; -/** - * Property name - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.name=""; -/** - * Property scrolling - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.scrolling=""; -/** - * Property src - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.src=""; -/** - * Property width - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.width=""; -/** - * Property contentDocument - * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html - * - * @type Document - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model HTML Specification. - */ -HTMLIFrameElement.prototype.contentDocument= new HTMLDocument(); - -/* Stylesheets */ -/** - * Object CSS2Properties() - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/ecma-script-binding.html - * - * @augments Object - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Style Specification. - */ -function CSS2Properties(){}; -CSS2Properties.prototype = new Object(); \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/browserWindow.js b/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/browserWindow.js deleted file mode 100644 index cfbf452..0000000 --- a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/browserWindow.js +++ /dev/null @@ -1,618 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2013 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -function BarProp(){}; -BarProp.prototype = new Array(); - -/** - * Object Window() - * @super Global - * @constructor - * @since Common Usage, no standard -*/ -function Window(){}; -Window.prototype = new EventTarget(); -Window.prototype.self = new Window(); -Window.prototype.window = new Window(); -Window.prototype.frames = new Array(); -/** - * Property closed - * @type Boolean - * @memberOf Window - */ -Window.prototype.closed = new Boolean(); -/** - * Property defaultStatus - * @type String - * @memberOf Window - */ -Window.prototype.defaultStatus = ""; -/** - * Property document - * @type Document - * @memberOf Window - */ -Window.prototype.document= new HTMLDocument(); -/** - * Property history - * @type History - * @memberOf Window - */ -Window.prototype.history= new History(); -/** - * Property location - * @type Location - * @memberOf Window - */ -Window.prototype.location=new Location(); -/** - * Property name - * @type String - * @memberOf Window - */ -Window.prototype.name = ""; -/** - * Property navigator - * @type Navigator - * @memberOf Window - */ -Window.prototype.navigator = new Navigator(); -/** - * Property opener - * @type Window - * @memberOf Window - */ -Window.prototype.opener = new Window(); -/** - * Property outerWidth - * @type Number - * @memberOf Window - */ -Window.prototype.outerWidth = 0; -/** - * Property outerHeight - * @type Number - * @memberOf Window - */ -Window.prototype.outerHeight = 0; -/** - * Property pageXOffset - * @type Number - * @memberOf Window - */ -Window.prototype.pageXOffset = 0; -/** - * Property pageYOffset - * @type Number - * @memberOf Window - */ -Window.prototype.pageYOffset = 0; -/** - * Property parent - * @type Window - * @memberOf Window - */ -Window.prototype.parent = new Window(); -/** - * Property screen - * @type Screen - * @memberOf Window - */ -Window.prototype.screen = new Screen(); -/** - * Property status - * @type String - * @memberOf Window - */ -Window.prototype.status = ""; -/** - * Property top - * @type Window - * @memberOf Window - */ -Window.prototype.top = new Window(); - - -/* - * These properties may need to be moved into a browswer specific library. - */ - - /** - * Property innerWidth - * @type Number - * @memberOf Window - */ -Window.prototype.innerWidth = 0; -/** - * Property innerHeight - * @type Number - * @memberOf Window - */ -Window.prototype.innerHeight = 0; -/** - * Property screenX - * @type Number - * @memberOf Window - */ -Window.prototype.screenX = 0; -/** - * Property screenY - * @type Number - * @memberOf Window - */ -Window.prototype.screenY = 0; -/** - * Property screenLeft - * @type Number - * @memberOf Window - */ -Window.prototype.screenLeft = 0; -/** - * Property screenTop - * @type Number - * @memberOf Window - */ -Window.prototype.screenTop = 0; -//Window.prototype.event = new Event(); -Window.prototype.length = 0; -Window.prototype.scrollbars= new BarProp(); -Window.prototype.scrollX=0; -Window.prototype.scrollY=0; -Window.prototype.content= new Window(); -Window.prototype.menubar= new BarProp(); -Window.prototype.toolbar= new BarProp(); -Window.prototype.locationbar= new BarProp(); -Window.prototype.personalbar= new BarProp(); -Window.prototype.statusbar= new BarProp(); -Window.prototype.directories= new BarProp(); -Window.prototype.scrollMaxX=0; -Window.prototype.scrollMaxY=0; -Window.prototype.fullScreen=""; -Window.prototype.frameElement=""; -/* End properites */ - -/** - * function alert() - * @param {String} message - * @memberOf Window - */ -Window.prototype.alert = function(message){}; -/** - * function blur() - * @memberOf Window - */ -Window.prototype.blur = function(){}; -/** - * function clearInterval(intervalID) - * @param intervalID - * @memberOf Window - */ -Window.prototype.clearInterval = function(intervalID){}; -/** - * function clearTimeout(intervalID) - * @param intervalID - * @memberOf Window - */ -Window.prototype.clearTimeout = function(intervalID){}; -/** - * function close() - * @memberOf Window - */ -Window.prototype.close = function(){}; -/** - * function confirm() - * @param {String} arg - * @memberOf Window - * @returns {Boolean} - */ -Window.prototype.confirm = function(arg){return false;}; -/** - * function focus() - * @memberOf Window - */ -Window.prototype.focus = function(){}; -/** - * function getComputedStyle(element, pseudoElt ) - * @param {Element} element - * @param {String} pseudoElt - * @memberOf Window - * @returns {Object} - */ -Window.prototype.getComputedStyle = function(element,pseudoElt ){return new Object();}; -/** - * function moveTo(x, y) - * @param {Number} x - * @param {Number} y - * @memberOf Window - */ -Window.prototype.moveTo = function(x,y){}; -/** - * function moveBy(deltaX, deltaY) - * @param {Number} deltaX - * @param {Number} deltaY - * @memberOf Window - */ -Window.prototype.moveBy = function(deltaX,deltaY){}; -/** - * function open(optionalArg1, optionalArg2, optionalArg3, optionalArg4) - * @param {String} url - * @param {String} windowName - * @param {String} windowFeatures - * @param {Boolean} optionalArg4 - * @memberOf Window - * @returns {Window} - */ -Window.prototype.open = function(url, windowName, windowFeatures, optionalArg4){return new Window();}; -/** - * function print() - * @memberOf Window - */ -Window.prototype.print = function(){}; -/** - * function prompt(text, value) - * @param {String} text - * @param {String} value - * @memberOf Window - * @returns {String} - */ -Window.prototype.prompt = function(text, value){return "";}; -/** - * function resizeTo(newOuterWidth,newOuterHeight) - * @param {Number} newOuterWidth - * @param {Number} newOuterHeighr - * @memberOf Window - */ -Window.prototype.resizeTo=function(newOuterWidth,newOuterHeight){}; -/** - * function resizeBy(deltaX, deltaY) - * @param {Number} deltaX - * @param {Number} deltaY - * @memberOf Window - */ -Window.prototype.resizeBy=function(deltaX,deltaY){}; -/** - * function scrollTo(x,y) - * @param {Number} x - * @param {Number} y - * @memberOf Window - */ -Window.prototype.scrollTo=function(x,y){}; -/** - * function scrollBy(pixelX,pixelY) - * @param {Number} pixelX - * @param {Number} pixelY - * @memberOf Window - */ -Window.prototype.scrollBy=function(pixelX,pixelY){}; -/** - * function setInterval(arg1, arg2) - * @param {Function} callback - * @param {Number} delay - * @memberOf Window - * @returns {Number} - */ -Window.prototype.setInterval=function(callback, delay){return 0;}; -/** - * function setTimeout(callback, delay) - * @param {Function} callback - * @param {Number} delay - * @memberOf Window - * @returns {Number} - */ -Window.prototype.setTimeout=function(callback, delay){ return 0;}; -/** - * function atob(encodedData) - * @param {String} encodedData - * @memberOf Window - * @returns {String} - */ -Window.prototype.atob=function(encodedData){return "";}; -/** - * function btoa(arg) - * @param {String} stringToEncode - * @memberOf Window - * @returns {String} - */ -Window.prototype.btoa=function(stringToEncode){return "";}; -/** - * function setResizable(resizable) - * @param {Boolean} resizable - * @memberOf Window - */ -Window.prototype.setResizable=function(resizable){}; - -Window.prototype.captureEvents=function(eventType){}; -Window.prototype.releaseEvents=function(eventType){}; -Window.prototype.routeEvent=function(eventType){}; -Window.prototype.enableExternalCapture=function(){}; -Window.prototype.disableExternalCapture=function(){}; -Window.prototype.find=function(){}; -Window.prototype.back=function(){}; -Window.prototype.forward=function(){}; -Window.prototype.home=function(){}; -Window.prototype.stop=function(){}; -/** - * @param {Number} pixelX - * @param {Number} pixelY - */ -Window.prototype.scroll=function(pixelX,pixelY){}; -/* End functions */ - -/** - * Object History() - * @super Object - * @constructor - * @since Common Usage, no standard - */ -function History(){}; -History.prototype=new Object(); -History.prototype.history = new History(); -/** - * Property length - * @type Number - * @memberOf History - */ -History.prototype.length = 0; -/** - * function back() - * @memberOf History - */ -History.prototype.back = function(){}; -/** - * function forward() - * @memberOf History - */ -History.prototype.forward = function(){}; -/** - * function back() - * @param arg - * @memberOf History - */ -History.prototype.go = function(arg){}; - -/** - * Object Location() - * @super Object - * @constructor - * @since Common Usage, no standard - */ -function Location(){}; -Location.prototype = new Object(); -Location.prototype.location = new Location(); -/** - * Property hash - * @type String - * @memberOf Location - */ -Location.prototype.hash = ""; -/** - * Property host - * @type String - * @memberOf Location - */ -Location.prototype.host = ""; -/** - * Property hostname - * @type String - * @memberOf Location - */ -Location.prototype.hostname = ""; -/** - * Property href - * @type String - * @memberOf Location - */ -Location.prototype.href = ""; -/** - * Property pathname - * @type String - * @memberOf Location - */ -Location.prototype.pathname = ""; -/** - * Property port - * @type String - * @memberOf Location - */ -Location.prototype.port = ""; -/** - * Property protocol - * @type String - * @memberOf Location - */ -Location.prototype.protocol = ""; -/** - * Property search - * @type String - * @memberOf Location - */ -Location.prototype.search = ""; -/** - * function assign(arg) - * @param {String} arg - * @memberOf Location - */ -Location.prototype.assign = function(arg){}; -/** - * function reload(optionalArg) - * @param {Boolean} optionalArg - * @memberOf Location - */ -Location.prototype.reload = function(optionalArg){}; -/** - * function replace(arg) - * @param {String} arg - * @memberOf Location - */ -Location.prototype.replace = function(arg){}; - -/** - * Object Navigator() - * @super Object - * @constructor - * @since Common Usage, no standard -*/ -function Navigator(){}; -Navigator.prototype = new Object(); -Navigator.prototype.navigator = new Navigator(); -/** - * Property appCodeName - * @type String - * @memberOf Navigator - */ -Navigator.prototype.appCodeName = ""; -/** - * Property appName - * @type String - * @memberOf Navigator - */ -Navigator.prototype.appName = ""; -/** - * Property appVersion - * @type String - * @memberOf Navigator - */ -Navigator.prototype.appVersion = ""; -/** - * Property cookieEnabled - * @type Boolean - * @memberOf Navigator - */ -Navigator.prototype.cookieEnabled = new Boolean(); -/** - * Property mimeTypes - * @type Array - * @memberOf Navigator - */ -Navigator.prototype.mimeTypes = new Array(); -/** - * Property platform - * @type String - * @memberOf Navigator - */ -Navigator.prototype.platform = ""; -/** - * Property plugins - * @type Array - * @memberOf Navigator - */ -Navigator.prototype.plugins = new Array(); -/** - * Property userAgent - * @type String - * @memberOf Navigator - */ -Navigator.prototype.userAgent = ""; -/** - * function javaEnabled() - * @returns {Boolean} - * @memberOf Navigator - */ -Navigator.prototype.javaEnabled = function(){return false;}; - -/** - * Object Screen() - * @super Object - * @constructor - * @since Common Usage, no standard -*/ -function Screen(){}; -Screen.prototype = new Object(); -Screen.prototype.screen = new Screen(); -/** - * Property availHeight - * @type Number - * @memberOf Screen - */ -Navigator.prototype.availHeight = 0; -/** - * Property availWidth - * @type Number - * @memberOf Screen - */ -Navigator.prototype.availWidth = 0; -/** - * Property colorDepth - * @type Number - * @memberOf Screen - */ -Navigator.prototype.colorDepth = 0; -/** - * Property height - * @type Number - * @memberOf Screen - */ -Navigator.prototype.height = 0; -/** - * Property width - * @type Number - * @memberOf Screen - */ -Navigator.prototype.width = 0; - -Event.prototype=new Object(); -// PhaseType -Event.prototype.CAPTURING_PHASE = 1; -Event.prototype.AT_TARGET = 2; -Event.prototype.BUBBLING_PHASE = 3; - -Event.prototype.type=""; -Event.prototype.target=new EventTarget(); -Event.prototype.currentTarget=new EventTarget(); -Event.prototype.eventPhase=0; -Event.prototype.bubbles=false; -Event.prototype.cancelable=false; -Event.prototype.timeStamp=0; -Event.prototype.stopPropagation=function(){}; -Event.prototype.preventDefault=function(){}; -/** - * @param {String} eventTypeArg - * @param {Boolean} canBubbleArg - * @param {Boolean} cancelableArg - */ -Event.prototype.initEvent=function(eventTypeArg, - canBubbleArg, - cancelableArg){}; -function EventListener(){}; -EventListener.prototype=new Object(); -/** - * @param {Event} event - * @memberOf EventListener - */ -EventListener.prototype.handleEvent=function(event){}; - -function EventTarget(){}; -EventTarget.prototype=new Object(); -/* - * These functions may need to be moved into a browser specific library. - */ -/** - * @memberOf Window - * @param event {Event} - * @throws {EventException} - */ -EventTarget.prototype.dispatchEvent=function(event){}; - -// https://developer.mozilla.org/en-US/docs/DOM/element.addEventListener -/** - * @memberOf Window - * @param {String} type - * @param {EventListener} listener - * @param {Boolean} useCapture - */ -EventTarget.prototype.addEventListener=function(type, listener, useCapture){}; -// https://developer.mozilla.org/en-US/docs/DOM/element.removeEventListener -/** - * @memberOf Window - * @param {String} type - * @param {EventListener} listener - * @param {Boolean} useCapture - */ -EventTarget.prototype.removeEventListener=function(type, listener, useCapture){}; diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/dom5.js b/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/dom5.js deleted file mode 100644 index d199ab6..0000000 --- a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/dom5.js +++ /dev/null @@ -1,922 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2013 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ******************************************************************************/ - -/** - * function querySelector(selectors) - * http://www.w3.org/TR/2012/PR-selectors-api-20121213 - * @param {String} selectors - * @memberOf Document - * @returns {Element} - */ -Document.prototype.querySelector=function(selectors){return new Element();}; - -/** - * function querySelectorAll(selectors) - * http://www.w3.org/TR/2012/PR-selectors-api-20121213 - * @param {String} selectors - * @memberOf Document - * @returns {NodeList} - */ -Document.prototype.querySelectorAll=function(selectors){return new NodeList();}; - -/** - * function querySelector(selectors) - * http://www.w3.org/TR/2012/PR-selectors-api-20121213 - * @param {String} selectors - * @memberOf DocumentFragment - * @returns {Element} - */ -DocumentFragment.prototype.querySelector=function(selectors){return new Element();}; - -/** - * function querySelectorAll(selectors) - * http://www.w3.org/TR/2012/PR-selectors-api-20121213 - * @param {String} selectors - * @memberOf DocumentFragment - * @returns {NodeList} - */ -DocumentFragment.prototype.querySelectorAll=function(selectors){return new NodeList();}; - -/** - * function querySelector(selectors) - * http://www.w3.org/TR/2012/PR-selectors-api-20121213 - * @param {String} selectors - * @memberOf Element - * @returns {Element} - */ -Element.prototype.querySelector=function(selectors){return new Element();}; - -/** - * function querySelectorAll(selectors) - * http://www.w3.org/TR/2012/PR-selectors-api-20121213 - * @param {String} selectors - * @memberOf Element - * @returns {NodeList} - */ -Element.prototype.querySelectorAll=function(selectors){return new NodeList();}; - -/** - * Property state - * @type Object - * @memberOf History - */ -History.prototype.state=new Object(); - -/** - * function pushState(data,title,url) - * http://www.w3.org/TR/2012/CR-html5-20121217/browsers.html#history - * @param {Object} data - * @param {String} title - * @param {String} url - optional - * @memberOf History - */ -History.prototype.pushState=function(data,title,url){}; - -/** - * function replaceState(data,title,url) - * http://www.w3.org/TR/2012/CR-html5-20121217/browsers.html#history - * @param {Object} data - * @param {String} title - * @param {String} url - optional - * @memberOf History - */ -History.prototype.replaceState=function(data,title,url){}; - -/** - * Property sessionStorage - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @type Storage - * @memberOf Window - */ -Window.prototype.sessionStorage=new Storage(); - -/** - * Property localStorage - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @type Storage - * @memberOf Window - */ -Window.prototype.localStorage=new Storage(); - -/** - * Object Storage - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - */ -function Storage(){}; -Storage.prototype=new Object(); - -/** - * Property length - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @type Number - * @memberOf Storage - */ -Storage.prototype.length=new Number(); - -/** - * function key(index) - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @param {Number} index - * @memberOf Storage - * @returns String - */ -Storage.prototype.key=function(index){return new String();}; - -/** - * function getItem(key) - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @param {String} key - * @memberOf Storage - * @returns String - */ -Storage.prototype.getItem=function(key){return new String();}; - -/** - * function setItem(key,value) - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @param {String} key - * @param {String} value - * @memberOf Storage - */ -Storage.prototype.setItem=function(key,value){}; - -/** - * function removeItem(key) - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @param {String} key - * @memberOf Storage - */ -Storage.prototype.removeItem=function(key){}; - -/** - * function clear() - * http://www.w3.org/TR/2011/CR-webstorage-20111208 - * @memberOf Storage - */ -Storage.prototype.clear=function(){}; - -/** - * Object WebSocket - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @constructor - * @param {String} url - */ -function WebSocket(url){}; -WebSocket.prototype=new Object(); - -/** - * Constant WebSocket.CONNECTING=0 - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @constant - * @type Number - */ -WebSocket.prototype.CONNECTING=0; - -/** - * Constant WebSocket.OPEN=1 - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @constant - * @type Number - */ -WebSocket.prototype.OPEN=1; - -/** - * Constant WebSocket.CLOSING=2 - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @constant - * @type Number - */ -WebSocket.prototype.CLOSING=2; - -/** - * Constant WebSocket.CLOSED=3 - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @constant - * @type Number - */ -WebSocket.prototype.CLOSED=3; - -/** - * Property url - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @type String - * @memberOf WebSocket - */ -WebSocket.prototype.url=new String(); - -/** - * Property readyState - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @type Number - * @memberOf WebSocket - */ -WebSocket.prototype.readyState=new Number(); - -/** - * Property bufferedAmount - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @type Number - * @memberOf WebSocket - */ -WebSocket.prototype.bufferedAmount=new Number(); - -/** - * Property extensions - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @type String - * @memberOf WebSocket - */ -WebSocket.prototype.extensions=new String(); - -/** - * Property protocol - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @type String - * @memberOf WebSocket - */ -WebSocket.prototype.protocol=new String(); - -/** - * Property binaryType - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @type String - * @memberOf WebSocket - */ -WebSocket.prototype.binaryType=new String(); - -/** - * function close(code,reason) - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @param {Number} code - optional - * @param {String} reason - optional - * @memberOf WebSocket - */ -WebSocket.prototype.close=function(code,reason){}; - -/** - * function send(data) - * http://www.w3.org/TR/2012/CR-websockets-20120920 - * @param {Object} data - may be a String, Blob, ArrayBuffer, or ArrayBufferView - * @memberOf WebSocket - */ -WebSocket.prototype.send=function(data){}; - -/** - * Property geolocation - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Geolocation - * @memberOf Navigator - */ -Navigator.prototype.geolocation=new Geolocation(); - -/** - * Object Geolocation - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - */ -function Geolocation(){}; -Geolocation.prototype=new Object(); - -/** - * function getCurrentPosition(successCallback,errorCallback,options) - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510/ - * @param {Function} successCallback (Position pos) - * @param {Function} errorCallback (PositionError error) - optional - * @param {PositionOptions} options - optional - * @memberOf Geolocation - */ -Geolocation.prototype.getCurrentPosition=function(successCallback,errorCallback,options){}; - -/** - * function watchPosition(successCallback,errorCallback,options) - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510/ - * @param {Function} successCallback (Position pos) - * @param {Function} errorCallback (PositionError error) - optional - * @param {PositionOptions} options - optional - * @memberOf Geolocation - * @returns {Number} - */ -Geolocation.prototype.watchPosition=function(successCallback,errorCallback,options){return new Number();}; - -/** - * function clearWatch(watchId) - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @param {Number} watchId - * @memberOf Geolocation - */ -Geolocation.prototype.clearWatch=function(watchId){}; - -/** - * Object Coordinates - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - */ -function Coordinates(){}; -Coordinates.prototype=new Object(); - -/** - * Property latitude - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Coordinates - */ -Coordinates.prototype.latitude=new Number();; - -/** - * Property longitude - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Coordinates - */ -Coordinates.prototype.longitude=new Number();; - -/** - * Property altitude - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Coordinates - */ -Coordinates.prototype.altitude=new Number();; - -/** - * Property accuracy - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Coordinates - */ -Coordinates.prototype.accuracy=new Number();; - -/** - * Property altitudeAccuracy - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Coordinates - */ -Coordinates.prototype.altitudeAccuracy=new Number();; - -/** - * Property heading - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Coordinates - */ -Coordinates.prototype.heading=new Number();; - -/** - * Property speed - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Coordinates - */ -Coordinates.prototype.speed=new Number(); - -/** - * Object Position - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - */ -function Position(){}; -Position.prototype=new Object(); - -/** - * Property coords - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Coordinates - * @memberOf Position - */ -Position.prototype.coords=new Coordinates(); - -/** - * Property timestamp - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf Position - */ -Position.prototype.timestamp=new Number; - -/** - * Object PositionError - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - */ -function PositionError(){}; -PositionError.prototype=new Object(); - -/** - * Constant PositionError.PERMISSION_DENIED=1 - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @constant - * @type Number - */ -PositionError.prototype.PERMISSION_DENIED=1; - -/** - * Constant PositionError.POSITION_UNAVAILABLE=2 - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @constant - * @type Number - */ -PositionError.prototype.POSITION_UNAVAILABLE=2; - -/** - * Constant PositionError.TIMEOUT=3 - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @constant - * @type Number - */ -PositionError.prototype.TIMEOUT=3; - -/** - * Property code - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf PositionError - */ -PositionError.prototype.code=new Number(); - -/** - * Property message - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type String - * @memberOf PositionError - */ -PositionError.prototype.message=new String(); - -/** - * Object PositionOptions - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - */ -function PositionOptions(){}; -PositionOptions.prototype=new Object(); - -/** - * Property enableHighAccuracy - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Boolean - * @memberOf PositionOptions - */ -PositionOptions.prototype.enableHighAccuracy=new Boolean(); - -/** - * Property timeout - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf PositionOptions - */ -PositionOptions.prototype.timeout=new Number(); - -/** - * Property maximumAge - * http://www.w3.org/TR/2012/PR-geolocation-API-20120510 - * @type Number - * @memberOf PositionOptions - */ -PositionOptions.prototype.maximumAge=new Number(); - -/** - * Object TimeRanges - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - */ -function TimeRanges(){}; -TimeRanges.prototype=new Object(); - -/** - * Property length - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf TimeRanges - */ -TimeRanges.prototype.length=new Number(); - -/** - * function start(index) - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @param {Number} index - * @memberOf TimeRanges - * @returns {Number} - */ -function start(index) {return new Number();}; - -/** - * function end(index) - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @param {Number} index - * @memberOf TimeRanges - * @returns {Number} - */ -function end(index) {return new Number();}; - -/** - * Object MediaError - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - */ -function MediaError(){}; -MediaError.prototype=new Object(); - -/** - * Constant MediaError.MEDIA_ERR_ABORTED=1 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -MediaError.prototype.MEDIA_ERR_ABORTED=1; - -/** - * Constant MediaError.MEDIA_ERR_NETWORK=2 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -MediaError.prototype.MEDIA_ERR_NETWORK=2; - -/** - * Constant MediaError.MEDIA_ERR_DECODED=3 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -MediaError.prototype.MEDIA_ERR_DECODE=3; - -/** - * Constant MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED=4 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -MediaError.prototype.MEDIA_ERR_SRC_NOT_SUPPORTED=4; - -/** - * Property code - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf MediaError - */ -MediaError.prototype.code=new Number(); - -/** - * Object HTMLMediaElement - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @augments HTMLElement - * @see HTMLElement - */ -function HTMLMediaElement(){}; -HTMLMediaElement.prototype = new HTMLElement(); - -/** - * Property src - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type String - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.src=new String(); - -/** - * Property currentSrc - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type String - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.currentSrc=new String(); - -/** - * Property crossOrigin - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type String - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.crossOrigin=new String(); - -/** - * Constant HTMLMediaElement.NETWORK_EMPTY=0 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.NETWORK_EMPTY=0; - -/** - * Constant HTMLMediaElement.NETWORK_IDLE=1 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.NETWORK_IDLE=1; - -/** - * Constant HTMLMediaElement.NETWORK_LOADING=2 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.NETWORK_LOADING=2; - -/** - * Constant HTMLMediaElement.NETWORK_NO_SOURCE=3 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.NETWORK_NO_SOURCE=3; - -/** - * Property networkState - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.networkState=new Number(); - -/** - * Property preload - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type String - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.preload=new String(); - -/** - * Property buffered - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type TimeRanges - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.buffered=new TimeRanges(); - -/** - * function load() - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.load=function(){}; - -/** - * function canPlayType(type) - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @param {String} type - * @memberOf HTMLMediaElement - * @returns {String} - */ -HTMLMediaElement.prototype.canPlayType=function(type){new String();}; - -/** - * Constant HTMLMediaElement.HAVE_NOTHING=0 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.HAVE_NOTHING=0; - -/** - * Constant HTMLMediaElement.HAVE_METADATA=1 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.HAVE_METADATA=1; - -/** - * Constant HTMLMediaElement.HAVE_CURRENT_DATA=2 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.HAVE_CURRENT_DATA=2; - -/** - * Constant HTMLMediaElement.HAVE_FUTURE_DATA=3 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.HAVE_FUTURE_DATA=3; - -/** - * Constant HTMLMediaElement.HAVE_ENOUGH_DATA=4 - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @constant - * @type Number - */ -HTMLMediaElement.prototype.HAVE_ENOUGH_DATA=4; - -/** - * Property readyState - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.readyState=new Number(); - -/** - * Property seeking - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.seeking=new Boolean(); - -/** - * Property currentTime - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.currentTime=new Number(); - -/** - * Property initialTime - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.initialTime=new Number(); - -/** - * Property duration - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.duration=new Number(); - -/** - * Property startOffsetTime - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Date - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.startOffsetTime=new Date(); - -/** - * Property paused - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.paused=new Boolean(); - -/** - * Property defaultPlaybackRate - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.defaultPlaybackRate=new Number(); - -/** - * Property playbackRate - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.playbackRate=new Number(); - -/** - * Property played - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type TimeRanges - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.played=new TimeRanges(); - -/** - * Property seekable - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type TimeRanges - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.seekable=new TimeRanges(); - -/** - * Property ended - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.ended=new Boolean(); - -/** - * Property autoplay - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.autoplay=new Boolean(); - -/** - * Property loop - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.loop=new Boolean(); - -/** - * function play() - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.play=function(){}; - -/** - * function pause() - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.pause=function(){}; - -/** - * Property controls - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.controls=new Boolean(); - -/** - * Property volume - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.volume=new Number(); - -/** - * Property muted - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.muted=new Boolean(); - -/** - * Property defaultMuted - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Boolean - * @memberOf HTMLMediaElement - */ -HTMLMediaElement.prototype.defaultMuted=new Boolean(); - -/** - * Object HTMLAudioElement - * http://www.w3.org/TR/2012/WD-html5-20120329/the-audio-element.html - * @augments HTMLMediaElement - * @constructor - * @param {String} src - * @see HTMLMediaElement - */ -function HTMLAudioElement(src){}; -HTMLAudioElement.prototype = new HTMLMediaElement(); - -/** - * Object HTMLVideoElement - * http://www.w3.org/TR/2012/WD-html5-20120329/the-audio-element.html - * @augments HTMLMediaElement - * @see HTMLMediaElement - */ -function HTMLVideoElement(){}; -HTMLVideoElement.prototype = new HTMLMediaElement(); - -/** - * Property width - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLVideoElement - */ -HTMLVideoElement.prototype.width=new Number(); - -/** - * Property height - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLVideoElement - */ -HTMLVideoElement.prototype.height=new Number(); - -/** - * Property videoWidth - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLVideoElement - */ -HTMLVideoElement.prototype.videoWidth=new Number(); - -/** - * Property videoHeight - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type Number - * @memberOf HTMLVideoElement - */ -HTMLVideoElement.prototype.videoHeight=new Number(); - -/** - * Property poster - * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html - * @type String - * @memberOf HTMLVideoElement - */ -HTMLVideoElement.prototype.poster=new String(); - diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/system.js b/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/system.js deleted file mode 100644 index 2066ffb..0000000 --- a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/system.js +++ /dev/null @@ -1,1458 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2010 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************** -* Please see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html -*/ - -/** - * Object Object() - * @constructor - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function Object(){}; - /** - * function toString() - * @memberOf Object - * @returns {String} - * @see Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Object.prototype.toString = function(){return "";}; - /** - * function toLocaleString() - * @memberOf Object - * @returns {String} - * @see Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Object.prototype.toLocaleString = function(){return "";}; - /** - * function valueOf() - * @memberOf Object - * @returns {Object} - * @see Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Object.prototype.valueOf = function(){return new Object();}; - /** - * function hasOwnProperty(name) - * @memberOf Object - * @param {String} name - * @returns {Boolean} - * @see Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Object.prototype.hasOwnProperty = function(name){return true;}; - /** - * function isPrototypeOf(o) - * @memberOf Object - * @param {Object} o - * @returns {Boolean} - * @see Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Object.prototype.isPrototypeOf = function(o){return true;}; - /** - * function propertyIsEnumerable(name) - * @memberOf Object - * @param {Object} name - * @returns {Boolean} - * @see Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Object.prototype.propertyIsEnumerable = function(name){return true;}; -/** - * Property constructor - * @type Function - * @memberOf Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Object.prototype.constructor = new Function(); - -/** - * Object String() - * @constructor - * @extends Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function String(){} -String.prototype = new Object(); -/** - * static function fromCharCode(charCode1, ...) - * @memberOf String - * @param {Number} charCode - * @returns {String} - * @static - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.fromCharCode = function(charCode){return "";}; -/** - * Property length - * @type Number - * @memberOf String - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.length = 1; - /** - * function charAt(position) - * @memberOf String - * @param {Number} position - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.charAt = function(position){return "";}; - /** - * function charCodeAt(position) - * @memberOf String - * @param {Number} position - * @returns {Number} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.charCodeAt = function(position){return 0;}; - /** - * function concat(value1, ...) - * @memberOf String - * @param {String} value - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.concat = function(value){return "";}; - /** - * function indexOf(searchString, startPosition) - * @memberOf String - * @param {String} searchString - * @param {Number} startPosition - * @returns {Number} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.indexOf = function(searchString, startPosition){return 1;}; - /** - * function lastIndexOf(searchString, startPosition) - * @memberOf String - * @param {String} searchString - * @param {Number} startPosition - * @returns {Number} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.lastIndexOf = function(searchString, startPosition){return 1;}; - /** - * function localeCompare(otherString) - * @memberOf String - * @param {String} otherString - * @returns {Number} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.localeCompare = function(otherString){return 0;}; - /** - * function match(regexp) - * @memberOf String - * @param {RegExp} regexp - * @returns {Array} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.match = function(regexp){return [];}; - /** - * function replace(regexp, replaceValue) - * @memberOf String - * @param {RegExp} regexp - * @param {String} replaceValue - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.replace = function(regexp, replaceValue){return "";}; - /** - * function search(regexp) - * @memberOf String - * @param {RegExp} regexp - * @returns {Number} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.search = function(regexp){return 1;}; - /** - * function slice(start, end) - * @memberOf String - * @param {Number} start - * @param {Number} end - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.slice = function(start, end){return "";}; - /** - * function split(separator, limit) - * @memberOf String - * @param {String} separator - * @param {Number} limit - * @returns {Array} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.split = function(separator, limit){return [];}; - /** - * function substring(start, end) - * @memberOf String - * @param {Number} start - * @param {Number} end - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.substring = function(start, end){return "";}; - /** - * function toLowerCase() - * @memberOf String - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.toLowerCase = function(){return "";}; - /** - * function toLocaleLowerCase() - * @memberOf String - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.toLocaleLowerCase = function(){return "";}; - /** - * function toUpperCase() - * @memberOf String - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.toUpperCase= function (){return "";}; - /** - * function toLocaleUpperCase() - * @memberOf String - * @returns {String} - * @see String - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -String.prototype.toLocaleUpperCase = function(){return "";}; - -/** - * Object Number() - * @constructor - * @extends Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function Number(){} -Number.prototype = new Object(); -/** - * property MIN_VALUE - * @type Number - * @memberOf Number - * @static - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Number.MIN_VALUE = 0; -/** - * property MAX_VALUE - * @type Number - * @memberOf Number - * @static - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Number.MAX_VALUE = 0 ; -/** - * property NaN - * @type Number - * @memberOf Number - * @static - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Number.NaN = 0; -/** - * property NEGATIVE_INFINITY - * @type Number - * @memberOf Number - * @static - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Number.NEGATIVE_INFINITY = 0; -/** - * property POSITIVE_INFINITY - * @type Number - * @memberOf Number - * @static - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Number.POSITIVE_INFINITY = 0; -/** - * function toFixed(fractionDigits) - * @memberOf Number - * @param {Number} fractionDigits - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Number.prototype.toFixed = function(fractionDigits){return "";}; -/** - * function toExponential(fractionDigits) - * @memberOf Number - * @param {Number} fractionDigits - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -Number.prototype.toExponential = function(fractionDigits){return "";}; -/** - * function toPrecision(precision) - * @memberOf Number - * @param {Number} fractionDigits - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -Number.prototype.toPrecision = function(fractionDigits){return "";}; - -/** - * Object Boolean() - * @constructor - * @extends Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -function Boolean(){}; -Boolean.prototype = new Object(); - -/** - * Object Array() - * @constructor - * @extends Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function Array(){}; -Array.prototype = new Object(); -/** - * Property length - * @type Number - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.length = 1; -/** - * function concat(args) - * @param {Array} args - * @returns {Array} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.concat = function(args){return [];}; -/** - * function join(seperator) - * @param {String} seperator - * @returns {Array} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.join = function(seperator){return [];}; -/** - * function pop() - * @returns {Object} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.pop = function(){return new Object();}; -/** - * function push(args) - * @param {Array} args - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.push = function(args){}; -/** - * function reverse() - * @returns {Array} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.reverse = function(){return [];}; -/** - * function shift() - * @returns {Object} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.shift = function(){return new Object();}; -/** - * function slice(start, end) - * @param {Number} start - * @param {Number} end - * @returns {Array} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.slice = function(start, end){return [];}; -/** - * function sort(funct) - * @param {Function} funct - * @returns {Array} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.sort = function(funct){return [];}; -/** - * function splice(start, deletecount, items) - * @param {Number} start - * @param {Number} deletecount - * @param {Array} items - * @returns {Array} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.splice = function(start, deletecount, items){return [];}; -/** - * function unshift(items) - * @param {Object} values - * @returns {Number} - * @memberOf Array - * @see Array - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Array.prototype.unshift = function(values){return 1;}; - -/** - * Object Function() - * @constructor - * @extends Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function Function(){}; -Function.prototype = new Object(); -/** - * function apply (thisObject, argArray) - * @param {Object} thisObject - * @param {Array} argArray - * @returns {Object} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Function.prototype.apply = function(thisArg, argArray){return new Object();}; -/** - * function call (thisObject, args) - * @param {Object} thisObject - * @param {Object} args - * @returns {Object} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Function.prototype.call = function(thisObject, args){return new Object();}; -/** - * property length - * @type Number - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Function.prototype.length = 0; - -/** - * Object Date(s) - * @constructor - * @param {String} s - * @extends Object - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function Date(s){}; -Date.prototype = new Object(); -/** - * function UTC(hour, min, sec, ms) - * @memberOf Date - * @param {Number} hour - * @param {Number} min - * @param {Number} sec - * @param {Number} ms - * @returns {Number} - * @static - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -Date.UTC = function(hour, min, sec, ms){return 0;}; -/** - * function parse(string) - * @memberOf Date - * @param {String} string - * @returns {Number} - * @static - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.parse = function(string){return 0;}; -/** - * function toDateString() - * @memberOf Date - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.toDateString = function(){return "";}; -/** - * function toTimeString() - * @memberOf Date - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.toTimeString = function(){return "";}; -/** - * function toLocaleString() - * @memberOf Date - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.toLocaleString = function(){return "";}; -/** - * function toLocaleDateString() - * @memberOf Date - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.toLocaleDateString = function(){return "";}; -/** - * function toLocaleTimeString() - * @memberOf Date - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.toLocaleTimeString = function(){return "";}; -/** - * function valueOf() - * @memberOf Date - * @returns {Object} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.valueOf = function(){return new Object();}; -/** - * function getFullYear() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getFullYear = function(){return 0;}; -/** - * function getTime() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getTime = function(){return 0;}; -/** - * function getUTCFullYear() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getUTCFullYear = function(){return 0;}; -/** - * function getMonth() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getMonth = function(){return 0;}; -/** - * function getUTCMonth() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getUTCMonth = function(){return 0;}; -/** - * function getDate() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getDate = function(){return 0;}; -/** - * function getUTCDate() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getUTCDate = function(){return 0;}; -/** - * function getDay() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getDay = function(){return 0;}; -/** - * function getUTCDay() - * @memberOf Date - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - - */ -Date.prototype.getUTCDay=function(){return 0;}; -/** - * function getHours() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getHours = function(){return 0;}; -/** - * function getUTCHours() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getUTCHours = function(){return 0;}; -/** - * function getMinutes() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getMinutes = function(){return 0;}; -/** - * function getUTCMinutes() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getUTCMinutes = function(){return 0;}; -/** - * function getSeconds() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getSeconds = function(){return 0;}; -/** - * function getUTCSeconds() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getUTCSeconds = function(){return 0;}; -/** - * function getMilliseconds() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getMilliseconds = function(){return 0;}; -/** - * function getUTCMilliseconds() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getUTCMilliseconds = function(){return 0;}; -/** - * function getTimezoneOffset() - * @memberOf Date - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.getTimezoneOffset = function(){return 0;}; -/** - * function setTime(value) - * @memberOf Date - * @returns {Number} - * @param {Number} value - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setTime = function(value){return 0;}; - -/** - * function setMilliseconds(value) - * @memberOf Date - * @returns {Number} - * @param {Number} value - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setMilliseconds = function(value){return 0;}; -/** - * function setUTCMilliseconds(ms) - * @memberOf Date - * @returns {Number} - * @param {Number} ms - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setUTCMilliseconds = function(ms){return 0;}; -/** - * function setSeconds(sec,ms) - * @memberOf Date - * @returns {Number} - * @param {Number} sec - * @param {Number} ms - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setSeconds = function(sec,ms){return 0;}; -/** - * function setUTCSeconds(sec,ms) - * @memberOf Date - * @returns {Number} - * @param {Number} sec - * @param {Number} ms - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setUTCSeconds=function(sec,ms){return 0;}; -/** - * function setMinutes(min,sec,ms) - * @memberOf Date - * @returns {Number} - * @param {Number} min - * @param {Number} sec - * @param {Number} ms - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setMinutes=function(min,sec,ms){return 0;}; -/** - * function setUTCMinute(min,sec,ms) - * @memberOf Date - * @returns {Number} - * @param {Number} min - * @param {Number} sec - * @param {Number} ms - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setUTCMinute = function(min,sec,ms){return 0;}; -/** - * function setHours(hour, min,sec,ms) - * @memberOf Date - * @returns {Number} - * @param {Number} hour - * @param {Number} min - * @param {Number} sec - * @param {Number} ms - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setHours = function(hour,min,sec,ms){return 0;}; -/** - * function setUTCHours(hour, min,sec,ms) - * @memberOf Date - * @returns {Number} - * @param {Number} hour - * @param {Number} min - * @param {Number} sec - * @param {Number} ms - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setUTCHours = function(hour,min,sec,ms){return 0;}; - -/** - * function setDate(date) - * @memberOf Date - * @returns {Number} - * @param {Number} date - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setDate = function(date){return 0;}; - -/** - * function setUTCDate(date) - * @memberOf Date - * @returns {Number} - * @param {Number} date - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setUTCDate = function(date){return 0;}; - -/** - * function setMonth(month,date) - * @memberOf Date - * @returns {Number} - * @param {Number} date - * @param {Number} month - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setMonth = function(month,date){return 1;}; -/** - * function setUTCMonth(month,date) - * @memberOf Date - * @returns {Number} - * @param {Number} date - * @param {Number} month - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setUTCMonth = function(month,date){return 1;}; -/** - * function setFullYear(month,date) - * @memberOf Date - * @returns {Number} - * @param {Number} date - * @param {Number} month - * @param {Number} year - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setFullYear = function(year, month,date){return 0;}; -/** - * function setUTCFullYear(month,date) - * @memberOf Date - * @returns {Date} - * @param {Number} date - * @param {Number} month - * @param {Number} year - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Date.prototype.setUTCFullYear = function(year, month,date){}; -/** - * function toUTCString() - * @memberOf Date - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -Date.prototype.toUTCString = function(){return "";}; - -/** - * Property NaN - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -var NaN=0; -/** - * Property Infinity - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -var Infinity=0; -/** - * function eval(s) - * @param {String} s - * @type Object - * @returns {Object} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function eval(s){return new Object();}; - -//@GINO: Bug 197987 (Temp Fix) -/** - * Property debugger - * @description Debugger keyword - */ -var debugger=null; - -/** - * Property undefined - * @description undefined -*/ -var undefined=null; - -/** - * function parseInt(s,radix) - * @param {String} s - * @param {Number} radix - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function parseInt(s,radix){return 0;}; -/** - * function parseFloat(s) - * @param {String} s - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function parseFloat(s){return 0;}; -/** - * function escape(s) - * @param {String} s - * @type String - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -function escape(s){return "";}; -/** - * function unescape(s) - * @param {String} s - * @type String - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -function unescape(s){return "";}; -/** - * function isNaN(number) - * @param {String} number - * @type Boolean - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function isNaN(number){return false;}; -/** - * function isFinite(number) - * @param {String} number - * @type Boolean - * @returns {Boolean} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function isFinite(number){return false;}; -/** - * function decodeURI(encodedURI) - * @param {String} encodedURI - * @type String - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -function decodeURI(encodedURI){return "";}; -/** - * @param {String} uriComponent - * @type String - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -function decodeURIComponent(uriComponent){return "";}; -/** - * function encodeURIComponent(uriComponent) - * @param {String} uriComponent - * @type String - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -function encodeURIComponent(uriComponent){return "";}; - -/** - * function encodeURIComponent(URI) - * @param {String} URI - * @type String - * @returns {String} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. -*/ -function encodeURI(URI){return "";}; - -/** - * Object Math(\s) - * @super Object - * @constructor - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - - */ -function Math(){}; -Math.prototype=new Object(); -/** - * Property E - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.E=0; -/** - * Property LN10 - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.LN10=0; -/** - * Property LN2 - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.LN2=0; -/** - * Property LOG2E - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.LOG2E=0; -/** - * Property LOG10E - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.LOG10E=0; -/** - * Property PI - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.PI=0; -/** - * Property SQRT1_2 - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.SQRT1_2=0; -/** - * Property SQRT2 - * @memberOf Math - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.SQRT2=0; -/** - * function abs(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.abs=function(x){return 0;}; -/** - * function acos(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.acos=function(x){return 0;}; -/** - * function asin(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.asin=function(x){return 0;}; -/** - * function atan(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.atan=function(x){return 0;}; -/** - * function atan2(x,y) - * @memberOf Math - * @param {Number} x - * @param {Number} y - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.atan2=function(x,y){return 0;}; -/** - * function ceil(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.ceil=function(x){return 0;}; -/** - * function cos(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.cos=function(x){return 0;}; -/** - * function exp(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.exp=function(x){return 0;}; -/** - * function floor(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.floor=function(x){return 0;}; -/** - * function log(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.log=function(x){return 0;}; -/** - * function max(arg) - * @memberOf Math - * @param {Number} args - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.max=function(args){return 0;}; -/** - * function min(arg) - * @memberOf Math - * @param {Number} args - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.min=function(args){return 0;}; -/** - * function pow(x,y) - * @memberOf Math - * @param {Number} x - * @param {Number} y - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.pow=function(x,y){return 0;}; -/** - * function pow() - * @memberOf Math - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.random=function(){return 0;}; -/** - * function round(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.round=function(x){return 0;}; -/** - * function sin(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.sin=function(x){return 0;}; -/** - * function sqrt(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.sqrt=function(x){return 0;}; -/** - * function tan(x) - * @memberOf Math - * @param {Number} x - * @type Number - * @returns {Number} - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Math.tan=function(x){return 0;}; -/** - * Object RegExp() - * @super Object - * @constructor - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function RegExp(){}; -RegExp.prototype=new Object(); -/** - * function exec(string) - * @param {String} string - * @returns {Array} - * @type Array - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -RegExp.prototype.exec=function(string){return [];}; -/** - * function test(string) - * @param {String} string - * @returns {Boolean} - * @type Boolean - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -RegExp.prototype.test=function(string){return false;}; -/** - * property source - * @type String - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -RegExp.prototype.source=""; -/** - * property global - * @type Boolean - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -RegExp.prototype.global=false; - -/** - * property ignoreCase - * @type Boolean - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -RegExp.prototype.ignoreCase=false; -/** - * property multiline - * @type Boolean - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -RegExp.prototype.multiline=false; -/** - * property lastIndex - * @type Number - * @memberOf RegExp - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -RegExp.prototype.lastIndex=0; -/** - * Object Error(message) - * @super Object - * @constructor - * @param {String} message - * @memberOf Error - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function Error(message){}; -Error.prototype=new Object(); -/** - * property name - * @type String - * @memberOf Error - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Error.prototype.name=""; -/** - * property message - * @type String - * @memberOf Error - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -Error.prototype.message=""; -/** - * Object EvalError() - * @super Error - * @constructor - * - * @memberOf EvalError - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function EvalError(){}; -EvalError.prototype=new Error(""); -/** - * Object RangeError() - * @super Error - * @constructor - * - * @memberOf RangeError - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function RangeError(){}; -RangeError.prototype=new Error(""); -/** - * Object ReferenceError() - * @super Error - * @constructor - * - * @memberOf ReferenceError - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function ReferenceError(){}; -ReferenceError.prototype=new Error(""); -/** - * Object SyntaxError() - * @super Error - * @constructor - * - * @memberOf SyntaxError - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function SyntaxError(){}; -SyntaxError.prototype=new Error(""); -/** - * Object TypeError() - * @super Error - * @constructor - * - * @memberOf TypeError - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function TypeError(){}; -TypeError.prototype=new Error(""); -/** - * Object URIError() - * @super Error - * @constructor - * - * @memberOf URIError - * @since Standard ECMA-262 3rd. Edition - * @since Level 2 Document Object Model Core Definition. - */ -function URIError(){}; -URIError.prototype=new Error(""); - -//support for debugger keyword -var debugger = null; \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/xhr.js b/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/xhr.js deleted file mode 100644 index 4d6c011..0000000 --- a/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/xhr.js +++ /dev/null @@ -1,104 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2009, 2011 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Eclipse Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/epl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - ****************************************************************************** - * - * Based on information from https://developer.mozilla.org/En/XMLHttpRequest - * and http://msdn2.microsoft.com/en-us/library/ms533062.aspx - **/ - -/** -* function createRequest -* @type XMLHttpRequest -* @memberOf Window -*/ -Window.prototype.createRequest= function(){return new XMLHttpRequest();}; -/** -* Object XMLHttpRequest -* @type constructor -*/ -XMLHttpRequest.prototype=new Object(); -function XMLHttpRequest(){}; - -/** - * function onreadystatechange - * @memberOf XMLHttpRequest - */ -XMLHttpRequest.prototype.onreadystatechange=function(){}; -/** - * property readyState - * @type Number - * @memberOf XMLHttpRequest - */ -XMLHttpRequest.prototype.readyState=0; -/** - * property responseText - * @type String - * @memberOf XMLHttpRequest - */ -XMLHttpRequest.prototype.responseText=""; -/** - * property responseXML - * @type Document - * @memberOf XMLHttpRequest - */ -XMLHttpRequest.prototype.responseXML=new Document(); -/** - * property status - * @type Number - * @memberOf XMLHttpRequest - */ -XMLHttpRequest.prototype.status=0; -/** - * property statusText - * @type String - * @memberOf XMLHttpRequest - */ -XMLHttpRequest.prototype.statusText=""; -/** - * function abort() - * @memberOf XMLHttpRequest - */ -XMLHttpRequest.prototype.abort=function(){}; -/** -* function getAllResponseHeaders() -* @type String -* @memberOf XMLHttpRequest -*/ -XMLHttpRequest.prototype.getAllResponseHeaders=function(){return "";}; -/** -* function open(method, url, async, username, password) -* @param {String} method -* @param {String} url -* @param {Boolean} optional async -* @param {String} optional username -* @param {String} optional password -* @memberOf XMLHttpRequest -*/ -XMLHttpRequest.prototype.open=function(method, url, async, username, password){}; -/** -* function send(body) -* @param {Object} body -* @memberOf XMLHttpRequest -*/ -XMLHttpRequest.prototype.send=function(body){}; -/** -* function setRequestHeader(header,value) -* @param {String} header -* @param {String} value -* @memberOf XMLHttpRequest -*/ -XMLHttpRequest.prototype.setRequestHeader=function(header,value){}; -/** -* function getAllResponseHeaders() -* @param {String} header -* @type String -* @memberOf XMLHttpRequest -*/ -XMLHttpRequest.prototype.getResponseHeader=function(header){return "";}; diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.core/variablesAndContainers.dat b/.metadata/.plugins/org.eclipse.wst.jsdt.core/variablesAndContainers.dat deleted file mode 100644 index 3f8e74c..0000000 Binary files a/.metadata/.plugins/org.eclipse.wst.jsdt.core/variablesAndContainers.dat and /dev/null differ diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.ui/OpenTypeHistory.xml b/.metadata/.plugins/org.eclipse.wst.jsdt.ui/OpenTypeHistory.xml deleted file mode 100644 index a4ee3cb..0000000 --- a/.metadata/.plugins/org.eclipse.wst.jsdt.ui/OpenTypeHistory.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/.metadata/.plugins/org.eclipse.wst.jsdt.ui/QualifiedTypeNameHistory.xml b/.metadata/.plugins/org.eclipse.wst.jsdt.ui/QualifiedTypeNameHistory.xml deleted file mode 100644 index 9e390f5..0000000 --- a/.metadata/.plugins/org.eclipse.wst.jsdt.ui/QualifiedTypeNameHistory.xml +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/.metadata/.plugins/org.eclipse.wst.sse.core/task-tags.properties b/.metadata/.plugins/org.eclipse.wst.sse.core/task-tags.properties deleted file mode 100644 index 59e4aed..0000000 --- a/.metadata/.plugins/org.eclipse.wst.sse.core/task-tags.properties +++ /dev/null @@ -1,3 +0,0 @@ -# -#Fri Dec 04 18:49:30 CET 2015 -task-tag-projects-already-scanned=TheButtonAutoFlair,RemoteSystemsTempFiles diff --git a/.metadata/.plugins/org.eclipse.wst.sse.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.wst.sse.ui/dialog_settings.xml deleted file mode 100644 index 63fae25..0000000 --- a/.metadata/.plugins/org.eclipse.wst.sse.ui/dialog_settings.xml +++ /dev/null @@ -1,5 +0,0 @@ - -
-
-
-
diff --git a/.metadata/.plugins/org.eclipse.wst.xml.core/default_catalog.xml b/.metadata/.plugins/org.eclipse.wst.xml.core/default_catalog.xml deleted file mode 100644 index 37faa16..0000000 --- a/.metadata/.plugins/org.eclipse.wst.xml.core/default_catalog.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/.metadata/.plugins/org.eclipse.wst.xml.core/system_catalog.xml b/.metadata/.plugins/org.eclipse.wst.xml.core/system_catalog.xml deleted file mode 100644 index 376e21f..0000000 --- a/.metadata/.plugins/org.eclipse.wst.xml.core/system_catalog.xml +++ /dev/null @@ -1,190 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/.metadata/version.ini b/.metadata/version.ini deleted file mode 100644 index c775128..0000000 --- a/.metadata/version.ini +++ /dev/null @@ -1,3 +0,0 @@ -#Fri Dec 18 22:41:54 CET 2015 -org.eclipse.core.runtime=2 -org.eclipse.platform=4.4.2.v20150204-1700 diff --git a/TheButtonAutoFlair/.travis.yml b/.travis.yml similarity index 100% rename from TheButtonAutoFlair/.travis.yml rename to .travis.yml diff --git a/RemoteSystemsTempFiles/.project b/RemoteSystemsTempFiles/.project deleted file mode 100644 index 5447a64..0000000 --- a/RemoteSystemsTempFiles/.project +++ /dev/null @@ -1,12 +0,0 @@ - - - RemoteSystemsTempFiles - - - - - - - org.eclipse.rse.ui.remoteSystemsTempNature - - diff --git a/TheButtonAutoFlair/.classpath b/TheButtonAutoFlair/.classpath deleted file mode 100644 index 906769f..0000000 --- a/TheButtonAutoFlair/.classpath +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/TheButtonAutoFlair/.project b/TheButtonAutoFlair/.project deleted file mode 100644 index 2014bbd..0000000 --- a/TheButtonAutoFlair/.project +++ /dev/null @@ -1,23 +0,0 @@ - - - TheButtonAutoFlair - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.m2e.core.maven2Builder - - - - - - org.eclipse.m2e.core.maven2Nature - org.eclipse.jdt.core.javanature - - diff --git a/TheButtonAutoFlair/.settings/org.eclipse.jdt.core.prefs b/TheButtonAutoFlair/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 6249222..0000000 --- a/TheButtonAutoFlair/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,12 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.7 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.7 diff --git a/TheButtonAutoFlair/.settings/org.eclipse.m2e.core.prefs b/TheButtonAutoFlair/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f..0000000 --- a/TheButtonAutoFlair/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/TheButtonAutoFlair/bin/org/json/CDL.class b/bin/org/json/CDL.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/CDL.class rename to bin/org/json/CDL.class diff --git a/TheButtonAutoFlair/bin/org/json/Cookie.class b/bin/org/json/Cookie.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/Cookie.class rename to bin/org/json/Cookie.class diff --git a/TheButtonAutoFlair/bin/org/json/CookieList.class b/bin/org/json/CookieList.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/CookieList.class rename to bin/org/json/CookieList.class diff --git a/TheButtonAutoFlair/bin/org/json/HTTP.class b/bin/org/json/HTTP.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/HTTP.class rename to bin/org/json/HTTP.class diff --git a/TheButtonAutoFlair/bin/org/json/HTTPTokener.class b/bin/org/json/HTTPTokener.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/HTTPTokener.class rename to bin/org/json/HTTPTokener.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONArray.class b/bin/org/json/JSONArray.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONArray.class rename to bin/org/json/JSONArray.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONException.class b/bin/org/json/JSONException.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONException.class rename to bin/org/json/JSONException.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONML.class b/bin/org/json/JSONML.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONML.class rename to bin/org/json/JSONML.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONObject$Null.class b/bin/org/json/JSONObject$Null.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONObject$Null.class rename to bin/org/json/JSONObject$Null.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONObject.class b/bin/org/json/JSONObject.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONObject.class rename to bin/org/json/JSONObject.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONString.class b/bin/org/json/JSONString.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONString.class rename to bin/org/json/JSONString.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONStringer.class b/bin/org/json/JSONStringer.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONStringer.class rename to bin/org/json/JSONStringer.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONTokener.class b/bin/org/json/JSONTokener.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONTokener.class rename to bin/org/json/JSONTokener.class diff --git a/TheButtonAutoFlair/bin/org/json/JSONWriter.class b/bin/org/json/JSONWriter.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/JSONWriter.class rename to bin/org/json/JSONWriter.class diff --git a/TheButtonAutoFlair/bin/org/json/Property.class b/bin/org/json/Property.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/Property.class rename to bin/org/json/Property.class diff --git a/TheButtonAutoFlair/bin/org/json/README b/bin/org/json/README similarity index 100% rename from TheButtonAutoFlair/bin/org/json/README rename to bin/org/json/README diff --git a/TheButtonAutoFlair/bin/org/json/XML.class b/bin/org/json/XML.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/XML.class rename to bin/org/json/XML.class diff --git a/TheButtonAutoFlair/bin/org/json/XMLTokener.class b/bin/org/json/XMLTokener.class similarity index 100% rename from TheButtonAutoFlair/bin/org/json/XMLTokener.class rename to bin/org/json/XMLTokener.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/AnnouncerThread.class b/bin/tk/sznp/thebuttonautoflair/AnnouncerThread.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/AnnouncerThread.class rename to bin/tk/sznp/thebuttonautoflair/AnnouncerThread.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/Commands$1.class b/bin/tk/sznp/thebuttonautoflair/Commands$1.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/Commands$1.class rename to bin/tk/sznp/thebuttonautoflair/Commands$1.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/Commands$2.class b/bin/tk/sznp/thebuttonautoflair/Commands$2.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/Commands$2.class rename to bin/tk/sznp/thebuttonautoflair/Commands$2.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/Commands.class b/bin/tk/sznp/thebuttonautoflair/Commands.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/Commands.class rename to bin/tk/sznp/thebuttonautoflair/Commands.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/FlairStates.class b/bin/tk/sznp/thebuttonautoflair/FlairStates.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/FlairStates.class rename to bin/tk/sznp/thebuttonautoflair/FlairStates.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class b/bin/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class rename to bin/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class b/bin/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class rename to bin/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerListener$1.class b/bin/tk/sznp/thebuttonautoflair/PlayerListener$1.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerListener$1.class rename to bin/tk/sznp/thebuttonautoflair/PlayerListener$1.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerListener$2.class b/bin/tk/sznp/thebuttonautoflair/PlayerListener$2.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerListener$2.class rename to bin/tk/sznp/thebuttonautoflair/PlayerListener$2.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerListener.class b/bin/tk/sznp/thebuttonautoflair/PlayerListener.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PlayerListener.class rename to bin/tk/sznp/thebuttonautoflair/PlayerListener.class diff --git a/TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PluginMain.class b/bin/tk/sznp/thebuttonautoflair/PluginMain.class similarity index 100% rename from TheButtonAutoFlair/bin/tk/sznp/thebuttonautoflair/PluginMain.class rename to bin/tk/sznp/thebuttonautoflair/PluginMain.class diff --git a/TheButtonAutoFlair/htmlcleaner-2.16.jar b/htmlcleaner-2.16.jar similarity index 100% rename from TheButtonAutoFlair/htmlcleaner-2.16.jar rename to htmlcleaner-2.16.jar diff --git a/TheButtonAutoFlair/htmlcleaner_licence.txt b/htmlcleaner_licence.txt similarity index 100% rename from TheButtonAutoFlair/htmlcleaner_licence.txt rename to htmlcleaner_licence.txt diff --git a/TheButtonAutoFlair/p.javaproj b/p.javaproj similarity index 100% rename from TheButtonAutoFlair/p.javaproj rename to p.javaproj diff --git a/TheButtonAutoFlair/plugin.yml b/plugin.yml similarity index 100% rename from TheButtonAutoFlair/plugin.yml rename to plugin.yml diff --git a/TheButtonAutoFlair/pom.xml b/pom.xml similarity index 100% rename from TheButtonAutoFlair/pom.xml rename to pom.xml diff --git a/TheButtonAutoFlair/src/org/json/CDL.java b/src/org/json/CDL.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/CDL.java rename to src/org/json/CDL.java diff --git a/TheButtonAutoFlair/src/org/json/Cookie.java b/src/org/json/Cookie.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/Cookie.java rename to src/org/json/Cookie.java diff --git a/TheButtonAutoFlair/src/org/json/CookieList.java b/src/org/json/CookieList.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/CookieList.java rename to src/org/json/CookieList.java diff --git a/TheButtonAutoFlair/src/org/json/HTTP.java b/src/org/json/HTTP.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/HTTP.java rename to src/org/json/HTTP.java diff --git a/TheButtonAutoFlair/src/org/json/HTTPTokener.java b/src/org/json/HTTPTokener.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/HTTPTokener.java rename to src/org/json/HTTPTokener.java diff --git a/TheButtonAutoFlair/src/org/json/JSONArray.java b/src/org/json/JSONArray.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONArray.java rename to src/org/json/JSONArray.java diff --git a/TheButtonAutoFlair/src/org/json/JSONException.java b/src/org/json/JSONException.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONException.java rename to src/org/json/JSONException.java diff --git a/TheButtonAutoFlair/src/org/json/JSONML.java b/src/org/json/JSONML.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONML.java rename to src/org/json/JSONML.java diff --git a/TheButtonAutoFlair/src/org/json/JSONObject.java b/src/org/json/JSONObject.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONObject.java rename to src/org/json/JSONObject.java diff --git a/TheButtonAutoFlair/src/org/json/JSONString.java b/src/org/json/JSONString.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONString.java rename to src/org/json/JSONString.java diff --git a/TheButtonAutoFlair/src/org/json/JSONStringer.java b/src/org/json/JSONStringer.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONStringer.java rename to src/org/json/JSONStringer.java diff --git a/TheButtonAutoFlair/src/org/json/JSONTokener.java b/src/org/json/JSONTokener.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONTokener.java rename to src/org/json/JSONTokener.java diff --git a/TheButtonAutoFlair/src/org/json/JSONWriter.java b/src/org/json/JSONWriter.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/JSONWriter.java rename to src/org/json/JSONWriter.java diff --git a/TheButtonAutoFlair/src/org/json/Property.java b/src/org/json/Property.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/Property.java rename to src/org/json/Property.java diff --git a/TheButtonAutoFlair/src/org/json/README b/src/org/json/README similarity index 100% rename from TheButtonAutoFlair/src/org/json/README rename to src/org/json/README diff --git a/TheButtonAutoFlair/src/org/json/XML.java b/src/org/json/XML.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/XML.java rename to src/org/json/XML.java diff --git a/TheButtonAutoFlair/src/org/json/XMLTokener.java b/src/org/json/XMLTokener.java similarity index 100% rename from TheButtonAutoFlair/src/org/json/XMLTokener.java rename to src/org/json/XMLTokener.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/AnnouncerThread.java b/src/tk/sznp/thebuttonautoflair/AnnouncerThread.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/AnnouncerThread.java rename to src/tk/sznp/thebuttonautoflair/AnnouncerThread.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/Channel.java b/src/tk/sznp/thebuttonautoflair/Channel.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/Channel.java rename to src/tk/sznp/thebuttonautoflair/Channel.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/ChatProcessing.java b/src/tk/sznp/thebuttonautoflair/ChatProcessing.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/ChatProcessing.java rename to src/tk/sznp/thebuttonautoflair/ChatProcessing.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/Commands.java b/src/tk/sznp/thebuttonautoflair/Commands.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/Commands.java rename to src/tk/sznp/thebuttonautoflair/Commands.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.java b/src/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.java rename to src/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/FlairStates.java b/src/tk/sznp/thebuttonautoflair/FlairStates.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/FlairStates.java rename to src/tk/sznp/thebuttonautoflair/FlairStates.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/JarUtils.java b/src/tk/sznp/thebuttonautoflair/JarUtils.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/JarUtils.java rename to src/tk/sznp/thebuttonautoflair/JarUtils.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.java b/src/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.java rename to src/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.java b/src/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.java rename to src/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PlayerListener.java b/src/tk/sznp/thebuttonautoflair/PlayerListener.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PlayerListener.java rename to src/tk/sznp/thebuttonautoflair/PlayerListener.java diff --git a/TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PluginMain.java b/src/tk/sznp/thebuttonautoflair/PluginMain.java similarity index 100% rename from TheButtonAutoFlair/src/tk/sznp/thebuttonautoflair/PluginMain.java rename to src/tk/sznp/thebuttonautoflair/PluginMain.java diff --git a/TheButtonAutoFlair/target/classes/org/json/CDL.class b/target/classes/org/json/CDL.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/CDL.class rename to target/classes/org/json/CDL.class diff --git a/TheButtonAutoFlair/target/classes/org/json/Cookie.class b/target/classes/org/json/Cookie.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/Cookie.class rename to target/classes/org/json/Cookie.class diff --git a/TheButtonAutoFlair/target/classes/org/json/CookieList.class b/target/classes/org/json/CookieList.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/CookieList.class rename to target/classes/org/json/CookieList.class diff --git a/TheButtonAutoFlair/target/classes/org/json/HTTP.class b/target/classes/org/json/HTTP.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/HTTP.class rename to target/classes/org/json/HTTP.class diff --git a/TheButtonAutoFlair/target/classes/org/json/HTTPTokener.class b/target/classes/org/json/HTTPTokener.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/HTTPTokener.class rename to target/classes/org/json/HTTPTokener.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONArray.class b/target/classes/org/json/JSONArray.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONArray.class rename to target/classes/org/json/JSONArray.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONException.class b/target/classes/org/json/JSONException.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONException.class rename to target/classes/org/json/JSONException.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONML.class b/target/classes/org/json/JSONML.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONML.class rename to target/classes/org/json/JSONML.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONObject$Null.class b/target/classes/org/json/JSONObject$Null.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONObject$Null.class rename to target/classes/org/json/JSONObject$Null.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONObject.class b/target/classes/org/json/JSONObject.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONObject.class rename to target/classes/org/json/JSONObject.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONString.class b/target/classes/org/json/JSONString.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONString.class rename to target/classes/org/json/JSONString.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONStringer.class b/target/classes/org/json/JSONStringer.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONStringer.class rename to target/classes/org/json/JSONStringer.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONTokener.class b/target/classes/org/json/JSONTokener.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONTokener.class rename to target/classes/org/json/JSONTokener.class diff --git a/TheButtonAutoFlair/target/classes/org/json/JSONWriter.class b/target/classes/org/json/JSONWriter.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/JSONWriter.class rename to target/classes/org/json/JSONWriter.class diff --git a/TheButtonAutoFlair/target/classes/org/json/Property.class b/target/classes/org/json/Property.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/Property.class rename to target/classes/org/json/Property.class diff --git a/TheButtonAutoFlair/target/classes/org/json/README b/target/classes/org/json/README similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/README rename to target/classes/org/json/README diff --git a/TheButtonAutoFlair/target/classes/org/json/XML.class b/target/classes/org/json/XML.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/XML.class rename to target/classes/org/json/XML.class diff --git a/TheButtonAutoFlair/target/classes/org/json/XMLTokener.class b/target/classes/org/json/XMLTokener.class similarity index 100% rename from TheButtonAutoFlair/target/classes/org/json/XMLTokener.class rename to target/classes/org/json/XMLTokener.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/AnnouncerThread.class b/target/classes/tk/sznp/thebuttonautoflair/AnnouncerThread.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/AnnouncerThread.class rename to target/classes/tk/sznp/thebuttonautoflair/AnnouncerThread.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Channel.class b/target/classes/tk/sznp/thebuttonautoflair/Channel.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Channel.class rename to target/classes/tk/sznp/thebuttonautoflair/Channel.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/ChatProcessing.class b/target/classes/tk/sznp/thebuttonautoflair/ChatProcessing.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/ChatProcessing.class rename to target/classes/tk/sznp/thebuttonautoflair/ChatProcessing.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Commands$1.class b/target/classes/tk/sznp/thebuttonautoflair/Commands$1.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Commands$1.class rename to target/classes/tk/sznp/thebuttonautoflair/Commands$1.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Commands$2.class b/target/classes/tk/sznp/thebuttonautoflair/Commands$2.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Commands$2.class rename to target/classes/tk/sznp/thebuttonautoflair/Commands$2.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Commands.class b/target/classes/tk/sznp/thebuttonautoflair/Commands.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/Commands.class rename to target/classes/tk/sznp/thebuttonautoflair/Commands.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.class b/target/classes/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.class rename to target/classes/tk/sznp/thebuttonautoflair/CreativeGlobalMechanic.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/FlairStates.class b/target/classes/tk/sznp/thebuttonautoflair/FlairStates.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/FlairStates.class rename to target/classes/tk/sznp/thebuttonautoflair/FlairStates.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/JarUtils.class b/target/classes/tk/sznp/thebuttonautoflair/JarUtils.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/JarUtils.class rename to target/classes/tk/sznp/thebuttonautoflair/JarUtils.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class b/target/classes/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class rename to target/classes/tk/sznp/thebuttonautoflair/MaybeOfflinePlayer.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerJoinTimerTask.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$1.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$1.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$1.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerListener$1.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$2.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$2.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$2.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerListener$2.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$3.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$3.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$3.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerListener$3.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$4.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$4.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$4.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerListener$4.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$5.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$5.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$5.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerListener$5.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$6.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$6.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener$6.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerListener$6.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener.class b/target/classes/tk/sznp/thebuttonautoflair/PlayerListener.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PlayerListener.class rename to target/classes/tk/sznp/thebuttonautoflair/PlayerListener.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PluginMain$1.class b/target/classes/tk/sznp/thebuttonautoflair/PluginMain$1.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PluginMain$1.class rename to target/classes/tk/sznp/thebuttonautoflair/PluginMain$1.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PluginMain$2.class b/target/classes/tk/sznp/thebuttonautoflair/PluginMain$2.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PluginMain$2.class rename to target/classes/tk/sznp/thebuttonautoflair/PluginMain$2.class diff --git a/TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PluginMain.class b/target/classes/tk/sznp/thebuttonautoflair/PluginMain.class similarity index 100% rename from TheButtonAutoFlair/target/classes/tk/sznp/thebuttonautoflair/PluginMain.class rename to target/classes/tk/sznp/thebuttonautoflair/PluginMain.class