Module malmoext.types

Expand source code
from typing import Union
from enum import Enum

class ReflectiveEnum(Enum):
    '''An enumerated type that provides additional utility methods for checking
    whether keys or values exist within the enum'''

    @classmethod
    def contains(cls, toCheck):
        '''Returns true if the given string is a member of this enum'''
        if isinstance(toCheck, str) or isinstance(toCheck, int):
            return toCheck in cls._value2member_map_
        else:
            return toCheck.value in cls._value2member_map_



class TimeOfDay(ReflectiveEnum):
    '''Enum type describing unique times of day within Minecraft'''

    dawn = 0
    noon = 6000
    sunset = 12000
    midnight = 18000



class Direction(ReflectiveEnum):
    '''Enum type describing compass directions in Minecraft'''

    north = 180
    east = -90
    south = 0
    west = 90



class Inventory:
    '''Enumerations describing inventory slot locations'''

    class HotBar(ReflectiveEnum):
        '''An inventory hotbar slot'''

        _0 = 0
        _1 = 1
        _2 = 2
        _3 = 3
        _4 = 4
        _5 = 5
        _6 = 6
        _7 = 7
        _8 = 8

    class Main(ReflectiveEnum):
        '''A main player inventory slot. This does NOT include hot bar inventory.'''

        _9 = 9
        _10 = 10
        _11 = 11
        _12 = 12
        _13 = 13
        _14 = 14
        _15 = 15
        _16 = 16
        _17 = 17
        _18 = 18
        _19 = 19
        _20 = 20
        _21 = 21
        _22 = 22
        _23 = 23
        _24 = 24
        _25 = 25
        _26 = 26
        _27 = 27
        _28 = 28
        _29 = 29
        _30 = 30
        _31 = 31
        _32 = 32
        _33 = 33
        _34 = 34
        _35 = 35

    class Armor(ReflectiveEnum):
        '''An inventory slot used to equip pieces of armor'''

        boots = 36
        leggings = 37
        chestplate = 38
        helmet = 39


class Mob(ReflectiveEnum):
    '''A Minecraft mob entity'''

    agent = "Agent"
    bat = "Bat"
    blaze = "Blaze"
    cave_spider = "CaveSpider"
    chicken = "Chicken"
    cow = "Cow"
    creeper = "Creeper"
    donkey = "Donkey"
    elder_guardian = "ElderGuardian"
    ender_dragon = "EnderDragon"
    enderman = "Enderman"
    endermite = "Endermite"
    evocation_villager = "EvocationIllager"           # Malmo has typo, which needs to be replicated here
    ghast = "Ghast"
    giant = "Giant"
    guardian = "Guardian"
    horse = "Horse"
    husk = "Husk"
    lava_slime = "LavaSlime"
    llama = "Llama"
    mule = "Mule"
    mushroom_cow = "MushroomCow"
    ozelot = "Ozelot"
    pig = "Pig"
    pig_zombie = "PigZombie"
    polar_bear = "PolarBear"
    rabbit = "Rabbit"
    sheep = "Sheep"
    shulker = "Shulker"
    silverfish = "Silverfish"
    skeleton = "Skeleton"
    skeleton_horse = "SkeletonHorse"
    slime = "Slime"
    snowman = "SnowMan"
    spider = "Spider"
    squid = "Squid"
    stray = "Stray"
    vex = "Vex"
    villager = "Villager"
    villager_golem = "VillagerGolem"
    vindication_villager = "VindicationIllager"     # Malmo has typo, which needs to be replicated here
    witch = "Witch"
    wither_boss = "WitherBoss"
    wither_skeleton = "WitherSkeleton"
    wolf = "Wolf"
    zombie = "Zombie"
    zombie_horse = "ZombieHorse"
    zombie_villager = "ZombieVillager"

    @classmethod
    def is_hostile(cls, to_check):
        return to_check in HOSTILE_MOBS
    
    @classmethod
    def is_peaceful(cls, to_check):
        return to_check in PEACEFUL_MOBS
    
    @classmethod
    def drops_food(cls, to_check):
        return to_check in FOOD_MOBS

HOSTILE_MOBS = set([
    Mob.blaze,
    Mob.cave_spider,
    Mob.creeper,
    Mob.elder_guardian,
    Mob.ender_dragon,
    Mob.enderman,
    Mob.endermite,
    Mob.evocation_villager,
    Mob.ghast,
    Mob.guardian,
    Mob.husk,
    Mob.lava_slime,
    Mob.pig_zombie,
    Mob.shulker,
    Mob.silverfish,
    Mob.skeleton,
    Mob.slime,
    Mob.spider,
    Mob.stray,
    Mob.vex,
    Mob.vindication_villager,
    Mob.witch,
    Mob.wither_boss,
    Mob.wither_skeleton,
    Mob.zombie,
    Mob.zombie_villager
])

PEACEFUL_MOBS = set([
    Mob.bat,
    Mob.chicken,
    Mob.cow,
    Mob.donkey,
    Mob.giant,
    Mob.horse,
    Mob.llama,
    Mob.mule,
    Mob.mushroom_cow,
    Mob.ozelot,
    Mob.pig,
    Mob.polar_bear,
    Mob.rabbit,
    Mob.sheep,
    Mob.skeleton_horse,
    Mob.snowman,
    Mob.squid,
    Mob.villager,
    Mob.villager_golem,
    Mob.wolf,
    Mob.zombie_horse
])

FOOD_MOBS = set([
    Mob.chicken,
    Mob.cow,
    Mob.mushroom_cow,
    Mob.pig,
    Mob.rabbit,
    Mob.sheep
])



