Unblock the Fun, One Click at a Time with MMOBlock
Issue Fix:
- Item Stored on inventory or Minepacks have identifier
Could not pass event PlayerInteractEvent to MMOBlock v2.8.1-Latest
java.lang.NullPointerException: Cannot invoke "net.Indyuce.mmocore.api.player.attribute.PlayerAttribute.getId()" because "<parameter1>" is null
at net.Indyuce.mmocore.api.player.attribute.PlayerAttributes.getInstance(PlayerAttributes.java:97) ~[MMOCore-1.13.jar:?]
at net.Indyuce.mmocore.api.player.attribute.PlayerAttributes.getAttribute(PlayerAttributes.java:77) ~[MMOCore-1.13.jar:?]
at org.justforfun.compability.MMOCoreComp.getAttributeLevel(Unknown Source) ~[MMOBlock-Latest.jar:?]
at org.justforfun.listeners.interact.Clicked.A(Unknown Source) ~[MMOBlock-Latest.jar:?]
...MMOItems additional checks, required item level, required item profession level, and required item attribute level.
1. Command Changes:
2. Interaction fix.
3. Drop Config Changes:
<entityId>:
exampledrop1:
item:
drop_type: inventory #inventory, minepacks, front_ground(front of player), and center_ground(center of entity).
exampledrop2:
exp:
drop_type: front_ground #front_ground(front of player), and center_ground(center of entity).
example_drop7:
profession:
drop_type: front_ground #front_ground(front of player), and center_ground(center of entity).
4. Remove Legacy Hologram
<entityId>:
hologram:
enable: true # enable/disable holo
customHolo: # hologram line
'1': # 1 meaning line 1, line 1 on top
value: <#ANIM&1;#FFFFFF,10,10,u>Rainbow Ore</#ANIM>
#value: "<#ANIM&1;#FFFFFF,20,20,u>RainbowOre</#ANIM>" # wave animation usage <#ANIM[color1];[color2];[color3];[etc],[(int) stay],[(int) transition],[bold<b>/italic<i>/underline<u>/strikethrough<st>]>Text</#ANIM>
#value: "<#ANIM:fade:&1;#FFFFFF,20,20,u>RainbowOre</#ANIM>" # wave animation usage <#ANIM:fade:[color1];[color2];[color3];[etc],[(int) stay],[(int) transition],[bold<b>/italic<i>/underline<u>/strikethrough<st>]>Text</#ANIM>
#value: "<#ANIM:colors:&1;#FFFFFF,20,20,u>RainbowOre</#ANIM>" # wave animation usage <#ANIM:colors:[color1];[color2];[color3];[etc],[(int) stay],[(int) transition],[bold<b>/italic<i>/underline<u>/strikethrough<st>]>Text</#ANIM>
#value: "<#ANIM:scroll:&1;#FFFFFF,20,20,u>RainbowOre</#ANIM>" # wave animation usage <#ANIM:scroll:[color1];[color2];[color3];[etc],[(int) stay],[(int) transition],[bold<b>/italic<i>/underline<u>/strikethrough<st>]>Text</#ANIM>
#value: "<#ANIM:typewriter:&1;#FFFFFF,u>RainbowOre</#ANIM>" # wave animation usage <#ANIM:typewriter:[color1];[color2];[color3];[etc],[bold<b>/italic<i>/underline<u>/strikethrough<st>]>Text</#ANIM>
#value: "<#ANIM:burn:&1;#FFFFFF,u>RainbowOre</#ANIM>" # wave animation usage <#ANIM:burn:[color1],[color2],[bold<b>/italic<i>/underline<u>/strikethrough<st>]>Text</#ANIM>
height: 0.4 # line spacing
'2':
value: <#ANIM:scroll:&e;&c,5,5,st>Required Mining Lvl 1 </#ANIM> # hex usage
height: 0.4
'3':
value: <#00FF00>[Click to Mine]</#00FF00>
height: 0.4
'4':
value: item # identifier to use item display
id: DIAMOND_PICKAXE # item id
custom_model_data: 0 # support custom model data
height: 0.4
progressHolo:
"1":
value: <#ANIM&1;#FFFFFF,10,10,u>Rainbow Ore</#ANIM>
height: 0.4 # line spacing
"2":
value: "&7[&f%progress_bar%&7]" # progress bar
height: 0.4 # line spacing
deathHolo:
"1":
value: <#ANIM&1;#FFFFFF,10,10,u>Rainbow Ore</#ANIM>
height: 0.4 # line spacing
"2":
value: "<gradient:#FFA500:#F92986>Respawning in: %respawnTime%s</gradient>" # gradient usage
height: 0.4 # line spacing
detectionRange: 16 # range detect player to show hologram and hologram position
hologramDistance:
east: 5 # east cardinal positions max distance, if the value 0 always in center
south: 5 # south cardinal positions max distance, if the value 0 always in center
west: 4 # west cardinal positions max distance, if the value 0 always in center
north: 4 # north cardinal positions max distance, if the value 0 always in center
height: 2.5 # global height line customHolo
clickHeight: 2.5 # global height line progressHolo
respawnHeigth: 2.5 # global height line deathHolo
shadowed: true # or false
background: true
<entityId>:
block:
onSpawn:
path: "uglyTree.yml"
adjustPlacement:
x: 1
y: 0
z: 4
onDeath:
path: "uglyTreeDead.yml"
adjustPlacement:
x: 1
y: 0
z: 4
# block:
# DIAMOND_ORE:
# locations:
# - 0, 0, 1, x, true
# - 1, 0, 0, x, true
# IRON_ORE:
# locations:
# - 1, 0, 1, x, true
<enityId>:
allowed_tools:
"1":
material: DIAMOND_PICKAXE
right_click:
decreaseDurability: 10
clickNeeded: 3
left_click:
decreaseDurability: 15
clickNeeded: 2
allowedDrops:
- exampledrop1
- exampledrop2
- exampledrop3
"2":
material: stone_pickaxe
both_click:
decreaseDurability: 15
clickNeeded: 4
allowedDrops:
- exampledrop1
"3":
material: _iainternal:iron_pickaxe_custom #ItemsAdder
right_click:
decreaseDurability: 10
clickNeeded: 3
left_click:
decreaseDurability: 15
clickNeeded: 2
allowedDrops:
- exampledrop1
- exampledrop2
- exampledrop3
- exampledrop4
- exampledrop5
- example_drop7
"4":
material: tool:steel_pickaxe #MMOItems
both_click:
decreaseDurability: 15
clickNeeded: 4
allowedDrops: [] #empty will allow all drops
"5":
material: forest_pickaxe #Nexo
both_click:
decreaseDurability: 15
clickNeeded: 4
allowedDrops: []
<entityId>:
drops:
exampledrop1:
item:
material: raw_iron
total: [1-3] # drop lower amount is higher chance, higher amount is lower chance
chances: 1 # 1 is 100 percent
target: both_click #left_click or both_click
exampledrop2:
exp:
value: [1-50]
chances: 0.6
target: right_click #left_click or both_click
exampledrop3:
command:
value: "give %player% diamond %amount%" #%player% and %amount% is internal placeholder
amount: [1-10]
chances: 0.2
target: right_click #left_click or both_click
exampledrop4:
item:
material: _iainternal:iron_pickaxe_custom #itemsadder
total: [1-2]
chances: 0.3
target: right_click #left_click or both_click
exampledrop5:
item:
material: tool:steel_pickaxe #mmoitems
total: [1-2]
chances: 0.3
target: right_click #left_click or both_click
example_drop6:
item:
material: warrior_item #mmoidentifier
total: [1-3]
chances: 0.4
target: both_click #left_click or both_click
example_drop7:
profession:
value: woodcutting #mmocore profession exp
total: [ 1-30 ]
chances: 0.6
target: left_click #left_click or both_click
exampledrop8:
item:
material: forest_pickaxe #Nexo
total: [1-2]
chances: 0.4
target: right_click #left_click or both_click
Old Configurations:
#config.yml
entity:
example:
allowed_tools:
- DIAMOND_PICKAXE;3
- TOOL:STEEL_PICKAXE;5 #mmoitems
- STONE_PICKAXE;8
- _iainternal:iron_pickaxe_custom;8 #itemsadder
drops:
- RAW_IRON;3;0.8
- TOOL:STEEL_PICKAXE;1;0.1
- _iainternal:iron_pickaxe_custom;1;1
- profession;woodcutting;30
- exp;50;1
- command;give %player% diamond 1;1
New Configurations:
#/block/<id>.yml
<id>:
decrease_durability: 10 #removed configuration section
#No changes on other section
block:
type: bamboo_planks #nexo support
wide: 0
height: 1
allowed_tools:
"1":
material: DIAMOND_PICKAXE
decreaseDurability: 5
clickNeeded: 3
allowedDrops:
- exampledrop1
- exampledrop2
- exampledrop3
"2":
material: stone_pickaxe
decreaseDurability: 5
clickNeeded: 3
allowedDrops:
- exampledrop1
"3":
material: _iainternal:iron_pickaxe_custom
decreaseDurability: 10
clickNeeded: 3
allowedDrops:
- exampledrop1
- exampledrop2
- exampledrop3
- exampledrop4
- exampledrop5
- example_drop7
"4":
material: tool:steel_pickaxe
decreaseDurability: 10
clickNeeded: 3
allowedDrops: [] #empty will allow all drops
"5":
material: forest_pickaxe #nexo format
decreaseDurability: 10
clickNeeded: 3
allowedDrops: []
drops:
exampledrop1:
item:
material: raw_iron
total: [1-3] # drop lower amount is higher chance, higher amount is lower chance
chances: 1 # 1 is 100 percent
exampledrop2:
exp:
value: [1-50]
chances: 0.6
exampledrop3:
command:
value: "give %player% diamond %amount%" #%player% and %amount% is internal placeholder
amount: [1-10]
chances: 0.2
exampledrop4:
item:
material: _iainternal:iron_pickaxe_custom #itemsadder
total: [1-2]
chances: 0.3
exampledrop5:
item:
material: tool:steel_pickaxe #mmoitems
total: [1-2]
chances: 0.3
example_drop6:
item:
material: warrior_item #mmoidentifier
total: [1-3]
chances: 0.4
example_drop7:
profession:
value: woodcutting #mmocore profession exp
total: [ 1-30 ]
chances: 0.6
exampledrop8:
item:
material: forest_pickaxe #Nexo
total: [1-2]
chances: 0.4
Changelogs:
hologram: modern #can switch to legacy
entity:
example:
drop-options:
ClientSideDrop: true
PerPlayerDrop: true
Lootsplosion: true
ItemBeam:
enable: true
color: BLUE
ItemGlowByDefault:
enable: true
color: RAINBOW
Changes:
entity:
example:
hologram:
enable: true #enable/disable holo
customHolo: #hologram line
"1": #1 meaning line 1, line 1 on top
value: '<gradient:#FFA500:#F92986>Rainbow Ore</gradient>' #gradient usage
height: 0.4 #line spacing
"2":
value: '<#FFA500>Required Mining Lvl 1</#FFA500>' #hex usage
height: 0.4
"3":
value: '<#00FF00>[Click to Mine]</#00FF00>'
height: 0.4
"4":
value: item #identifier to use item display
id: diamond_pickaxe #item id
custom_model_data: 0 #support custom model data
height: 0.4
height: 2.2 #global height line
shadowed: true #or false
background: true
clickHeight: 1.4
progressbar:
progressing: "&a|"
noprogress: "<gray>|"
prefixProgress: "&8["
suffixProgress: "<dark_gray>]"
barlength: 16
|
%mmoblock_click_cooldown%
|
Current cooldown time in second |
|
%mmoblock_click_cooldown_max%
|
Max value cooldown time |
New Configuration:
#config file version 2
debug: false
lang: en-us
entity:
example:
send-title: "&eYour tool not matching!" # vanilla color code usage
send-subtitle: "<red>or Tools are too low</red>" # color code usage
click_cooldown: 0.5
action_bar: true
decrease_durability: 15
#model: iron_ore #model from modelengine
#on_click: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed
#ondeathanim: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed
respawn: 5
#death_delay: 1
hologram:
enable: true #enable/disable holo
customHolo: #hologram line
"1": #1 meaning line 1, line 1 on top
value: '<gradient:#FFA500:#F92986>Rainbow Ore</gradient>' #gradient usage
height: 0.4 #line spacing
"2":
value: '<#FFA500>Required Mining Lvl 1</#FFA500>' #hex usage
height: 0.4
"3":
value: '<#00FF00>[Click to Mine]</#00FF00>'
height: 0.4
"4":
value: item #identifier to use item display
id: diamond_pickaxe #item id
custom_model_data: 0 #support custom model data
height: 0.4
height: 2.2 #global height line
shadowed: true #or false
background: true
clickHeight: 1.4
block:
type: DIAMOND_ORE #for itemsadder custom block use like this <namespace>:<block id>, for Oraxen block use like this <block id>
wide: 0
height: 1
#conditions:
#mmocore-level:
# level: mining:1
# send-title: "&eYour Level Is too Low"
# send-subtitle: "<red>Minimum Level 1</red>"
#condition1: #can make more than 1
# first: '%vault_eco_balance%'
# second: 500
# operator: '>'
# send-title: "&eYour funds not met"
# send-subtitle: "<red>Minimum 500</red>"
sounds:
onClick: block.stone.hit
onDeath: block.stone.break
allowed_tools:
- DIAMOND_PICKAXE;3
# - TOOL:STEEL_PICKAXE;5
- STONE_PICKAXE;8
# - _iainternal:iron_pickaxe_custom;8
drops:
- RAW_IRON;3;0.8
# - TOOL:STEEL_PICKAXE;1;0.1
# - _iainternal:iron_pickaxe_custom;1;1
# - profession;woodcutting;30
- exp;50;1
- command;give %player% diamond 1;1
progressbar:
progressing: "&a|"
noprogress: "<gray>|"
prefixProgress: "&8["
suffixProgress: "<dark_gray>]"
barlength: 16Changes:
entity:
example:
hologram:
enable: true #enable/disable holo
customHolo: #hologram line
"1": #1 meaning line 1, line 1 on top
value: '<gradient:#FFA500:#F92986>Rainbow Ore</gradient>' #gradient usage
height: 0.4 #line spacing
"2":
value: '<#FFA500>Required Mining Lvl 1</#FFA500>;height=0.4' #hex usage
height: 0.4
"3":
value: '<#00FF00>[Click to Mine]</#00FF00>;height=0.4'
height: 0.4
"4":
value: item #identifier to use item display
id: diamond_pickaxe #item id
custom_model_data: 0 #support custom model data
height: 0.4
height: 2.2 #global height line
shadowed: true #or false
background: true
clickHeight: 1.4
progressbar:
progressing: "&a|"
noprogress: "<gray>|"
prefixProgress: "&8["
suffixProgress: "<dark_gray>]"
barlength: 16
|
%mmoblock_click_cooldown%
|
Current cooldown time in second |
|
%mmoblock_click_cooldown_max%
|
Max value cooldown time |
New Configuration:
#config file version 2
debug: false
lang: en-us
entity:
example:
send-title: "&eYour tool not matching!" # vanilla color code usage
send-subtitle: "<red>or Tools are too low</red>" # color code usage
click_cooldown: 0.5
action_bar: true
decrease_durability: 15
#model: iron_ore #model from modelengine
#on_click: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed
#ondeathanim: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed
respawn: 5
#death_delay: 1
hologram:
enable: true #enable/disable holo
customHolo: #hologram line
"1": #1 meaning line 1, line 1 on top
value: '<gradient:#FFA500:#F92986>Rainbow Ore</gradient>' #gradient usage
height: 0.4 #line spacing
"2":
value: '<#FFA500>Required Mining Lvl 1</#FFA500>;height=0.4' #hex usage
height: 0.4
"3":
value: '<#00FF00>[Click to Mine]</#00FF00>;height=0.4'
height: 0.4
"4":
value: item #identifier to use item display
id: diamond_pickaxe #item id
custom_model_data: 0 #support custom model data
height: 0.4
height: 2.2 #global height line
shadowed: true #or false
background: true
clickHeight: 1.4
block:
type: DIAMOND_ORE #for itemsadder custom block use like this <namespace>:<block id>, for Oraxen block use like this <block id>
wide: 0
height: 1
#conditions:
#mmocore-level:
# level: mining:1
# send-title: "&eYour Level Is too Low"
# send-subtitle: "<red>Minimum Level 1</red>"
#condition1: #can make more than 1
# first: '%vault_eco_balance%'
# second: 500
# operator: '>'
# send-title: "&eYour funds not met"
# send-subtitle: "<red>Minimum 500</red>"
sounds:
onClick: block.stone.hit
onDeath: block.stone.break
allowed_tools:
- DIAMOND_PICKAXE;3
# - TOOL:STEEL_PICKAXE;5
- STONE_PICKAXE;8
# - _iainternal:iron_pickaxe_custom;8
drops:
- RAW_IRON;3;0.8
# - TOOL:STEEL_PICKAXE;1;0.1
# - _iainternal:iron_pickaxe_custom;1;1
# - profession;woodcutting;30
- exp;50;1
- command;give %player% diamond 1;1
progressbar:
progressing: "&a|"
noprogress: "<gray>|"
prefixProgress: "&8["
suffixProgress: "<dark_gray>]"
barlength: 16#config file version 1.4 debug: false lang: en-us cooldown: 1 # in seconds entity: example: send-title: "&eYour tool not matching!" # vanilla color code usage send-subtitle: "<red>or Tools are too low</red>" # color code usage decrease_durability: 15 #model: iron_ore #model from modelengine #on_click: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed #ondeathanim: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed respawn: 5 #death_delay: 1 hologram: enable: true customHolo: - '<gradient:#FFA500:#00FF00>Diamond Ore</gradient>' #gradient usage #first line not affect with height - '<#FFA500>Required Mining Lvl 1</#FFA500>;height=0.3' #hex usage - '<#00FF00>[Click to Mine]</#00FF00>;height=0.3' height: 2 #all line height clickHeight: 1 block: type: DIAMOND_ORE #for itemsadder custom block use like this <namespace>:<block id>, for Oraxen block use like this <block id> wide: 0 height: 1 #conditions: #mmocore-level: # level: mining:1 # send-title: "&eYour Level Is too Low" # send-subtitle: "<red>Minimum Level 1</red>" #condition1: #can make more than 1 # first: '%vault_eco_balance%' # second: 500 # operator: '>' # send-title: "&eYour funds not met" # send-subtitle: "<red>Minimum 500</red>" sounds: onClick: block.stone.hit onDeath: block.stone.break allowed_tools: - DIAMOND_PICKAXE;3 # - TOOL:STEEL_PICKAXE;5 - STONE_PICKAXE;8 # - _iainternal:iron_pickaxe_custom;8 drops: - RAW_IRON;3;0.8 # - TOOL:STEEL_PICKAXE;1;0.1 # - _iainternal:iron_pickaxe_custom;1;1 # - profession;woodcutting;30 - exp;50;1 - command;give %player% diamond 1;1 progressbar: progressing: "<green>|</green>" noprogress: "<gray>|</gray>" barlength: 16
Changelogs:
* Fix blank line show ArmorStand as Name
* Add customizable height per line on hologram
New Config:#config file version 1.4 debug: false lang: en-us cooldown: 1 # in seconds entity: example: send-title: "&eYour tool not matching!" # vanilla color code usage send-subtitle: "<red>or Tools are too low</red>" # color code usage decrease_durability: 15 #model: iron_ore #model from modelengine #on_click: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed #ondeathanim: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed respawn: 5 #death_delay: 1 hologram: enable: true customHolo: - '<gradient:#FFA500:#00FF00>Diamond Ore</gradient>' #gradient usage #first line not affect with height - '<#FFA500>Required Mining Lvl 1</#FFA500>height=0.3' #hex usage - '<#00FF00>[Click to Mine]</#00FF00>;height=0.3' height: 2 #all line height clickHeight: 1 block: type: DIAMOND_ORE #for itemsadder custom block use like this <namespace>:<block id>, for Oraxen block use like this <block id> wide: 0 height: 1 #conditions: #mmocore-level: # level: mining:1 # send-title: "&eYour Level Is too Low" # send-subtitle: "<red>Minimum Level 1</red>" #condition1: #can make more than 1 # first: '%vault_eco_balance%' # second: 500 # operator: '>' # send-title: "&eYour funds not met" # send-subtitle: "<red>Minimum 500</red>" sounds: onClick: block.stone.hit onDeath: block.stone.break allowed_tools: - DIAMOND_PICKAXE;3 # - TOOL:STEEL_PICKAXE;5 - STONE_PICKAXE;8 # - _iainternal:iron_pickaxe_custom;8 drops: - RAW_IRON;3;0.8 # - TOOL:STEEL_PICKAXE;1;0.1 # - _iainternal:iron_pickaxe_custom;1;1 # - profession;woodcutting;30 - exp;50;1 - command;give %player% diamond 1;1 progressbar: progressing: "<green>|</green>" noprogress: "<gray>|</gray>" barlength: 16
Bug Fixes:
- Make Itemsadder block unbreakable
- command "/mmoblock remove all" error fixes
New Config:#config file version 1.4 debug: false lang: en-us cooldown: 1 # in seconds entity: example: send-title: "&eYour tool not matching!" # vanilla color code usage send-subtitle: "<red>or Tools are too low</red>" # color code usage decrease_durability: 15 #model: iron_ore #model from modelengine #on_click: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed #ondeathanim: hit;0;0;1 #animaniton_name;lerpin;lerpout;speed respawn: 5 #death_delay: 1 hologram: enable: true customHolo: - '<gradient:#FFA500:#00FF00>Diamond Ore</gradient>' #gradient usage - '<#FFA500>Required Mining Lvl 1</#FFA500>' #hex usage - '<#00FF00>[Click to Mine]</#00FF00>' height: 2 clickHeight: 1 block: type: DIAMOND_ORE #for itemsadder custom block use like this <namespace>:<block id>, for Oraxen block use like this <block id> wide: 0 height: 1 #conditions: #mmocore-level: # level: mining:1 # send-title: "&eYour Level Is too Low" # send-subtitle: "<red>Minimum Level 1</red>" #condition1: #can make more than 1 # first: '%vault_eco_balance%' # second: 500 # operator: '>' # send-title: "&eYour funds not met" # send-subtitle: "<red>Minimum 500</red>" sounds: onClick: block.stone.hit onDeath: block.stone.break allowed_tools: - DIAMOND_PICKAXE;3 # - TOOL:STEEL_PICKAXE;5 - STONE_PICKAXE;8 # - _iainternal:iron_pickaxe_custom;8 drops: - RAW_IRON;3;0.8 # - TOOL:STEEL_PICKAXE;1;0.1 # - _iainternal:iron_pickaxe_custom;1;1 # - profession;woodcutting;30 - exp;50;1 - command;give %player% diamond 1;1 progressbar: progressing: "<green>|</green>" noprogress: "<gray>|</gray>" barlength: 16