-return {common={"common","group_lists","random","request","schems",},main={"alpha","armor_stand","commands","flower_spread","god_stick","join_skyblock_mob","lobby","lucky_block","mapgen","money","netherrack_fix","plots","ranks","shopping","spawns","tpa","trade","wither_spawn",},onload={"lava_cooling","load_group_lists","lobby_grass","monster_egg_stone_block","nether_portal","remove_heads_from_armor","sapling_mutation","shop_signs","spawn","void",},}
\ No newline at end of file
+return {common={"common","group_lists","random","request","schems",},main={"alpha","armor_stand","commands","flower_spread","god_stick","join_skyblock_entity","lobby","lucky_block","mapgen","money","netherrack_fix","plots","ranks","shopping","spawns","tpa","trade","wither_spawn",},onload={"lava_cooling","load_group_lists","lobby_grass","monster_egg_stone_block","nether_portal","remove_heads_from_armor","sapling_mutation","shop_signs","spawn","void",},}
\ No newline at end of file
axey = groupcaps,
shovely = groupcaps,
fleshy = groupcaps,
+ handy = groupcaps,
},
- damage_groups = {fleshy = 1000},
+ damage_groups = {fleshy = 65535},
}
})
--- /dev/null
+local function on_punch_or_rightclick(self, player)
+ if not player:is_player() then return end
+ local name = player:get_player_name()
+ if player:get_wielded_item():get_name() ~= "skycraft:god_stick" then
+ skycraft.join_skyblock(name)
+ else
+ self.object:remove()
+ end
+end
+
+local function on_activate(self)
+ self.object:set_pos({x = 17, y = 10000.5, z = 0,})
+ self.object:set_yaw(math.pi * 1.5)
+ self.object:set_nametag_attributes({color = "#00B59A", text = "Join Skyblock"})
+ self.object:set_animation({x = 0, y = 79}, 30, 0)
+ self.object:set_armor_groups({immortal = 1})
+end
+
+minetest.register_entity("skycraft:join_skyblock", {
+ initial_properties = {
+ collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.75, 0.3},
+ visual = "mesh",
+ mesh = "character.b3d",
+ textures = {"character.png"},
+ },
+ on_punch = on_punch_or_rightclick,
+ on_rightclick = on_punch_or_rightclick,
+ on_activate = on_activate,
+})
+++ /dev/null
-local function on_punch_or_rightclick(self, player)
- if player and player.is_player and player:is_player() then
- local name = player:get_player_name()
- if player:get_wielded_item():get_name() == "mcl_core:stick" and minetest.check_player_privs(name, {server = true}) then
- self.object:remove()
- else
- skycraft.join_skyblock(name)
- end
- end
- return false
-end
-
-mobs:register_mob("skycraft:join_skyblock", {
- nametag = "Join Skyblock",
- type = "npc",
- jump = false,
- armor = 0,
- stand_chance = 100,
- walk_chance = 0,
- collisionbox = {-0.3, -0.01, -0.3, 0.3, 1.94, 0.3},
- visual = "mesh",
- mesh = "character.b3d",
- textures = {
- {"mcl_skins_character_1.png"},
- },
- glow = 10,
- do_custom = function(self)
- self.object:set_yaw(math.pi * 1.5)
- end,
- on_rightclick = on_punch_or_rightclick,
- do_punch = on_punch_or_rightclick,
-})