class Item(ReflectiveEnum):
    '''A Minecraft item'''

    acacia_boat = "acacia_boat"
    acacia_door = "acacia_door"
    apple = "apple"
    armor_stand = "armor_stand"
    arrow = "arrow"
    baked_potato = "baked_potato"
    banner = "banner"
    bed = "bed"
    beef = "beef"
    beetroot = "beetroot"
    beetroot_seeds = "beetroot_seeds"
    beetroot_soup = "beetroot_soup"
    birch_boat = "birch_boat"
    birch_door = "birch_door"
    blaze_powder = "blaze_powder"
    blaze_rod = "blaze_rod"
    boat = "boat"
    bone = "bone"
    book = "book"
    bow = "bow"
    bowl = "bowl"
    bread = "bread"
    brewing_stand = "brewing_stand"
    brick = "brick"
    bucket = "bucket"
    cake = "cake"
    carrot = "carrot"
    carrot_on_a_stick = "carrot_on_a_stick"
    cauldron = "cauldron"
    chainmail_boots = "chainmail_boots"
    chainmail_chestplate = "chainmail_chestplate"
    chainmail_helmet = "chainmail_helmet"
    chainmail_leggings = "chainmail_leggings"
    chest_minecart = "chest_minecart"
    chicken = "chicken"
    chorus_fruit = "chorus_fruit"
    chorus_fruit_popped = "chorus_fruit_popped"
    clay_ball = "clay_ball"
    clock = "clock"
    coal = "coal"
    command_block_minecart = "command_block_minecart"
    comparator = "comparator"
    compass = "compass"
    cooked_beef = "cooked_beef"
    cooked_chicken = "cooked_chicken"
    cooked_fish = "cooked_fish"
    cooked_mutton = "cooked_mutton"
    cooked_porkchop = "cooked_porkchop"
    cooked_rabbit = "cooked_rabbit"
    cookie = "cookie"
    dark_oak_boat = "dark_oak_boat"
    dark_oak_door = "dark_oak_door"
    diamond = "diamond"
    diamond_axe = "diamond_axe"
    diamond_boots = "diamond_boots"
    diamond_chestplate = "diamond_chestplate"
    diamond_helmet = "diamond_helmet"
    diamond_hoe = "diamond_hoe"
    diamond_horse_armor = "diamond_horse_armor"
    diamond_leggings = "diamond_leggings"
    diamond_pickaxe = "diamond_pickaxe"
    diamond_shovel = "diamond_shovel"
    diamond_sword = "diamond_sword"
    dragon_breath = "dragon_breath"
    dye = "dye"
    egg = "egg"
    elytra = "elytra"
    emerald = "emerald"
    enchanted_book = "enchanted_book"
    ender_eye = "ender_eye"
    ender_pearl = "ender_pearl"
    experience_bottle = "experience_bottle"
    feather = "feather"
    fermented_spider_eye = "fermented_spider_eye"
    filled_map = "filled_map"
    fire_charge = "fire_charge"
    firework_charge = "firework_charge"
    fireworks = "fireworks"
    fish = "fish"
    fishing_rod = "fishing_rod"
    flint = "flint"
    flint_and_steel = "flint_and_steel"
    flower_pot = "flower_pot"
    furnace_minecart = "furnace_minecart"
    ghast_tear = "ghast_tear"
    glass_bottle = "glass_bottle"
    glowstone_dust = "glowstone_dust"
    gold_ingot = "gold_ingot"
    gold_nugget = "gold_nugget"
    golden_apple = "golden_apple"
    golden_axe = "golden_axe"
    golden_boots = "golden_boots"
    golden_carrot = "golden_carrot"
    golden_chestplate = "golden_chestplate"
    golden_helmet = "golden_helmet"
    golden_hoe = "golden_hoe"
    golden_horse_armor = "golden_horse_armor"
    golden_leggings = "golden_leggings"
    golden_pickaxe = "golden_pickaxe"
    golden_shovel = "golden_shovel"
    golden_sword = "golden_sword"
    gunpowder = "gunpowder"
    hopper_minecart = "hopper_minecart"
    iron_axe = "iron_axe"
    iron_boots = "iron_boots"
    iron_chestplate = "iron_chestplate"
    iron_door = "iron_door"
    iron_helmet = "iron_helmet"
    iron_hoe = "iron_hoe"
    iron_horse_armor = "iron_horse_armor"
    iron_ingot = "iron_ingot"
    iron_leggings = "iron_leggings"
    iron_nugget = "iron_nugget"
    iron_pickaxe = "iron_pickaxe"
    iron_shovel = "iron_shovel"
    iron_sword = "iron_sword"
    item_frame = "item_frame"
    jungle_boat = "jungle_boat"
    jungle_door = "jungle_door"
    lava_bucket = "lava_bucket"
    lead = "lead"
    leather = "leather"
    leather_boots = "leather_boots"
    leather_chestplate = "leather_chestplate"
    leather_helmet = "leather_helmet"
    leather_leggings = "leather_leggings"
    lingering_potion = "lingering_potion"
    magma_cream = "magma_cream"
    map = "map"
    melon = "melon"
    melon_seeds = "melon_seeds"
    milk_bucket = "milk_bucket"
    minecart = "minecart"
    mushroom_stew = "mushroom_stew"
    mutton = "mutton"
    name_tag = "name_tag"
    nether_star = "nether_star"
    nether_wart = "nether_wart"
    netherbrick = "netherbrick"
    painting = "painting"
    paper = "paper"
    poisonous_potato = "poisonous_potato"
    porkchop = "porkchop"
    potato = "potato"
    potion = "potion"
    prismarine_crystals = "prismarine_crystals"
    prismarine_shard = "prismarine_shard"
    pumpkin_pie = "pumpkin_pie"
    pumpkin_seeds = "pumpkin_seeds"
    quartz = "quartz"
    rabbit = "rabbit"
    rabbit_foot = "rabbit_foot"
    rabbit_hide = "rabbit_hide"
    rabbit_stew = "rabbit_stew"
    record_11 = "record_11"
    record_13 = "record_13"
    record_blocks = "record_blocks"
    record_cat = "record_cat"
    record_chirp = "record_chirp"
    record_far = "record_far"
    record_mall = "record_mall"
    record_mellohi = "record_mellohi"
    record_stal = "record_stal"
    record_strad = "record_strad"
    record_wait = "record_wait"
    record_ward = "record_ward"
    redstone = "redstone"
    reeds = "reeds"
    repeater = "repeater"
    rotten_flesh = "rotten_flesh"
    saddle = "saddle"
    shears = "shears"
    shield = "shield"
    shulker_shell = "shulker_shell"
    sign = "sign"
    skull = "skull"
    slime_ball = "slime_ball"
    snowball = "snowball"
    spawn_egg = "spawn_egg"
    speckled_melon = "speckled_melon"
    spectral_arrow = "spectral_arrow"
    spider_eye = "spider_eye"
    splash_potion = "splash_potion"
    spruce_boat = "spruce_boat"
    spruce_door = "spruce_door"
    stick = "stick"
    stone_axe = "stone_axe"
    stone_hoe = "stone_hoe"
    stone_pickaxe = "stone_pickaxe"
    stone_shovel = "stone_shovel"
    stone_sword = "stone_sword"
    string = "string"
    sugar = "sugar"
    tipped_arrow = "tipped_arrow"
    tnt_minecart = "tnt_minecart"
    totem_of_undying = "totem_of_undying"
    water_bucket = "water_bucket"
    wheat = "wheat"
    wheat_seeds = "wheat_seeds"
    wooden_axe = "wooden_axe"
    wooden_door = "wooden_door"
    wooden_hoe = "wooden_hoe"
    wooden_pickaxe = "wooden_pickaxe"
    wooden_shovel = "wooden_shovel"
    wooden_sword = "wooden_sword"
    writable_book = "writable_book"
    written_book = "written_book"

    @classmethod
    def is_food(cls, to_check):
        return to_check in FOOD_ITEMS

FOOD_ITEMS = set([
    Item.apple,
    Item.baked_potato,
    Item.beef,
    Item.beetroot_soup,
    Item.bread,
    Item.cake,
    Item.carrot,
    Item.chicken,
    Item.cooked_beef,
    Item.cooked_chicken,
    Item.cooked_fish,
    Item.cooked_mutton,
    Item.cooked_porkchop,
    Item.cooked_rabbit,
    Item.cookie,
    Item.fish,
    Item.golden_apple,
    Item.golden_carrot,
    Item.mushroom_stew,
    Item.mutton,
    Item.poisonous_potato,
    Item.porkchop,
    Item.potato,
    Item.pumpkin_pie,
    Item.rabbit,
    Item.rabbit_stew,
    Item.rotten_flesh
])



