This plugin was just re-written and may contain some bugs. Just report them to me so i can fix them fast.
Advanced gathering aims on combining timberering with vein mining. Additionally crop harvesting is also a planned feature. This plugin is very configurable and can be tuned for either best looks or insane performance.
Remember that the core library depends on ProtocolLib and PlaceholderAPI.
This plugin shines with a vide variety of options to ensure the best fit for your server. Timbering trees is done in 3 iterations. Scan, Safety, Breaking. Each can be modified. Also implemented is a very powerful condition system that allows automatic integration with all plugins that support placeholers.
! Timbering is disabled on default ! Every player can enable it for himself by using
Code (Text):
/ag toggle timber
Example setup:
Code (Text):
McMMO Woodcutting level < 10 => Not allowed to timber
McMMO Woodcutting level 20+ => Trees with a size of 50 allowed
McMMO Woodcutting level 50+ => Trees with a size of 100 + 1.5 * lvl allowed
Infinite possibilites.
(The marker are just for debugging and are disabled on default)
Expressions can be of arithmetic and/or boolean nature. True corresponds to 1.0 and false to 0.0
So this expression
Code (Text):
(%player_level% > 10) * 20
Will yield 20.0 if the players level is bigger than 10 and 0.0 otherwise. If it is evaluated as a boolean then everything that is not exactly 0.0 is defined as true.
How to do a chance expression:
Code (Text):
50% chance:
%randomnumber_number_10% > 0.5
Very precise 3.75% chance:
%randomnumber_number_100% > 0.0375
How to check for items like axes:
Code (Text):
%checkitem_matcontains:AXE,inhand:main% = "yes"
Words have to be set into quotes " "
Supported symbols:
Code (Text):
() - Create a parenthetical expression which will be evaluated first (3 * (4 + 1))
e - Euler's constant (log(e))
pi - pi (sin(pi))
+ - Add two numbers (1 + 1)
- - Subtract two numbers, or negate one (3-2, -(4+2))
/ - Divide two numbers (3 / 4)
* - Multiply two numbers (2 * 3)
^ - Raise one number to the power of another (3^3)
% - Take the modulus, or division remainder, of one number with another (7 % 4)
abs - Take the absolute value of a number (abs$1, abs-1)
round - Rounds a number to the nearest integer (round1.5, round(2.3))
ceil - Rounds a number up to the nearest integer (ceil1.05)
floor - Rounds a number down to the nearest integer (floor0.95)
rand - Generate a random number between 0 and the specified upper bound (rand4)
log - Get the natural logarithm of a number (log(e))
sqrt - Get the square root of a number (sqrt4)
cbrt - Get the cube root of a number (cbrt(8))
sin - Get the sine of a number (sin$2)
cos - Get the cosine of a number (cos(2*pi))
tan - Get the tangent of a number (tanpi)
asin - Get the arcsine of a number (asin$2)
acos - Get the arccosine of a number (acos0.45)
atan - Get the arctangent of a number (atan1)
sinh - Get the hyperbolic sine of a number (sinh(4))
cosh - Get the hyperbolic cosine of a number (sinh(4))
true - Boolean constant representing 1
false - Boolean constant representing 0
= - Compare if two numbers are equal (1 = 1 will be 1, 1 = 3 will be 0)
!= - Compare if two numbers are not equal (1 != 2 will be 1, 1 != 1 will be 0)
> - Compare if one number is greater than another (1 > 0)
< - Compare if one number is less than another (0 < 1)
>= - Compare if one number is greater than or equal to another (1 >= 1)
<= - Compare if one number is less than or equal to another (0 <= 1)
| - Boolean or (true | false)
& - Boolean and (true & true)
! - Boolean not/inverse (!true)
You can also substitute named expressions from inside the SmileCore folder. The file named-conditions.json lets you write extensive expressions which can later be referred to using two # signs: