From ca954ccc97455264af054a6ac49e3e01d5a590a1 Mon Sep 17 00:00:00 2001 From: jewome62 Date: Sun, 11 Aug 2019 21:15:02 +0200 Subject: [PATCH 1/4] Add toggle for time --- Bukkit/src/main/resources/plugin.yml | 1 + .../plotsquared/plot/commands/Toggle.java | 12 ++++++++++++ .../plotsquared/plot/config/Captions.java | 1 + .../plotsquared/plot/listener/PlotListener.java | 2 +- Nukkit/src/main/resources/plugin.yml | 1 + 5 files changed, 16 insertions(+), 1 deletion(-) diff --git a/Bukkit/src/main/resources/plugin.yml b/Bukkit/src/main/resources/plugin.yml index 4c6f33b10..f60db3d67 100644 --- a/Bukkit/src/main/resources/plugin.yml +++ b/Bukkit/src/main/resources/plugin.yml @@ -126,6 +126,7 @@ permissions: plots.toggle: true plots.toggle.titles: true plots.toggle.chat: true + plots.toggle.time: true plots.set.biome: true plots.set.home: true plots.set.alias: true diff --git a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/commands/Toggle.java b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/commands/Toggle.java index e19d81762..11715fcbf 100644 --- a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/commands/Toggle.java +++ b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/commands/Toggle.java @@ -75,6 +75,18 @@ import com.github.intellectualsites.plotsquared.plot.util.MainUtil; } } + @CommandDeclaration(command = "time", permission = "plots.toggle.time", + description = "Toggle plot time settings") + public void time(Command command, PlotPlayer player, String[] args, + RunnableVal3 confirm, + RunnableVal2 whenDone) { + if (toggle(player, "disabletime")) { + MainUtil.sendMessage(player, Captions.TOGGLE_ENABLED, command.toString()); + } else { + MainUtil.sendMessage(player, Captions.TOGGLE_DISABLED, command.toString()); + } + } + public boolean toggle(PlotPlayer player, String key) { if (player.getAttribute(key)) { player.removeAttribute(key); diff --git a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/config/Captions.java b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/config/Captions.java index 5fd74a9ea..f9f33c20e 100644 --- a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/config/Captions.java +++ b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/config/Captions.java @@ -52,6 +52,7 @@ public enum Captions { PERMISSION_WORLDEDIT_BYPASS("plots.worldedit.bypass", "static.permissions"), PERMISSION_PLOT_TOGGLE_TITLES("plots.toggle.titles", "static.permissions"), PERMISSION_PLOT_TOGGLE_CHAT("plots.toggle.chat", "static.permissions"), + PERMISSION_PLOT_TOGGLE_TIME("plots.toggle.time", "static.permissions"), PERMISSION_ADMIN_UPDATE_NOTIFICATION("plots.admin.update.notify", "static.permissions"), PERMISSION_ADMIN_EXIT_DENIED("plots.admin.exit.denied", "static.permissions"), PERMISSION_ADMIN_ENTRY_DENIED("plots.admin.entry.denied", "static.permissions"), diff --git a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/listener/PlotListener.java b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/listener/PlotListener.java index c26c4231e..6d738b758 100644 --- a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/listener/PlotListener.java +++ b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/listener/PlotListener.java @@ -122,7 +122,7 @@ public class PlotListener { } } Optional timeFlag = plot.getFlag(Flags.TIME); - if (timeFlag.isPresent()) { + if (timeFlag.isPresent() && !player.getAttribute("disabletime")) { try { long time = timeFlag.get(); player.setTime(time); diff --git a/Nukkit/src/main/resources/plugin.yml b/Nukkit/src/main/resources/plugin.yml index a25e26cf9..d17737c50 100644 --- a/Nukkit/src/main/resources/plugin.yml +++ b/Nukkit/src/main/resources/plugin.yml @@ -119,6 +119,7 @@ permissions: plots.toggle: true plots.toggle.titles: true plots.toggle.chat: true + plots.toggle.time: true plots.set.biome: true plots.set.home: true plots.set.alias: true From f1c190028e51d695864f74d369e5ddf30ec345d7 Mon Sep 17 00:00:00 2001 From: NotMyFault Date: Mon, 12 Aug 2019 23:59:14 +0200 Subject: [PATCH 2/4] Fixes #2013 Tested with LuckPerms, result successful. --- Core/src/main/resources/addplots.js | 2 +- Core/src/main/resources/automerge.js | 28 +------------------------- Core/src/main/resources/fixborders.js | 29 ++------------------------- 3 files changed, 4 insertions(+), 55 deletions(-) diff --git a/Core/src/main/resources/addplots.js b/Core/src/main/resources/addplots.js index b45f8d4ff..f3696d7ff 100644 --- a/Core/src/main/resources/addplots.js +++ b/Core/src/main/resources/addplots.js @@ -1,6 +1,6 @@ /* This will increase a player's allowed plots by the provided value -/plot debugexec runasync addperm +/plot debugexec runasync addplots.js */ var uuid = UUIDHandler.getUUID('%s0', null); if (uuid === null) { diff --git a/Core/src/main/resources/automerge.js b/Core/src/main/resources/automerge.js index 220a24867..e2846f87e 100644 --- a/Core/src/main/resources/automerge.js +++ b/Core/src/main/resources/automerge.js @@ -1,32 +1,6 @@ /* -Need to script something quick with PlotSquared? -/plot debugexec runasync automerge.js - This is an example script that will auto merge all plots - -The following utility classes are usable: - - PlotSquared - - TaskManager - - TitleManager - - ConsolePlayer - - SchematicHandler - - ChunkManager - - BlockManager - - SetupUtils - - EventUtil - - UUIDHandler - - DBFunc - - HybridUtils - - IMP ( BukkitMain or SpongeMain) - - MainCommand - - MainUtil - - Settings - - StringMan - - MathMan - - C ( use C_ ) - - Permissions ( use Permissions_ ) - - For more information see: https://github.com/IntellectualSites/PlotSquared/wiki/Scripting +/plot debugexec runasync automerge.js */ var plots = PS.sortPlotsByTemp(PS.getPlots()); PS.class.static.log("Attempting to auto merge " + plots.size() + " plots"); diff --git a/Core/src/main/resources/fixborders.js b/Core/src/main/resources/fixborders.js index 779b54c61..1becaeb60 100644 --- a/Core/src/main/resources/fixborders.js +++ b/Core/src/main/resources/fixborders.js @@ -1,31 +1,6 @@ /* -Need to script something quick with PlotSquared? -/plot debugexec runasync fixborder.js - - -The following utility classes are usable: - - PS - - TaskManager - - TitleManager - - ConsolePlayer - - SchematicHandler - - ChunkManager - - BlockManager - - SetupUtils - - EventUtil - - UUIDHandler - - DBFunc - - HybridUtils - - IMP ( BukkitMain or SpongeMain) - - MainCommand - - MainUtil - - Settings - - StringMan - - MathMan - - C ( use C_ ) - - Permissions ( use Permissions_ ) - - For more information see: https://github.com/IntellectualSites/PlotSquared/wiki/Scripting +Fixes border around plots +/plot debugexec runasync fixborder.js */ var plots = PS.sortPlotsByTemp(PS.getPlots()); PS.class.static.log("Attempting to fix border for " + plots.size() + " plots"); From b1391bd6d796e02784aec1a6958d1c0c808afc1f Mon Sep 17 00:00:00 2001 From: NotMyFault Date: Tue, 13 Aug 2019 03:13:03 +0200 Subject: [PATCH 3/4] Fix template export --- .../plotsquared/plot/generator/HybridPlotManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/generator/HybridPlotManager.java b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/generator/HybridPlotManager.java index ac10f7aab..773b427c9 100644 --- a/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/generator/HybridPlotManager.java +++ b/Core/src/main/java/com/github/intellectualsites/plotsquared/plot/generator/HybridPlotManager.java @@ -43,7 +43,7 @@ public class HybridPlotManager extends ClassicPlotManager { Files.readAllBytes(sideroad.toPath()))); } File intersection = - MainUtil.getFile(PlotSquared.get().IMP.getDirectory(), "intersection.schem"); + MainUtil.getFile(PlotSquared.get().IMP.getDirectory(), dir + "intersection.schem"); if (intersection.exists()) { files.add(new FileBytes(newDir + "intersection.schem", Files.readAllBytes(intersection.toPath()))); From bb97fb8e1969c9e679f59275cf627976624acb22 Mon Sep 17 00:00:00 2001 From: NotMyFault Date: Tue, 13 Aug 2019 04:08:17 +0200 Subject: [PATCH 4/4] Update Templates to sponge schematic format Skyblock has been removed as it was simply the default island if ASkyBlock --- Core/src/main/resources/bridge.template | Bin 5325 -> 2920 bytes Core/src/main/resources/skyblock.template | Bin 1127 -> 0 bytes Core/src/main/resources/town.template | Bin 1771 -> 2659 bytes 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Core/src/main/resources/skyblock.template diff --git a/Core/src/main/resources/bridge.template b/Core/src/main/resources/bridge.template index d5f9ccd933cdd4107dc56b07265ed7bc13946f00..0e21a3a17ab2203da1ce435ce0e432f4236b91be 100644 GIT binary patch delta 2629 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 a#K>@>xb@JWGe6&fKQ{LdgHSs6^Y&lrAk0+& literal 5325 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 TkbmDp{Ix=U1?DBe@6-PPqm#)9 diff --git a/Core/src/main/resources/skyblock.template b/Core/src/main/resources/skyblock.template deleted file mode 100644 index 1801175de6ef386cdbffe98679a3ca4f2fdee3ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1127 zcmWIWW@Zs#;Nak35SkY4#()GYf$ZYsjMUu3lFa1d7JkYy(3GdMD%wS#BgqN`u^QvcToS;S*Et9Q_^dy}*3Ml8VQie_o4w+|J&;@A|j>x~ZkVc3A0)P04RPel=B9 zOd@>J@AnHcn$+3?zPcW`Ii>H3B==v=UZt4(Y+qL%7Gzi~caF)E<3+Cil#jcPUw9}a z)xsF>{6f<)=#fVyPioP$?;^UXTHa}=ej4y=E;(^fNHFJab!x*rrsLiR7JvVeXONt% zSL~q7+Pmwta%R&#uA3HiwVztrvliJedi{d`qvGR3BGEPlOSreOxw-RvoF3WqsI@(2 z$-j*gTeVz5&3yKJQq2GGqxr^yoE=japIXJGQs{K*q`~J;-({BShFl0qJ-oKY_3HWQ z`>tf3%b9NHY8sN&86I9_c7K`P`t{pV=UmH}}9I7Kipa4?kcv$_{;pZDGdC|btEz#s;U&63pIf}F&X)MEXT+ydQ{ z#F9k4%G{jTfP;RA4S4px*Dku9xncoh(7OUxrgx#UcI37QhkNeIQursU9=m;7%%tyc zz9;Qx)I2#?!1l&E{~#M#NtfTeK{E0`ZbrGh-hHP?VCov9R+mIylLV%h`kGO#f<}oa zHy(U_`}gVN>dCSWsw)=1t(l_KYG}UFFz~HH$p#MfR*lUvo1@L*9o7a$vM-ykeI?f& zK6#IsZwwjaj#Zj zLpX0!4Ki4Wxz%2+srQ ICT0*10BLf5gML3)2ce3VC(5+D$%p-5<R7Sd&b4**0sG?Rk{r&Cg-d6M8L|WF9h)G_AnD=PQO*_q7 zV7*n@R(X!+T&+RekffmR(VT1gZ=v_*C_KyYq7m{66w|OZG`AVU<{_ zoj1PL9dOq@X&vrt(Ng5g>+$C?C9D8ni>TDr3(CPXsDJWORmRoXYROA)Rk*;yUWCwI z8D-6#Gq1u8Si6F4_1?oHllHkdKQoJ6QC)f9N+p*HBz^yt{$%FU-gr2RIDdAN7i$4Enmj` z5n1%boTKzIcmUapEN*-3PVTe2Pz`n#)?gip`{kBlySXxRQW#km0!m+VX?e&_ z22;~){4$S&3Aml0oZF+x9=?kOJ#d`7OmTPZ%_Jw0z&1&{AQ-3R$hSITx~-e0sz{@% zfY8?3`RHa9`J8Pz(nhmG+LaGe1}}yuCXp*%Jsn_DaW`XBp)<>HEU!jbRhwzd-ZUj) zf=%KrqEow?&a>6T*rQIUt*gAzXjEVM35g~Zo6x#YVKeCvg)fae2~0Iqd2aPKW+#sy z-#-i7Deq>TCMJjJbe|6yj)F zPm(QL7Gn%?sGr|N8p0O-pxfW@i@I+a!VfR4FX)}eOw??zTM!nt#xLco-ci2>H%j#* z#PqRKm7ip$Vi`6TJYkean+C|7-9_tGL+p_7hHoAdi*m+x)d~5CMQ7=W7~Zs};LtQA z!8jDwn9Q>$2)Qu2Y^@~K^F1+%=H9vAa~bmK9u@fYTQgDf#Q~0q!D;}tn99)lcgw8q zfL#9FCgI8oe*zijyY0q?s#s1M&k)nq463eNl%1bu1jR*28uxpKC@_tGrWskdJ;1+D zPFj$NkiW(I#jW`ywac)5KOOI}{5ShDHu1oq1{@-I^$b>k2R4ib(-ESos{Nl7U2??y z&E@s|AB2fRy4UAG8^wLXPgE`*Vu};`#WzDHNlO)8gy=l@xfi*UCa)d4F@f;#(R@hz z9r-o0t})4XZ(L6{u$LsCztnTx8Mc=*2JZhk*99b%|!W2{RydHLaL zO=7s0HU>CP$z!?mDXMBp{heInj@9miQJjxGa{xhpi-tIK&w$(f85Z{52 zXK&nwNseQ_wgG$OjSO_3=A0jc!L4DtAnj-+kLXsm32!gA87EViH;;w+G0+;r1P$I$ z+JJ%q0M?)O`vE1fYmr+a+yvlF;KO4PBJ@A^bee2|>D1$lm8MR=Giv7BT;%vFdJDUV zmcLakBjcceMJ`FWH(IC)>Jpl>>{3Esnhjfu_Mx^~$b)VBBhAcL>XVBM*pF++OrkFw z00GxTG9f?Ys3B+xrD2?J^b2TES*>mJg7WSSx0z!JB+CvM|=QJn0d~8EP zf)=N|(#ln3g}g^vUQ3h+Zbys@iT6VdRYaiIDZ>ccYGN0d_HTuwpJPoZ`M;SoQ4-!(Rfp zhbuZPPy|Xljq9$BZ-A6r)r=rIM!n{bdA{AQykW=U&A1Z28K0f`kg^+=_LbsLxc=0_ ztVEC>PUIj~Wd%l*o`X6bd^p<({42!Lf$pQ0Xf1PIm%@DZa{1NJCpHtC1o`{386Gq$ z+KKVv)*FEWs>_|F&ii+dm#x7fQw_-MLi>y|NkeMiX0X$Abi}=Be+J~MqNC8OQ9HPi zPCdtmm$QfbJ(vjVVQD?13xUieJh7Mfy)@3)h&9-EWGdoc&>t=h>MMIS=MFgwx^D?a zS1oQyamY1u>3dgVgY^x^tX42?%J%y@ZsBSi4Thpi9o1)7-M=MzHN__|#+n`-(T|u; zdBz$wqn!H_KrMz-5P=|Gz<*zrUpc5j9s`@n|8K^xE1>hsV*>yLfk`lhQ=a}`&95E# bf2*-$B3nX)c)^g%9Gz2eFbG=s0ifqk1(2P7r zSKaa;HOd3ZDqWnfLy9@6G#u-}gN@OiWw>00Myk zs5{Q4fK4zE&I8;%Q5Yo7%RRuw?3@kaye-rOalzR9oHf+m!q^3Yus>%FN0?ZgM<84R zygX3;K1dJEuX_@wKecrWD!|6^Ms z)j+o{qNVGIG?}^B#4026sI7$J+3IE5qJByk!f%j2^p-Mf=mKM-DGXwLby#{Yl}Vr( z75VTgY#NtejO`^5VL>rlJPzB)616e(ENjAx&@N{KBn+S5+a9@N^;Z&M96P{PIYvxg zYm9HfGhiVsz45C2QPC%19SWOx4YTJI|7qTUNGY_S7ZoQ=;f_UWd{x z-J;J@r#WzT64qnNp}11LTPOBOZ^lm*KK%I0Z`GwLMcoI2Wi%95H3J2O&OiI~V*R#Q z&A5$BEzB_yL4(if5#`>*es6AJHMfWE)3-Z({#wq_o)sQuO`4J(#(O^QkoHob(h^a< zw17@zu(*Qh#cnpK(TU2cN}s-OKzO=p#vM0vD2-qU5~+?@NXJE9|Lc@xNl5@41_U*G zO$_RY0st1mg8!>N6@~i5p)kJQNE|BQ2oB?W*aL|}YTm?nyC&FPh}HtvPlw_MPfec1 zup3>APj~Cd*T@}W)tHg)CQt+^j8*&r;Y5! z6KH|$uIa%TWx-#4Dc*Iw+Fk?zxc{Ghf&N%-cwuoU{{WOb&dUe8ksTu2Mdnr^_dtK= z5&Jw8TcZVj{JV}@T_N*>eBs#}P}jk9+5#m}2U|$~ zL-UC#EuTeYUXP0K1-&VlIZzbruoxXFFG3Y9vXoRzn)JgqKG5VRYqX&`AmT})>cM*M z{!xGZ0q<=X$F780<{nC3%&d+cBE!jATcrRxnlsz(KvYYavvb8mR0GMF$SvzO0D{at z!4qI1{o92Fhlz+P05*bqvt`zU`=9t4$^R$DzrAX+3f4WiflQ$;zVFCy&)EEwb-irh cl=u(*I^S0h93~;;3;+-l4kaO5WQq0FpAlUTS^xk5