class Block(ReflectiveEnum):
    '''A type of Minecraft block'''

    acacia_door = "acacia_door"
    acacia_fence = "acacia_fence"
    acacia_fence_gate = "acacia_fence_gate"
    acacia_stairs = "acacia_stairs"
    activator_rail = "activator_rail"
    air = "air"
    anvil = "anvil"
    barrier = "barrier"
    beacon = "beacon"
    bed = "bed"
    bedrock = "bedrock"
    beetroots = "beetroots"
    birch_door = "birch_door"
    birch_fence = "birch_fence"
    birch_fence_gate = "birch_fence_gate"
    birch_stairs = "birch_stairs"
    black_shulker_box = "black_shulker_box"
    blue_shulker_box = "blue_shulker_box"
    bone_block = "bone_block"
    bookshelf = "bookshelf"
    brewing_stand = "brewing_stand"
    brick_block = "brick_block"
    brick_stairs = "brick_stairs"
    brown_mushroom = "brown_mushroom"
    brown_mushroom_block = "brown_mushroom_block"
    brown_shulker_box = "brown_shulker_box"
    cactus = "cactus"
    cake = "cake"
    carpet = "carpet"
    carrots = "carrots"
    cauldron = "cauldron"
    chain_command_block = "chain_command_block"
    chest = "chest"
    chorus_flower = "chorus_flower"
    chorus_plant = "chorus_plant"
    clay = "clay"
    coal_block = "coal_block"
    coal_ore = "coal_ore"
    cobblestone = "cobblestone"
    cobblestone_wall = "cobblestone_wall"
    cocoa = "cocoa"
    command_block = "command_block"
    crafting_table = "crafting_table"
    cyan_shulker_box = "cyan_shulker_box"
    dark_oak_door = "dark_oak_door"
    dark_oak_fence = "dark_oak_fence"
    dark_oak_fence_gate = "dark_oak_fence_gate"
    dark_oak_stairs = "dark_oak_stairs"
    daylight_detector = "daylight_detector"
    daylight_detector_inverted = "daylight_detector_inverted"
    deadbush = "deadbush"
    detector_rail = "detector_rail"
    diamond_block = "diamond_block"
    diamond_ore = "diamond_ore"
    dirt = "dirt"
    dispenser = "dispenser"
    double_plant = "double_plant"
    double_stone_slab = "double_stone_slab"
    double_stone_slab2 = "double_stone_slab2"
    double_wooden_slab = "double_wooden_slab"
    dragon_egg = "dragon_egg"
    dropper = "dropper"
    emerald_block = "emerald_block"
    emerald_ore = "emerald_ore"
    enchanting_table = "enchanting_table"
    end_bricks = "end_bricks"
    end_gateway = "end_gateway"
    end_portal = "end_portal"
    end_portal_frame = "end_portal_frame"
    end_rod = "end_rod"
    end_stone = "end_stone"
    ender_chest = "ender_chest"
    farmland = "farmland"
    fence = "fence"
    fence_gate = "fence_gate"
    fire = "fire"
    flower_pot = "flower_pot"
    flowing_lava = "flowing_lava"
    flowing_water = "flowing_water"
    frosted_ice = "frosted_ice"
    furnace = "furnace"
    glass = "glass"
    glass_pane = "glass_pane"
    glowstone = "glowstone"
    gold_block = "gold_block"
    gold_ore = "gold_ore"
    golden_rail = "golden_rail"
    grass = "grass"
    grass_path = "grass_path"
    gravel = "gravel"
    gray_shulker_box = "gray_shulker_box"
    green_shulker_box = "green_shulker_box"
    hardened_clay = "hardened_clay"
    hay_block = "hay_block"
    heavy_weighted_pressure_plate = "heavy_weighted_pressure_plate"
    hopper = "hopper"
    ice = "ice"
    iron_bars = "iron_bars"
    iron_block = "iron_block"
    iron_door = "iron_door"
    iron_ore = "iron_ore"
    iron_trapdoor = "iron_trapdoor"
    jukebox = "jukebox"
    jungle_door = "jungle_door"
    jungle_fence = "jungle_fence"
    jungle_fence_gate = "jungle_fence_gate"
    jungle_stairs = "jungle_stairs"
    ladder = "ladder"
    lapis_block = "lapis_block"
    lapis_ore = "lapis_ore"
    lava = "lava"
    leaves = "leaves"
    leaves2 = "leaves2"
    lever = "lever"
    light_blue_shulker_box = "light_blue_shulker_box"
    light_weighted_pressure_plate = "light_weighted_pressure_plate"
    lime_shulker_box = "lime_shulker_box"
    lit_furnace = "lit_furnace"
    lit_pumpkin = "lit_pumpkin"
    lit_redstone_lamp = "lit_redstone_lamp"
    lit_redstone_ore = "lit_redstone_ore"
    log = "log"
    log2 = "log2"
    magenta_shulker_box = "magenta_shulker_box"
    magma = "magma"
    melon_block = "melon_block"
    melon_stem = "melon_stem"
    mob_spawner = "mob_spawner"
    monster_egg = "monster_egg"
    mossy_cobblestone = "mossy_cobblestone"
    mycelium = "mycelium"
    nether_brick = "nether_brick"
    nether_brick_fence = "nether_brick_fence"
    nether_brick_stairs = "nether_brick_stairs"
    nether_wart = "nether_wart"
    nether_wart_block = "nether_wart_block"
    netherrack = "netherrack"
    noteblock = "noteblock"
    oak_stairs = "oak_stairs"
    observer = "observer"
    obsidian = "obsidian"
    orange_shulker_box = "orange_shulker_box"
    packed_ice = "packed_ice"
    pink_shulker_box = "pink_shulker_box"
    piston = "piston"
    piston_extension = "piston_extension"
    piston_head = "piston_head"
    planks = "planks"
    portal = "portal"
    potatoes = "potatoes"
    powered_comparator = "powered_comparator"
    powered_repeater = "powered_repeater"
    prismarine = "prismarine"
    pumpkin = "pumpkin"
    pumpkin_stem = "pumpkin_stem"
    purple_shulker_box = "purple_shulker_box"
    purpur_block = "purpur_block"
    purpur_double_slab = "purpur_double_slab"
    purpur_pillar = "purpur_pillar"
    purpur_slab = "purpur_slab"
    purpur_stairs = "purpur_stairs"
    quartz_block = "quartz_block"
    quartz_ore = "quartz_ore"
    quartz_stairs = "quartz_stairs"
    rail = "rail"
    red_flower = "red_flower"
    red_mushroom = "red_mushroom"
    red_mushroom_block = "red_mushroom_block"
    red_nether_brick = "red_nether_brick"
    red_sandstone = "red_sandstone"
    red_sandstone_stairs = "red_sandstone_stairs"
    red_shulker_box = "red_shulker_box"
    redstone_block = "redstone_block"
    redstone_lamp = "redstone_lamp"
    redstone_ore = "redstone_ore"
    redstone_torch = "redstone_torch"
    redstone_wire = "redstone_wire"
    reeds = "reeds"
    repeating_command_block = "repeating_command_block"
    sand = "sand"
    sandstone = "sandstone"
    sandstone_stairs = "sandstone_stairs"
    sapling = "sapling"
    sea_lantern = "sea_lantern"
    silver_shulker_box = "silver_shulker_box"
    skull = "skull"
    slime = "slime"
    snow = "snow"
    snow_layer = "snow_layer"
    soul_sand = "soul_sand"
    sponge = "sponge"
    spruce_door = "spruce_door"
    spruce_fence = "spruce_fence"
    spruce_fence_gate = "spruce_fence_gate"
    spruce_stairs = "spruce_stairs"
    stained_glass = "stained_glass"
    stained_glass_pane = "stained_glass_pane"
    stained_hardened_clay = "stained_hardened_clay"
    standing_banner = "standing_banner"
    standing_sign = "standing_sign"
    sticky_piston = "sticky_piston"
    stone = "stone"
    stone_brick_stairs = "stone_brick_stairs"
    stone_button = "stone_button"
    stone_pressure_plate = "stone_pressure_plate"
    stone_slab = "stone_slab"
    stone_slab2 = "stone_slab2"
    stone_stairs = "stone_stairs"
    stonebrick = "stonebrick"
    structure_block = "structure_block"
    structure_void = "structure_void"
    tallgrass = "tallgrass"
    tnt = "tnt"
    torch = "torch"
    trapdoor = "trapdoor"
    trapped_chest = "trapped_chest"
    tripwire = "tripwire"
    tripwire_hook = "tripwire_hook"
    unlit_redstone_torch = "unlit_redstone_torch"
    unpowered_comparator = "unpowered_comparator"
    unpowered_repeater = "unpowered_repeater"
    vine = "vine"
    wall_banner = "wall_banner"
    wall_sign = "wall_sign"
    water = "water"
    waterlily = "waterlily"
    web = "web"
    wheat = "wheat"
    white_shulker_box = "white_shulker_box"
    wooden_button = "wooden_button"
    wooden_door = "wooden_door"
    wooden_pressure_plate = "wooden_pressure_plate"
    wooden_slab = "wooden_slab"
    wool = "wool"
    yellow_flower = "yellow_flower"
    yellow_shulker_box = "yellow_shulker_box"


class Vector:
    '''A 3-dimensional vector'''

    def __init__(self, x: float, y: float, z: float):
        self.x = x
        self.y = y
        self.z = z

    def __hash__(self):
        return hash((self.x, self.y, self.z))
    
    def __eq__(self, other):
        return self.x == other.x and self.y == other.y and self.z == other.z


class Rotation:
    '''A rotation in yaw and pitch directions.'''

    def __init__(self, yaw: float, pitch: float):
        self.yaw = yaw
        self.pitch = pitch


class Entity:
    '''Metadata describing a mob, drop item, or an agent.'''

    def __init__(self, id: str, eType: Union[Mob, Item], name: str, position: Vector, quantity: int):
        self.id = id
        self.type = eType
        self.name = name
        self.position = position
        self.quantity = quantity


class InventoryItem:
    '''Representation of an item inside an agent's inventory'''

    def __init__(self, iType: Item, quantity: int, slot: Union[Inventory.HotBar, Inventory.Main, Inventory.Armor]):
        self.type = iType
        self.quantity = quantity
        self.slot = slot

Classes

class Block (value, names=None, *, module=None, qualname=None, type=None, start=1)

A type of Minecraft block

Expand source code
class Block(ReflectiveEnum):
    '''A type of Minecraft block'''

    acacia_door = "acacia_door"
    acacia_fence = "acacia_fence"
    acacia_fence_gate = "acacia_fence_gate"
    acacia_stairs = "acacia_stairs"
    activator_rail = "activator_rail"
    air = "air"
    anvil = "anvil"
    barrier = "barrier"
    beacon = "beacon"
    bed = "bed"
    bedrock = "bedrock"
    beetroots = "beetroots"
    birch_door = "birch_door"
    birch_fence = "birch_fence"
    birch_fence_gate = "birch_fence_gate"
    birch_stairs = "birch_stairs"
    black_shulker_box = "black_shulker_box"
    blue_shulker_box = "blue_shulker_box"
    bone_block = "bone_block"
    bookshelf = "bookshelf"
    brewing_stand = "brewing_stand"
    brick_block = "brick_block"
    brick_stairs = "brick_stairs"
    brown_mushroom = "brown_mushroom"
    brown_mushroom_block = "brown_mushroom_block"
    brown_shulker_box = "brown_shulker_box"
    cactus = "cactus"
    cake = "cake"
    carpet = "carpet"
    carrots = "carrots"
    cauldron = "cauldron"
    chain_command_block = "chain_command_block"
    chest = "chest"
    chorus_flower = "chorus_flower"
    chorus_plant = "chorus_plant"
    clay = "clay"
    coal_block = "coal_block"
    coal_ore = "coal_ore"
    cobblestone = "cobblestone"
    cobblestone_wall = "cobblestone_wall"
    cocoa = "cocoa"
    command_block = "command_block"
    crafting_table = "crafting_table"
    cyan_shulker_box = "cyan_shulker_box"
    dark_oak_door = "dark_oak_door"
    dark_oak_fence = "dark_oak_fence"
    dark_oak_fence_gate = "dark_oak_fence_gate"
    dark_oak_stairs = "dark_oak_stairs"
    daylight_detector = "daylight_detector"
    daylight_detector_inverted = "daylight_detector_inverted"
    deadbush = "deadbush"
    detector_rail = "detector_rail"
    diamond_block = "diamond_block"
    diamond_ore = "diamond_ore"
    dirt = "dirt"
    dispenser = "dispenser"
    double_plant = "double_plant"
    double_stone_slab = "double_stone_slab"
    double_stone_slab2 = "double_stone_slab2"
    double_wooden_slab = "double_wooden_slab"
    dragon_egg = "dragon_egg"
    dropper = "dropper"
    emerald_block = "emerald_block"
    emerald_ore = "emerald_ore"
    enchanting_table = "enchanting_table"
    end_bricks = "end_bricks"
    end_gateway = "end_gateway"
    end_portal = "end_portal"
    end_portal_frame = "end_portal_frame"
    end_rod = "end_rod"
    end_stone = "end_stone"
    ender_chest = "ender_chest"
    farmland = "farmland"
    fence = "fence"
    fence_gate = "fence_gate"
    fire = "fire"
    flower_pot = "flower_pot"
    flowing_lava = "flowing_lava"
    flowing_water = "flowing_water"
    frosted_ice = "frosted_ice"
    furnace = "furnace"
    glass = "glass"
    glass_pane = "glass_pane"
    glowstone = "glowstone"
    gold_block = "gold_block"
    gold_ore = "gold_ore"
    golden_rail = "golden_rail"
    grass = "grass"
    grass_path = "grass_path"
    gravel = "gravel"
    gray_shulker_box = "gray_shulker_box"
    green_shulker_box = "green_shulker_box"
    hardened_clay = "hardened_clay"
    hay_block = "hay_block"
    heavy_weighted_pressure_plate = "heavy_weighted_pressure_plate"
    hopper = "hopper"
    ice = "ice"
    iron_bars = "iron_bars"
    iron_block = "iron_block"
    iron_door = "iron_door"
    iron_ore = "iron_ore"
    iron_trapdoor = "iron_trapdoor"
    jukebox = "jukebox"
    jungle_door = "jungle_door"
    jungle_fence = "jungle_fence"
    jungle_fence_gate = "jungle_fence_gate"
    jungle_stairs = "jungle_stairs"
    ladder = "ladder"
    lapis_block = "lapis_block"
    lapis_ore = "lapis_ore"
    lava = "lava"
    leaves = "leaves"
    leaves2 = "leaves2"
    lever = "lever"
    light_blue_shulker_box = "light_blue_shulker_box"
    light_weighted_pressure_plate = "light_weighted_pressure_plate"
    lime_shulker_box = "lime_shulker_box"
    lit_furnace = "lit_furnace"
    lit_pumpkin = "lit_pumpkin"
    lit_redstone_lamp = "lit_redstone_lamp"
    lit_redstone_ore = "lit_redstone_ore"
    log = "log"
    log2 = "log2"
    magenta_shulker_box = "magenta_shulker_box"
    magma = "magma"
    melon_block = "melon_block"
    melon_stem = "melon_stem"
    mob_spawner = "mob_spawner"
    monster_egg = "monster_egg"
    mossy_cobblestone = "mossy_cobblestone"
    mycelium = "mycelium"
    nether_brick = "nether_brick"
    nether_brick_fence = "nether_brick_fence"
    nether_brick_stairs = "nether_brick_stairs"
    nether_wart = "nether_wart"
    nether_wart_block = "nether_wart_block"
    netherrack = "netherrack"
    noteblock = "noteblock"
    oak_stairs = "oak_stairs"
    observer = "observer"
    obsidian = "obsidian"
    orange_shulker_box = "orange_shulker_box"
    packed_ice = "packed_ice"
    pink_shulker_box = "pink_shulker_box"
    piston = "piston"
    piston_extension = "piston_extension"
    piston_head = "piston_head"
    planks = "planks"
    portal = "portal"
    potatoes = "potatoes"
    powered_comparator = "powered_comparator"
    powered_repeater = "powered_repeater"
    prismarine = "prismarine"
    pumpkin = "pumpkin"
    pumpkin_stem = "pumpkin_stem"
    purple_shulker_box = "purple_shulker_box"
    purpur_block = "purpur_block"
    purpur_double_slab = "purpur_double_slab"
    purpur_pillar = "purpur_pillar"
    purpur_slab = "purpur_slab"
    purpur_stairs = "purpur_stairs"
    quartz_block = "quartz_block"
    quartz_ore = "quartz_ore"
    quartz_stairs = "quartz_stairs"
    rail = "rail"
    red_flower = "red_flower"
    red_mushroom = "red_mushroom"
    red_mushroom_block = "red_mushroom_block"
    red_nether_brick = "red_nether_brick"
    red_sandstone = "red_sandstone"
    red_sandstone_stairs = "red_sandstone_stairs"
    red_shulker_box = "red_shulker_box"
    redstone_block = "redstone_block"
    redstone_lamp = "redstone_lamp"
    redstone_ore = "redstone_ore"
    redstone_torch = "redstone_torch"
    redstone_wire = "redstone_wire"
    reeds = "reeds"
    repeating_command_block = "repeating_command_block"
    sand = "sand"
    sandstone = "sandstone"
    sandstone_stairs = "sandstone_stairs"
    sapling = "sapling"
    sea_lantern = "sea_lantern"
    silver_shulker_box = "silver_shulker_box"
    skull = "skull"
    slime = "slime"
    snow = "snow"
    snow_layer = "snow_layer"
    soul_sand = "soul_sand"
    sponge = "sponge"
    spruce_door = "spruce_door"
    spruce_fence = "spruce_fence"
    spruce_fence_gate = "spruce_fence_gate"
    spruce_stairs = "spruce_stairs"
    stained_glass = "stained_glass"
    stained_glass_pane = "stained_glass_pane"
    stained_hardened_clay = "stained_hardened_clay"
    standing_banner = "standing_banner"
    standing_sign = "standing_sign"
    sticky_piston = "sticky_piston"
    stone = "stone"
    stone_brick_stairs = "stone_brick_stairs"
    stone_button = "stone_button"
    stone_pressure_plate = "stone_pressure_plate"
    stone_slab = "stone_slab"
    stone_slab2 = "stone_slab2"
    stone_stairs = "stone_stairs"
    stonebrick = "stonebrick"
    structure_block = "structure_block"
    structure_void = "structure_void"
    tallgrass = "tallgrass"
    tnt = "tnt"
    torch = "torch"
    trapdoor = "trapdoor"
    trapped_chest = "trapped_chest"
    tripwire = "tripwire"
    tripwire_hook = "tripwire_hook"
    unlit_redstone_torch = "unlit_redstone_torch"
    unpowered_comparator = "unpowered_comparator"
    unpowered_repeater = "unpowered_repeater"
    vine = "vine"
    wall_banner = "wall_banner"
    wall_sign = "wall_sign"
    water = "water"
    waterlily = "waterlily"
    web = "web"
    wheat = "wheat"
    white_shulker_box = "white_shulker_box"
    wooden_button = "wooden_button"
    wooden_door = "wooden_door"
    wooden_pressure_plate = "wooden_pressure_plate"
    wooden_slab = "wooden_slab"
    wool = "wool"
    yellow_flower = "yellow_flower"
    yellow_shulker_box = "yellow_shulker_box"

Ancestors

Class variables

var acacia_door
var acacia_fence
var acacia_fence_gate
var acacia_stairs
var activator_rail
var air
var anvil
var barrier
var beacon
var bed
var bedrock
var beetroots
var birch_door
var birch_fence
var birch_fence_gate
var birch_stairs
var black_shulker_box
var blue_shulker_box
var bone_block
var bookshelf
var brewing_stand
var brick_block
var brick_stairs
var brown_mushroom
var brown_mushroom_block
var brown_shulker_box
var cactus
var cake
var carpet
var carrots
var cauldron
var chain_command_block
var chest
var chorus_flower
var chorus_plant
var clay
var coal_block
var coal_ore
var cobblestone
var cobblestone_wall
var cocoa
var command_block
var crafting_table
var cyan_shulker_box
var dark_oak_door
var dark_oak_fence
var dark_oak_fence_gate
var dark_oak_stairs
var daylight_detector
var daylight_detector_inverted
var deadbush
var detector_rail
var diamond_block
var diamond_ore
var dirt
var dispenser
var double_plant
var double_stone_slab
var double_stone_slab2
var double_wooden_slab
var dragon_egg
var dropper
var emerald_block
var emerald_ore
var enchanting_table
var end_bricks
var end_gateway
var end_portal
var end_portal_frame
var end_rod
var end_stone
var ender_chest
var farmland
var fence
var fence_gate
var fire
var flower_pot
var flowing_lava
var flowing_water
var frosted_ice
var furnace
var glass
var glass_pane
var glowstone
var gold_block
var gold_ore
var golden_rail
var grass
var grass_path
var gravel
var gray_shulker_box
var green_shulker_box
var hardened_clay
var hay_block
var heavy_weighted_pressure_plate
var hopper
var ice
var iron_bars
var iron_block
var iron_door
var iron_ore
var iron_trapdoor
var jukebox
var jungle_door
var jungle_fence
var jungle_fence_gate
var jungle_stairs
var ladder
var lapis_block
var lapis_ore
var lava
var leaves
var leaves2
var lever
var light_blue_shulker_box
var light_weighted_pressure_plate
var lime_shulker_box
var lit_furnace
var lit_pumpkin
var lit_redstone_lamp
var lit_redstone_ore
var log
var log2
var magenta_shulker_box
var magma
var melon_block
var melon_stem
var mob_spawner
var monster_egg
var mossy_cobblestone
var mycelium
var nether_brick
var nether_brick_fence
var nether_brick_stairs
var nether_wart
var nether_wart_block
var netherrack
var noteblock
var oak_stairs
var observer
var obsidian
var orange_shulker_box
var packed_ice
var pink_shulker_box
var piston
var piston_extension
var piston_head
var planks
var portal
var potatoes
var powered_comparator
var powered_repeater
var prismarine
var pumpkin
var pumpkin_stem
var purple_shulker_box
var purpur_block
var purpur_double_slab
var purpur_pillar
var purpur_slab
var purpur_stairs
var quartz_block
var quartz_ore
var quartz_stairs
var rail
var red_flower
var red_mushroom
var red_mushroom_block
var red_nether_brick
var red_sandstone
var red_sandstone_stairs
var red_shulker_box
var redstone_block
var redstone_lamp
var redstone_ore
var redstone_torch
var redstone_wire
var reeds
var repeating_command_block
var sand
var sandstone
var sandstone_stairs
var sapling
var sea_lantern
var silver_shulker_box
var skull
var slime
var snow
var snow_layer
var soul_sand
var sponge
var spruce_door
var spruce_fence
var spruce_fence_gate
var spruce_stairs
var stained_glass
var stained_glass_pane
var stained_hardened_clay
var standing_banner
var standing_sign
var sticky_piston
var stone
var stone_brick_stairs
var stone_button
var stone_pressure_plate
var stone_slab
var stone_slab2
var stone_stairs
var stonebrick
var structure_block
var structure_void
var tallgrass
var tnt
var torch
var trapdoor
var trapped_chest
var tripwire
var tripwire_hook
var unlit_redstone_torch
var unpowered_comparator
var unpowered_repeater
var vine
var wall_banner
var wall_sign
var water
var waterlily
var web
var wheat
var white_shulker_box
var wooden_button
var wooden_door
var wooden_pressure_plate
var wooden_slab
var wool
var yellow_flower
var yellow_shulker_box

Inherited members

class Direction (value, names=None, *, module=None, qualname=None, type=None, start=1)

Enum type describing compass directions in Minecraft

Expand source code
class Direction(ReflectiveEnum):
    '''Enum type describing compass directions in Minecraft'''

    north = 180
    east = -90
    south = 0
    west = 90

Ancestors

Class variables

var east
var north
var south
var west

Inherited members

class Entity (id: str, eType: Union[MobItem], name: str, position: Vector, quantity: int)

Metadata describing a mob, drop item, or an agent.

Expand source code
class Entity:
    '''Metadata describing a mob, drop item, or an agent.'''

    def __init__(self, id: str, eType: Union[Mob, Item], name: str, position: Vector, quantity: int):
        self.id = id
        self.type = eType
        self.name = name
        self.position = position
        self.quantity = quantity
class Inventory

Enumerations describing inventory slot locations

Expand source code
class Inventory:
    '''Enumerations describing inventory slot locations'''

    class HotBar(ReflectiveEnum):
        '''An inventory hotbar slot'''

        _0 = 0
        _1 = 1
        _2 = 2
        _3 = 3
        _4 = 4
        _5 = 5
        _6 = 6
        _7 = 7
        _8 = 8

    class Main(ReflectiveEnum):
        '''A main player inventory slot. This does NOT include hot bar inventory.'''

        _9 = 9
        _10 = 10
        _11 = 11
        _12 = 12
        _13 = 13
        _14 = 14
        _15 = 15
        _16 = 16
        _17 = 17
        _18 = 18
        _19 = 19
        _20 = 20
        _21 = 21
        _22 = 22
        _23 = 23
        _24 = 24
        _25 = 25
        _26 = 26
        _27 = 27
        _28 = 28
        _29 = 29
        _30 = 30
        _31 = 31
        _32 = 32
        _33 = 33
        _34 = 34
        _35 = 35

    class Armor(ReflectiveEnum):
        '''An inventory slot used to equip pieces of armor'''

        boots = 36
        leggings = 37
        chestplate = 38
        helmet = 39

Class variables

var Armor

An inventory slot used to equip pieces of armor

var HotBar

An inventory hotbar slot

var Main

A main player inventory slot. This does NOT include hot bar inventory.

class InventoryItem (iType: Item, quantity: int, slot: Union[Inventory.HotBarInventory.MainInventory.Armor])

Representation of an item inside an agent's inventory

Expand source code
class InventoryItem:
    '''Representation of an item inside an agent's inventory'''

    def __init__(self, iType: Item, quantity: int, slot: Union[Inventory.HotBar, Inventory.Main, Inventory.Armor]):
        self.type = iType
        self.quantity = quantity
        self.slot = slot
class Item (value, names=None, *, module=None, qualname=None, type=None, start=1)

A Minecraft item

Expand source code
class Item(ReflectiveEnum):
    '''A Minecraft item'''

    acacia_boat = "acacia_boat"
    acacia_door = "acacia_door"
    apple = "apple"
    armor_stand = "armor_stand"
    arrow = "arrow"
    baked_potato = "baked_potato"
    banner = "banner"
    bed = "bed"
    beef = "beef"
    beetroot = "beetroot"
    beetroot_seeds = "beetroot_seeds"
    beetroot_soup = "beetroot_soup"
    birch_boat = "birch_boat"
    birch_door = "birch_door"
    blaze_powder = "blaze_powder"
    blaze_rod = "blaze_rod"
    boat = "boat"
    bone = "bone"
    book = "book"
    bow = "bow"
    bowl = "bowl"
    bread = "bread"
    brewing_stand = "brewing_stand"
    brick = "brick"
    bucket = "bucket"
    cake = "cake"
    carrot = "carrot"
    carrot_on_a_stick = "carrot_on_a_stick"
    cauldron = "cauldron"
    chainmail_boots = "chainmail_boots"
    chainmail_chestplate = "chainmail_chestplate"
    chainmail_helmet = "chainmail_helmet"
    chainmail_leggings = "chainmail_leggings"
    chest_minecart = "chest_minecart"
    chicken = "chicken"
    chorus_fruit = "chorus_fruit"
    chorus_fruit_popped = "chorus_fruit_popped"
    clay_ball = "clay_ball"
    clock = "clock"
    coal = "coal"
    command_block_minecart = "command_block_minecart"
    comparator = "comparator"
    compass = "compass"
    cooked_beef = "cooked_beef"
    cooked_chicken = "cooked_chicken"
    cooked_fish = "cooked_fish"
    cooked_mutton = "cooked_mutton"
    cooked_porkchop = "cooked_porkchop"
    cooked_rabbit = "cooked_rabbit"
    cookie = "cookie"
    dark_oak_boat = "dark_oak_boat"
    dark_oak_door = "dark_oak_door"
    diamond = "diamond"
    diamond_axe = "diamond_axe"
    diamond_boots = "diamond_boots"
    diamond_chestplate = "diamond_chestplate"
    diamond_helmet = "diamond_helmet"
    diamond_hoe = "diamond_hoe"
    diamond_horse_armor = "diamond_horse_armor"
    diamond_leggings = "diamond_leggings"
    diamond_pickaxe = "diamond_pickaxe"
    diamond_shovel = "diamond_shovel"
    diamond_sword = "diamond_sword"
    dragon_breath = "dragon_breath"
    dye = "dye"
    egg = "egg"
    elytra = "elytra"
    emerald = "emerald"
    enchanted_book = "enchanted_book"
    ender_eye = "ender_eye"
    ender_pearl = "ender_pearl"
    experience_bottle = "experience_bottle"
    feather = "feather"
    fermented_spider_eye = "fermented_spider_eye"
    filled_map = "filled_map"
    fire_charge = "fire_charge"
    firework_charge = "firework_charge"
    fireworks = "fireworks"
    fish = "fish"
    fishing_rod = "fishing_rod"
    flint = "flint"
    flint_and_steel = "flint_and_steel"
    flower_pot = "flower_pot"
    furnace_minecart = "furnace_minecart"
    ghast_tear = "ghast_tear"
    glass_bottle = "glass_bottle"
    glowstone_dust = "glowstone_dust"
    gold_ingot = "gold_ingot"
    gold_nugget = "gold_nugget"
    golden_apple = "golden_apple"
    golden_axe = "golden_axe"
    golden_boots = "golden_boots"
    golden_carrot = "golden_carrot"
    golden_chestplate = "golden_chestplate"
    golden_helmet = "golden_helmet"
    golden_hoe = "golden_hoe"
    golden_horse_armor = "golden_horse_armor"
    golden_leggings = "golden_leggings"
    golden_pickaxe = "golden_pickaxe"
    golden_shovel = "golden_shovel"
    golden_sword = "golden_sword"
    gunpowder = "gunpowder"
    hopper_minecart = "hopper_minecart"
    iron_axe = "iron_axe"
    iron_boots = "iron_boots"
    iron_chestplate = "iron_chestplate"
    iron_door = "iron_door"
    iron_helmet = "iron_helmet"
    iron_hoe = "iron_hoe"
    iron_horse_armor = "iron_horse_armor"
    iron_ingot = "iron_ingot"
    iron_leggings = "iron_leggings"
    iron_nugget = "iron_nugget"
    iron_pickaxe = "iron_pickaxe"
    iron_shovel = "iron_shovel"
    iron_sword = "iron_sword"
    item_frame = "item_frame"
    jungle_boat = "jungle_boat"
    jungle_door = "jungle_door"
    lava_bucket = "lava_bucket"
    lead = "lead"
    leather = "leather"
    leather_boots = "leather_boots"
    leather_chestplate = "leather_chestplate"
    leather_helmet = "leather_helmet"
    leather_leggings = "leather_leggings"
    lingering_potion = "lingering_potion"
    magma_cream = "magma_cream"
    map = "map"
    melon = "melon"
    melon_seeds = "melon_seeds"
    milk_bucket = "milk_bucket"
    minecart = "minecart"
    mushroom_stew = "mushroom_stew"
    mutton = "mutton"
    name_tag = "name_tag"
    nether_star = "nether_star"
    nether_wart = "nether_wart"
    netherbrick = "netherbrick"
    painting = "painting"
    paper = "paper"
    poisonous_potato = "poisonous_potato"
    porkchop = "porkchop"
    potato = "potato"
    potion = "potion"
    prismarine_crystals = "prismarine_crystals"
    prismarine_shard = "prismarine_shard"
    pumpkin_pie = "pumpkin_pie"
    pumpkin_seeds = "pumpkin_seeds"
    quartz = "quartz"
    rabbit = "rabbit"
    rabbit_foot = "rabbit_foot"
    rabbit_hide = "rabbit_hide"
    rabbit_stew = "rabbit_stew"
    record_11 = "record_11"
    record_13 = "record_13"
    record_blocks = "record_blocks"
    record_cat = "record_cat"
    record_chirp = "record_chirp"
    record_far = "record_far"
    record_mall = "record_mall"
    record_mellohi = "record_mellohi"
    record_stal = "record_stal"
    record_strad = "record_strad"
    record_wait = "record_wait"
    record_ward = "record_ward"
    redstone = "redstone"
    reeds = "reeds"
    repeater = "repeater"
    rotten_flesh = "rotten_flesh"
    saddle = "saddle"
    shears = "shears"
    shield = "shield"
    shulker_shell = "shulker_shell"
    sign = "sign"
    skull = "skull"
    slime_ball = "slime_ball"
    snowball = "snowball"
    spawn_egg = "spawn_egg"
    speckled_melon = "speckled_melon"
    spectral_arrow = "spectral_arrow"
    spider_eye = "spider_eye"
    splash_potion = "splash_potion"
    spruce_boat = "spruce_boat"
    spruce_door = "spruce_door"
    stick = "stick"
    stone_axe = "stone_axe"
    stone_hoe = "stone_hoe"
    stone_pickaxe = "stone_pickaxe"
    stone_shovel = "stone_shovel"
    stone_sword = "stone_sword"
    string = "string"
    sugar = "sugar"
    tipped_arrow = "tipped_arrow"
    tnt_minecart = "tnt_minecart"
    totem_of_undying = "totem_of_undying"
    water_bucket = "water_bucket"
    wheat = "wheat"
    wheat_seeds = "wheat_seeds"
    wooden_axe = "wooden_axe"
    wooden_door = "wooden_door"
    wooden_hoe = "wooden_hoe"
    wooden_pickaxe = "wooden_pickaxe"
    wooden_shovel = "wooden_shovel"
    wooden_sword = "wooden_sword"
    writable_book = "writable_book"
    written_book = "written_book"

    @classmethod
    def is_food(cls, to_check):
        return to_check in FOOD_ITEMS

Ancestors

Class variables

var acacia_boat
var acacia_door
var apple
var armor_stand
var arrow
var baked_potato
var banner
var bed
var beef
var beetroot
var beetroot_seeds
var beetroot_soup
var birch_boat
var birch_door
var blaze_powder
var blaze_rod
var boat
var bone
var book
var bow
var bowl
var bread
var brewing_stand
var brick
var bucket
var cake
var carrot
var carrot_on_a_stick
var cauldron
var chainmail_boots
var chainmail_chestplate
var chainmail_helmet
var chainmail_leggings
var chest_minecart
var chicken
var chorus_fruit
var chorus_fruit_popped
var clay_ball
var clock
var coal
var command_block_minecart
var comparator
var compass
var cooked_beef
var cooked_chicken
var cooked_fish
var cooked_mutton
var cooked_porkchop
var cooked_rabbit
var cookie
var dark_oak_boat
var dark_oak_door
var diamond
var diamond_axe
var diamond_boots
var diamond_chestplate
var diamond_helmet
var diamond_hoe
var diamond_horse_armor
var diamond_leggings
var diamond_pickaxe
var diamond_shovel
var diamond_sword
var dragon_breath
var dye
var egg
var elytra
var emerald
var enchanted_book
var ender_eye
var ender_pearl
var experience_bottle
var feather
var fermented_spider_eye
var filled_map
var fire_charge
var firework_charge
var fireworks
var fish
var fishing_rod
var flint
var flint_and_steel
var flower_pot
var furnace_minecart
var ghast_tear
var glass_bottle
var glowstone_dust
var gold_ingot
var gold_nugget
var golden_apple
var golden_axe
var golden_boots
var golden_carrot
var golden_chestplate
var golden_helmet
var golden_hoe
var golden_horse_armor
var golden_leggings
var golden_pickaxe
var golden_shovel
var golden_sword
var gunpowder
var hopper_minecart
var iron_axe
var iron_boots
var iron_chestplate
var iron_door
var iron_helmet
var iron_hoe
var iron_horse_armor
var iron_ingot
var iron_leggings
var iron_nugget
var iron_pickaxe
var iron_shovel
var iron_sword
var item_frame
var jungle_boat
var jungle_door
var lava_bucket
var lead
var leather
var leather_boots
var leather_chestplate
var leather_helmet
var leather_leggings
var lingering_potion
var magma_cream
var map
var melon
var melon_seeds
var milk_bucket
var minecart
var mushroom_stew
var mutton
var name_tag
var nether_star
var nether_wart
var netherbrick
var painting
var paper
var poisonous_potato
var porkchop
var potato
var potion
var prismarine_crystals
var prismarine_shard
var pumpkin_pie
var pumpkin_seeds
var quartz
var rabbit
var rabbit_foot
var rabbit_hide
var rabbit_stew
var record_11
var record_13
var record_blocks
var record_cat
var record_chirp
var record_far
var record_mall
var record_mellohi
var record_stal
var record_strad
var record_wait
var record_ward
var redstone
var reeds
var repeater
var rotten_flesh
var saddle
var shears
var shield
var shulker_shell
var sign
var skull
var slime_ball
var snowball
var spawn_egg
var speckled_melon
var spectral_arrow
var spider_eye
var splash_potion
var spruce_boat
var spruce_door
var stick
var stone_axe
var stone_hoe
var stone_pickaxe
var stone_shovel
var stone_sword
var string
var sugar
var tipped_arrow
var tnt_minecart
var totem_of_undying
var water_bucket
var wheat
var wheat_seeds
var wooden_axe
var wooden_door
var wooden_hoe
var wooden_pickaxe
var wooden_shovel
var wooden_sword
var writable_book
var written_book

Static methods

def is_food(to_check)
Expand source code
@classmethod
def is_food(cls, to_check):
    return to_check in FOOD_ITEMS

Inherited members

class Mob (value, names=None, *, module=None, qualname=None, type=None, start=1)

A Minecraft mob entity

Expand source code
class Mob(ReflectiveEnum):
    '''A Minecraft mob entity'''

    agent = "Agent"
    bat = "Bat"
    blaze = "Blaze"
    cave_spider = "CaveSpider"
    chicken = "Chicken"
    cow = "Cow"
    creeper = "Creeper"
    donkey = "Donkey"
    elder_guardian = "ElderGuardian"
    ender_dragon = "EnderDragon"
    enderman = "Enderman"
    endermite = "Endermite"
    evocation_villager = "EvocationIllager"           # Malmo has typo, which needs to be replicated here
    ghast = "Ghast"
    giant = "Giant"
    guardian = "Guardian"
    horse = "Horse"
    husk = "Husk"
    lava_slime = "LavaSlime"
    llama = "Llama"
    mule = "Mule"
    mushroom_cow = "MushroomCow"
    ozelot = "Ozelot"
    pig = "Pig"
    pig_zombie = "PigZombie"
    polar_bear = "PolarBear"
    rabbit = "Rabbit"
    sheep = "Sheep"
    shulker = "Shulker"
    silverfish = "Silverfish"
    skeleton = "Skeleton"
    skeleton_horse = "SkeletonHorse"
    slime = "Slime"
    snowman = "SnowMan"
    spider = "Spider"
    squid = "Squid"
    stray = "Stray"
    vex = "Vex"
    villager = "Villager"
    villager_golem = "VillagerGolem"
    vindication_villager = "VindicationIllager"     # Malmo has typo, which needs to be replicated here
    witch = "Witch"
    wither_boss = "WitherBoss"
    wither_skeleton = "WitherSkeleton"
    wolf = "Wolf"
    zombie = "Zombie"
    zombie_horse = "ZombieHorse"
    zombie_villager = "ZombieVillager"

    @classmethod
    def is_hostile(cls, to_check):
        return to_check in HOSTILE_MOBS
    
    @classmethod
    def is_peaceful(cls, to_check):
        return to_check in PEACEFUL_MOBS
    
    @classmethod
    def drops_food(cls, to_check):
        return to_check in FOOD_MOBS

Ancestors

Class variables

var agent
var bat
var blaze
var cave_spider
var chicken
var cow
var creeper
var donkey
var elder_guardian
var ender_dragon
var enderman
var endermite
var evocation_villager
var ghast
var giant
var guardian
var horse
var husk
var lava_slime
var llama
var mule
var mushroom_cow
var ozelot
var pig
var pig_zombie
var polar_bear
var rabbit
var sheep
var shulker
var silverfish
var skeleton
var skeleton_horse
var slime
var snowman
var spider
var squid
var stray
var vex
var villager
var villager_golem
var vindication_villager
var witch
var wither_boss
var wither_skeleton
var wolf
var zombie
var zombie_horse
var zombie_villager

Static methods

def drops_food(to_check)
Expand source code
@classmethod
def drops_food(cls, to_check):
    return to_check in FOOD_MOBS
def is_hostile(to_check)
Expand source code
@classmethod
def is_hostile(cls, to_check):
    return to_check in HOSTILE_MOBS
def is_peaceful(to_check)
Expand source code
@classmethod
def is_peaceful(cls, to_check):
    return to_check in PEACEFUL_MOBS

Inherited members

class ReflectiveEnum (value, names=None, *, module=None, qualname=None, type=None, start=1)

An enumerated type that provides additional utility methods for checking whether keys or values exist within the enum

Expand source code
class ReflectiveEnum(Enum):
    '''An enumerated type that provides additional utility methods for checking
    whether keys or values exist within the enum'''

    @classmethod
    def contains(cls, toCheck):
        '''Returns true if the given string is a member of this enum'''
        if isinstance(toCheck, str) or isinstance(toCheck, int):
            return toCheck in cls._value2member_map_
        else:
            return toCheck.value in cls._value2member_map_

Ancestors

  • enum.Enum

Subclasses

Static methods

def contains(toCheck)

Returns true if the given string is a member of this enum

Expand source code
@classmethod
def contains(cls, toCheck):
    '''Returns true if the given string is a member of this enum'''
    if isinstance(toCheck, str) or isinstance(toCheck, int):
        return toCheck in cls._value2member_map_
    else:
        return toCheck.value in cls._value2member_map_
class Rotation (yaw: float, pitch: float)

A rotation in yaw and pitch directions.

Expand source code
class Rotation:
    '''A rotation in yaw and pitch directions.'''

    def __init__(self, yaw: float, pitch: float):
        self.yaw = yaw
        self.pitch = pitch
class TimeOfDay (value, names=None, *, module=None, qualname=None, type=None, start=1)

Enum type describing unique times of day within Minecraft

Expand source code
class TimeOfDay(ReflectiveEnum):
    '''Enum type describing unique times of day within Minecraft'''

    dawn = 0
    noon = 6000
    sunset = 12000
    midnight = 18000

Ancestors

Class variables

var dawn
var midnight
var noon
var sunset

Inherited members

class Vector (x: float, y: float, z: float)

A 3-dimensional vector

Expand source code
class Vector:
    '''A 3-dimensional vector'''

    def __init__(self, x: float, y: float, z: float):
        self.x = x
        self.y = y
        self.z = z

    def __hash__(self):
        return hash((self.x, self.y, self.z))
    
    def __eq__(self, other):
        return self.x == other.x and self.y == other.y and self.z == other.z