From a0a10af6336e664525413242d757ceb449cf3aa3 Mon Sep 17 00:00:00 2001 From: brachy84 Date: Fri, 17 Mar 2023 17:32:37 +0100 Subject: [PATCH 01/11] basic working localization setup --- .../assets/images/slice_n_splice_recipe.png | Bin docs/{ => en}/getting_started.md | 0 docs/{ => en}/groovy/builder.md | 0 docs/{ => en}/groovy/closure.md | 0 docs/{ => en}/groovy/introduction.md | 0 docs/{ => en}/groovy/lists.md | 0 docs/{ => en}/groovy/loops.md | 0 docs/{ => en}/groovy/maps.md | 0 docs/{ => en}/groovy/strings.md | 0 docs/{ => en}/groovyscript/content/block.md | 0 docs/{ => en}/groovyscript/content/content.md | 0 .../groovyscript/content/creative_tab.md | 0 docs/{ => en}/groovyscript/content/item.md | 0 .../groovyscript/minecraft/crafting.md | 0 .../minecraft/crafting_builders.md | 0 .../{ => en}/groovyscript/minecraft/events.md | 0 .../minecraft/events/aa_events.md | 0 .../minecraft/events/advancement_event.md | 0 .../minecraft/events/animal_tame_event.md | 0 .../minecraft/events/anvil_repair_event.md | 0 .../minecraft/events/anvil_update_event.md | 0 .../minecraft/events/arrow_loose_event.md | 0 .../minecraft/events/arrow_nock_event.md | 0 .../events/attach_capabilities_event.md | 0 .../minecraft/events/attack_entity_event.md | 0 .../events/baby_entity_spawn_event.md | 0 .../events/biome_event._biome_color.md | 0 .../events/biome_event._create_decorator.md | 0 .../events/biome_event._get_foliage_color.md | 0 .../events/biome_event._get_grass_color.md | 0 .../biome_event._get_village_block_i_d.md | 0 .../events/biome_event._get_water_color.md | 0 .../minecraft/events/biome_event.md | 0 .../events/block_event._break_event.md | 0 .../block_event._create_fluid_source_event.md | 0 .../events/block_event._crop_grow_event.md | 0 .../block_event._entity_multi_place_event.md | 0 .../events/block_event._entity_place_event.md | 0 .../block_event._farmland_trample_event.md | 0 .../block_event._fluid_place_block_event.md | 0 .../block_event._harvest_drops_event.md | 0 .../events/block_event._multi_place_event.md | 0 .../block_event._neighbor_notify_event.md | 0 .../events/block_event._place_event.md | 0 .../events/block_event._portal_spawn_event.md | 0 .../minecraft/events/block_event.md | 0 .../minecraft/events/bonemeal_event.md | 0 .../events/chunk_data_event._load.md | 0 .../events/chunk_data_event._save.md | 0 .../minecraft/events/chunk_data_event.md | 0 .../minecraft/events/chunk_event._load.md | 0 .../minecraft/events/chunk_event._unload.md | 0 .../minecraft/events/chunk_event.md | 0 ...chunk_generator_event._init_noise_field.md | 0 ...k_generator_event._replace_biome_blocks.md | 0 .../minecraft/events/chunk_generator_event.md | 0 .../events/chunk_watch_event._un_watch.md | 0 .../events/chunk_watch_event._watch.md | 0 .../minecraft/events/chunk_watch_event.md | 0 .../minecraft/events/command_event.md | 0 .../minecraft/events/critical_hit_event.md | 0 .../events/decorate_biome_event._decorate.md | 0 .../minecraft/events/decorate_biome_event.md | 0 .../events/difficulty_change_event.md | 0 .../events/enchantment_level_set_event.md | 0 .../minecraft/events/ender_teleport_event.md | 0 .../events/entity_event._can_update.md | 0 .../events/entity_event._entering_chunk.md | 0 .../entity_event._entity_constructing.md | 0 .../minecraft/events/entity_event.md | 0 .../events/entity_item_pickup_event.md | 0 .../events/entity_join_world_event.md | 0 .../events/entity_mob_griefing_event.md | 0 .../minecraft/events/entity_mount_event.md | 0 .../entity_struck_by_lightning_event.md | 0 .../entity_travel_to_dimension_event.md | 0 .../events/explosion_event._detonate.md | 0 .../events/explosion_event._start.md | 0 .../minecraft/events/explosion_event.md | 0 .../minecraft/events/fill_bucket_event.md | 0 .../events/furnace_fuel_burn_time_event.md | 0 .../events/game_rule_change_event.md | 0 .../events/get_collision_boxes_event.md | 0 .../minecraft/events/init_map_gen_event.md | 0 .../minecraft/events/init_noise_gens_event.md | 0 .../minecraft/events/item_event.md | 0 .../minecraft/events/item_expire_event.md | 0 .../minecraft/events/item_fished_event.md | 0 .../minecraft/events/item_tooltip_event.md | 0 .../minecraft/events/item_toss_event.md | 0 .../minecraft/events/living_attack_event.md | 0 .../minecraft/events/living_damage_event.md | 0 .../minecraft/events/living_death_event.md | 0 .../events/living_destroy_block_event.md | 0 .../minecraft/events/living_drops_event.md | 0 .../living_entity_use_item_event._finish.md | 0 .../living_entity_use_item_event._start.md | 0 .../living_entity_use_item_event._stop.md | 0 .../living_entity_use_item_event._tick.md | 0 .../events/living_entity_use_item_event.md | 0 .../events/living_equipment_change_event.md | 0 .../events/living_event._living_jump_event.md | 0 .../living_event._living_update_event.md | 0 .../minecraft/events/living_event.md | 0 .../events/living_experience_drop_event.md | 0 .../minecraft/events/living_fall_event.md | 0 .../minecraft/events/living_heal_event.md | 0 .../minecraft/events/living_hurt_event.md | 0 .../events/living_knock_back_event.md | 0 .../events/living_pack_size_event.md | 0 .../events/living_set_attack_target_event.md | 0 .../living_spawn_event._allow_despawn.md | 0 .../events/living_spawn_event._check_spawn.md | 0 .../living_spawn_event._special_spawn.md | 0 .../minecraft/events/living_spawn_event.md | 0 .../minecraft/events/loot_table_load_event.md | 0 .../minecraft/events/looting_level_event.md | 0 .../events/merchant_trade_offers_event.md | 0 .../events/minecart_collision_event.md | 0 .../minecraft/events/minecart_event.md | 0 .../events/minecart_interact_event.md | 0 .../minecraft/events/minecart_update_event.md | 0 .../events/note_block_event._change.md | 0 .../events/note_block_event._play.md | 0 .../minecraft/events/note_block_event.md | 0 .../events/ore_gen_event._generate_minable.md | 0 .../minecraft/events/ore_gen_event.md | 0 .../events/play_sound_at_entity_event.md | 0 .../events/player_brewed_potion_event.md | 0 .../events/player_container_event._close.md | 0 .../events/player_container_event._open.md | 0 .../events/player_container_event.md | 0 .../events/player_destroy_item_event.md | 0 .../minecraft/events/player_drops_event.md | 0 .../events/player_event._break_speed.md | 0 .../minecraft/events/player_event._clone.md | 0 .../events/player_event._harvest_check.md | 0 .../events/player_event._load_from_file.md | 0 .../events/player_event._name_format.md | 0 .../events/player_event._save_to_file.md | 0 .../events/player_event._start_tracking.md | 0 .../events/player_event._stop_tracking.md | 0 .../events/player_event._visibility.md | 0 .../minecraft/events/player_event.md | 0 .../events/player_flyable_fall_event.md | 0 .../player_interact_event._entity_interact.md | 0 ...nteract_event._entity_interact_specific.md | 0 ...player_interact_event._left_click_block.md | 0 ...player_interact_event._left_click_empty.md | 0 ...layer_interact_event._right_click_block.md | 0 ...layer_interact_event._right_click_empty.md | 0 ...player_interact_event._right_click_item.md | 0 .../minecraft/events/player_interact_event.md | 0 .../events/player_pickup_xp_event.md | 0 .../events/player_set_spawn_event.md | 0 .../events/player_sleep_in_bed_event.md | 0 .../minecraft/events/player_wake_up_event.md | 0 .../events/populate_chunk_event._populate.md | 0 .../minecraft/events/populate_chunk_event.md | 0 .../minecraft/events/potion_brew_event.md | 0 .../events/potion_color_calculation_event.md | 0 .../potion_event._potion_added_event.md | 0 .../potion_event._potion_applicable_event.md | 0 .../potion_event._potion_expiry_event.md | 0 .../potion_event._potion_remove_event.md | 0 .../minecraft/events/potion_event.md | 0 .../events/projectile_impact_event._arrow.md | 0 .../projectile_impact_event._fireball.md | 0 .../projectile_impact_event._throwable.md | 0 .../events/projectile_impact_event.md | 0 .../registry_event._missing_mappings.md | 0 .../events/registry_event._new_registry.md | 0 .../events/registry_event._register.md | 0 .../minecraft/events/registry_event.md | 0 .../events/sapling_grow_tree_event.md | 0 .../minecraft/events/server_chat_event.md | 0 .../events/sleeping_location_check_event.md | 0 .../events/sleeping_time_check_event.md | 0 .../events/throwable_impact_event.md | 0 .../minecraft/events/use_hoe_event.md | 0 .../minecraft/events/village_siege_event.md | 0 .../world_event._create_spawn_position.md | 0 .../minecraft/events/world_event._load.md | 0 .../events/world_event._potential_spawns.md | 0 .../minecraft/events/world_event._save.md | 0 .../minecraft/events/world_event._unload.md | 0 .../minecraft/events/world_event.md | 0 .../events/world_type_event._biome_size.md | 0 .../world_type_event._init_biome_gens.md | 0 .../minecraft/events/world_type_event.md | 0 .../events/zombie_event._summon_aid_event.md | 0 .../minecraft/events/zombie_event.md | 0 .../groovyscript/minecraft/furnace.md | 0 docs/{ => en}/groovyscript/minecraft/item.md | 0 .../groovyscript/minecraft/ore_dictionary.md | 0 .../groovyscript/minecraft/tooltip.md | 0 .../mods/bloodmagic/alchemy_array.md | 0 .../mods/bloodmagic/alchemy_table.md | 0 .../mods/bloodmagic/blood_altar.md | 0 .../groovyscript/mods/bloodmagic/meteor.md | 0 .../mods/bloodmagic/sacrificial.md | 0 .../mods/bloodmagic/tartaric_forge.md | 0 .../mods/bloodmagic/tranquility.md | 0 .../mods/enderio/alloy_smelter.md | 0 .../mods/enderio/combustion_gen.md | 0 .../groovyscript/mods/enderio/enchanter.md | 0 .../groovyscript/mods/enderio/sag_mill.md | 0 .../mods/enderio/slice_n_splice.md | 0 .../groovyscript/mods/enderio/soul_binder.md | 0 .../groovyscript/mods/enderio/tank.md | 0 .../{ => en}/groovyscript/mods/enderio/vat.md | 0 .../groovyscript/mods/gtceu/heating_coils.md | 0 .../groovyscript/mods/gtceu/material.md | 0 .../groovyscript/mods/gtceu/multiblock.md | 0 .../groovyscript/mods/gtceu/recipes.md | 0 .../groovyscript/mods/gtceu/terminal.md | 0 docs/{ => en}/groovyscript/mods/jei.md | 0 .../groovyscript/mods/mekanism/crusher.md | 0 .../mods/thaumcraft/ArcaneWorkbench.md | 0 .../groovyscript/mods/thaumcraft/Aspects.md | 0 .../groovyscript/mods/thaumcraft/Crucible.md | 0 .../mods/thaumcraft/DustTrigger.md | 0 .../groovyscript/mods/thaumcraft/Infusion.md | 0 .../groovyscript/mods/thaumcraft/Lootbag.md | 0 .../groovyscript/mods/thaumcraft/Research.md | 0 .../mods/thaumcraft/SmeltingBonus.md | 0 .../groovyscript/mods/thaumcraft/Warp.md | 0 .../groovyscript/mods/thermal/pulverizer.md | 0 docs/{ => en}/groovyscript/rl.md | 0 docs/{ => en}/index.md | 0 docs/{ => en}/stylesheets/extra.css | 0 docs/fr/index.md | 1 + mkdocs.yml | 25 +++++++++++++++++- requirements.txt | 3 ++- 234 files changed, 27 insertions(+), 2 deletions(-) rename docs/{ => en}/assets/images/slice_n_splice_recipe.png (100%) rename docs/{ => en}/getting_started.md (100%) rename docs/{ => en}/groovy/builder.md (100%) rename docs/{ => en}/groovy/closure.md (100%) rename docs/{ => en}/groovy/introduction.md (100%) rename docs/{ => en}/groovy/lists.md (100%) rename docs/{ => en}/groovy/loops.md (100%) rename docs/{ => en}/groovy/maps.md (100%) rename docs/{ => en}/groovy/strings.md (100%) rename docs/{ => en}/groovyscript/content/block.md (100%) rename docs/{ => en}/groovyscript/content/content.md (100%) rename docs/{ => en}/groovyscript/content/creative_tab.md (100%) rename docs/{ => en}/groovyscript/content/item.md (100%) rename docs/{ => en}/groovyscript/minecraft/crafting.md (100%) rename docs/{ => en}/groovyscript/minecraft/crafting_builders.md (100%) rename docs/{ => en}/groovyscript/minecraft/events.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/aa_events.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/advancement_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/animal_tame_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/anvil_repair_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/anvil_update_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/arrow_loose_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/arrow_nock_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/attach_capabilities_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/attack_entity_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/baby_entity_spawn_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/biome_event._biome_color.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/biome_event._create_decorator.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/biome_event._get_foliage_color.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/biome_event._get_grass_color.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/biome_event._get_water_color.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/biome_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._break_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._create_fluid_source_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._crop_grow_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._entity_multi_place_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._entity_place_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._farmland_trample_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._fluid_place_block_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._harvest_drops_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._multi_place_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._neighbor_notify_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._place_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event._portal_spawn_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/block_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/bonemeal_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_data_event._load.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_data_event._save.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_data_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_event._load.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_event._unload.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_generator_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_watch_event._un_watch.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_watch_event._watch.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/chunk_watch_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/command_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/critical_hit_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/decorate_biome_event._decorate.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/decorate_biome_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/difficulty_change_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/enchantment_level_set_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/ender_teleport_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_event._can_update.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_event._entering_chunk.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_event._entity_constructing.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_item_pickup_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_join_world_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_mob_griefing_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_mount_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_struck_by_lightning_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/entity_travel_to_dimension_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/explosion_event._detonate.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/explosion_event._start.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/explosion_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/fill_bucket_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/game_rule_change_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/get_collision_boxes_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/init_map_gen_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/init_noise_gens_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/item_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/item_expire_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/item_fished_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/item_tooltip_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/item_toss_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_attack_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_damage_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_death_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_destroy_block_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_drops_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_entity_use_item_event._finish.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_entity_use_item_event._start.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_entity_use_item_event._stop.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_entity_use_item_event._tick.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_entity_use_item_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_equipment_change_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_event._living_jump_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_event._living_update_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_experience_drop_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_fall_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_heal_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_hurt_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_knock_back_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_pack_size_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_set_attack_target_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_spawn_event._check_spawn.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_spawn_event._special_spawn.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/living_spawn_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/loot_table_load_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/looting_level_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/merchant_trade_offers_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/minecart_collision_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/minecart_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/minecart_interact_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/minecart_update_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/note_block_event._change.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/note_block_event._play.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/note_block_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/ore_gen_event._generate_minable.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/ore_gen_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/play_sound_at_entity_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_brewed_potion_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_container_event._close.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_container_event._open.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_container_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_destroy_item_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_drops_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._break_speed.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._clone.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._harvest_check.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._load_from_file.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._name_format.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._save_to_file.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._start_tracking.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._stop_tracking.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event._visibility.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_flyable_fall_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event._entity_interact.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event._left_click_block.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event._left_click_empty.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event._right_click_block.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event._right_click_empty.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event._right_click_item.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_interact_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_pickup_xp_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_set_spawn_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_sleep_in_bed_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/player_wake_up_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/populate_chunk_event._populate.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/populate_chunk_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/potion_brew_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/potion_color_calculation_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/potion_event._potion_added_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/potion_event._potion_applicable_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/potion_event._potion_expiry_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/potion_event._potion_remove_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/potion_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/projectile_impact_event._arrow.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/projectile_impact_event._fireball.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/projectile_impact_event._throwable.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/projectile_impact_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/registry_event._missing_mappings.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/registry_event._new_registry.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/registry_event._register.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/registry_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/sapling_grow_tree_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/server_chat_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/sleeping_location_check_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/sleeping_time_check_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/throwable_impact_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/use_hoe_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/village_siege_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_event._create_spawn_position.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_event._load.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_event._potential_spawns.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_event._save.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_event._unload.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_type_event._biome_size.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_type_event._init_biome_gens.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/world_type_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/zombie_event._summon_aid_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/events/zombie_event.md (100%) rename docs/{ => en}/groovyscript/minecraft/furnace.md (100%) rename docs/{ => en}/groovyscript/minecraft/item.md (100%) rename docs/{ => en}/groovyscript/minecraft/ore_dictionary.md (100%) rename docs/{ => en}/groovyscript/minecraft/tooltip.md (100%) rename docs/{ => en}/groovyscript/mods/bloodmagic/alchemy_array.md (100%) rename docs/{ => en}/groovyscript/mods/bloodmagic/alchemy_table.md (100%) rename docs/{ => en}/groovyscript/mods/bloodmagic/blood_altar.md (100%) rename docs/{ => en}/groovyscript/mods/bloodmagic/meteor.md (100%) rename docs/{ => en}/groovyscript/mods/bloodmagic/sacrificial.md (100%) rename docs/{ => en}/groovyscript/mods/bloodmagic/tartaric_forge.md (100%) rename docs/{ => en}/groovyscript/mods/bloodmagic/tranquility.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/alloy_smelter.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/combustion_gen.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/enchanter.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/sag_mill.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/slice_n_splice.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/soul_binder.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/tank.md (100%) rename docs/{ => en}/groovyscript/mods/enderio/vat.md (100%) rename docs/{ => en}/groovyscript/mods/gtceu/heating_coils.md (100%) rename docs/{ => en}/groovyscript/mods/gtceu/material.md (100%) rename docs/{ => en}/groovyscript/mods/gtceu/multiblock.md (100%) rename docs/{ => en}/groovyscript/mods/gtceu/recipes.md (100%) rename docs/{ => en}/groovyscript/mods/gtceu/terminal.md (100%) rename docs/{ => en}/groovyscript/mods/jei.md (100%) rename docs/{ => en}/groovyscript/mods/mekanism/crusher.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/ArcaneWorkbench.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/Aspects.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/Crucible.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/DustTrigger.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/Infusion.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/Lootbag.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/Research.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/SmeltingBonus.md (100%) rename docs/{ => en}/groovyscript/mods/thaumcraft/Warp.md (100%) rename docs/{ => en}/groovyscript/mods/thermal/pulverizer.md (100%) rename docs/{ => en}/groovyscript/rl.md (100%) rename docs/{ => en}/index.md (100%) rename docs/{ => en}/stylesheets/extra.css (100%) create mode 100644 docs/fr/index.md diff --git a/docs/assets/images/slice_n_splice_recipe.png b/docs/en/assets/images/slice_n_splice_recipe.png similarity index 100% rename from docs/assets/images/slice_n_splice_recipe.png rename to docs/en/assets/images/slice_n_splice_recipe.png diff --git a/docs/getting_started.md b/docs/en/getting_started.md similarity index 100% rename from docs/getting_started.md rename to docs/en/getting_started.md diff --git a/docs/groovy/builder.md b/docs/en/groovy/builder.md similarity index 100% rename from docs/groovy/builder.md rename to docs/en/groovy/builder.md diff --git a/docs/groovy/closure.md b/docs/en/groovy/closure.md similarity index 100% rename from docs/groovy/closure.md rename to docs/en/groovy/closure.md diff --git a/docs/groovy/introduction.md b/docs/en/groovy/introduction.md similarity index 100% rename from docs/groovy/introduction.md rename to docs/en/groovy/introduction.md diff --git a/docs/groovy/lists.md b/docs/en/groovy/lists.md similarity index 100% rename from docs/groovy/lists.md rename to docs/en/groovy/lists.md diff --git a/docs/groovy/loops.md b/docs/en/groovy/loops.md similarity index 100% rename from docs/groovy/loops.md rename to docs/en/groovy/loops.md diff --git a/docs/groovy/maps.md b/docs/en/groovy/maps.md similarity index 100% rename from docs/groovy/maps.md rename to docs/en/groovy/maps.md diff --git a/docs/groovy/strings.md b/docs/en/groovy/strings.md similarity index 100% rename from docs/groovy/strings.md rename to docs/en/groovy/strings.md diff --git a/docs/groovyscript/content/block.md b/docs/en/groovyscript/content/block.md similarity index 100% rename from docs/groovyscript/content/block.md rename to docs/en/groovyscript/content/block.md diff --git a/docs/groovyscript/content/content.md b/docs/en/groovyscript/content/content.md similarity index 100% rename from docs/groovyscript/content/content.md rename to docs/en/groovyscript/content/content.md diff --git a/docs/groovyscript/content/creative_tab.md b/docs/en/groovyscript/content/creative_tab.md similarity index 100% rename from docs/groovyscript/content/creative_tab.md rename to docs/en/groovyscript/content/creative_tab.md diff --git a/docs/groovyscript/content/item.md b/docs/en/groovyscript/content/item.md similarity index 100% rename from docs/groovyscript/content/item.md rename to docs/en/groovyscript/content/item.md diff --git a/docs/groovyscript/minecraft/crafting.md b/docs/en/groovyscript/minecraft/crafting.md similarity index 100% rename from docs/groovyscript/minecraft/crafting.md rename to docs/en/groovyscript/minecraft/crafting.md diff --git a/docs/groovyscript/minecraft/crafting_builders.md b/docs/en/groovyscript/minecraft/crafting_builders.md similarity index 100% rename from docs/groovyscript/minecraft/crafting_builders.md rename to docs/en/groovyscript/minecraft/crafting_builders.md diff --git a/docs/groovyscript/minecraft/events.md b/docs/en/groovyscript/minecraft/events.md similarity index 100% rename from docs/groovyscript/minecraft/events.md rename to docs/en/groovyscript/minecraft/events.md diff --git a/docs/groovyscript/minecraft/events/aa_events.md b/docs/en/groovyscript/minecraft/events/aa_events.md similarity index 100% rename from docs/groovyscript/minecraft/events/aa_events.md rename to docs/en/groovyscript/minecraft/events/aa_events.md diff --git a/docs/groovyscript/minecraft/events/advancement_event.md b/docs/en/groovyscript/minecraft/events/advancement_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/advancement_event.md rename to docs/en/groovyscript/minecraft/events/advancement_event.md diff --git a/docs/groovyscript/minecraft/events/animal_tame_event.md b/docs/en/groovyscript/minecraft/events/animal_tame_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/animal_tame_event.md rename to docs/en/groovyscript/minecraft/events/animal_tame_event.md diff --git a/docs/groovyscript/minecraft/events/anvil_repair_event.md b/docs/en/groovyscript/minecraft/events/anvil_repair_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/anvil_repair_event.md rename to docs/en/groovyscript/minecraft/events/anvil_repair_event.md diff --git a/docs/groovyscript/minecraft/events/anvil_update_event.md b/docs/en/groovyscript/minecraft/events/anvil_update_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/anvil_update_event.md rename to docs/en/groovyscript/minecraft/events/anvil_update_event.md diff --git a/docs/groovyscript/minecraft/events/arrow_loose_event.md b/docs/en/groovyscript/minecraft/events/arrow_loose_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/arrow_loose_event.md rename to docs/en/groovyscript/minecraft/events/arrow_loose_event.md diff --git a/docs/groovyscript/minecraft/events/arrow_nock_event.md b/docs/en/groovyscript/minecraft/events/arrow_nock_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/arrow_nock_event.md rename to docs/en/groovyscript/minecraft/events/arrow_nock_event.md diff --git a/docs/groovyscript/minecraft/events/attach_capabilities_event.md b/docs/en/groovyscript/minecraft/events/attach_capabilities_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/attach_capabilities_event.md rename to docs/en/groovyscript/minecraft/events/attach_capabilities_event.md diff --git a/docs/groovyscript/minecraft/events/attack_entity_event.md b/docs/en/groovyscript/minecraft/events/attack_entity_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/attack_entity_event.md rename to docs/en/groovyscript/minecraft/events/attack_entity_event.md diff --git a/docs/groovyscript/minecraft/events/baby_entity_spawn_event.md b/docs/en/groovyscript/minecraft/events/baby_entity_spawn_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/baby_entity_spawn_event.md rename to docs/en/groovyscript/minecraft/events/baby_entity_spawn_event.md diff --git a/docs/groovyscript/minecraft/events/biome_event._biome_color.md b/docs/en/groovyscript/minecraft/events/biome_event._biome_color.md similarity index 100% rename from docs/groovyscript/minecraft/events/biome_event._biome_color.md rename to docs/en/groovyscript/minecraft/events/biome_event._biome_color.md diff --git a/docs/groovyscript/minecraft/events/biome_event._create_decorator.md b/docs/en/groovyscript/minecraft/events/biome_event._create_decorator.md similarity index 100% rename from docs/groovyscript/minecraft/events/biome_event._create_decorator.md rename to docs/en/groovyscript/minecraft/events/biome_event._create_decorator.md diff --git a/docs/groovyscript/minecraft/events/biome_event._get_foliage_color.md b/docs/en/groovyscript/minecraft/events/biome_event._get_foliage_color.md similarity index 100% rename from docs/groovyscript/minecraft/events/biome_event._get_foliage_color.md rename to docs/en/groovyscript/minecraft/events/biome_event._get_foliage_color.md diff --git a/docs/groovyscript/minecraft/events/biome_event._get_grass_color.md b/docs/en/groovyscript/minecraft/events/biome_event._get_grass_color.md similarity index 100% rename from docs/groovyscript/minecraft/events/biome_event._get_grass_color.md rename to docs/en/groovyscript/minecraft/events/biome_event._get_grass_color.md diff --git a/docs/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md b/docs/en/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md similarity index 100% rename from docs/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md rename to docs/en/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md diff --git a/docs/groovyscript/minecraft/events/biome_event._get_water_color.md b/docs/en/groovyscript/minecraft/events/biome_event._get_water_color.md similarity index 100% rename from docs/groovyscript/minecraft/events/biome_event._get_water_color.md rename to docs/en/groovyscript/minecraft/events/biome_event._get_water_color.md diff --git a/docs/groovyscript/minecraft/events/biome_event.md b/docs/en/groovyscript/minecraft/events/biome_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/biome_event.md rename to docs/en/groovyscript/minecraft/events/biome_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._break_event.md b/docs/en/groovyscript/minecraft/events/block_event._break_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._break_event.md rename to docs/en/groovyscript/minecraft/events/block_event._break_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._create_fluid_source_event.md b/docs/en/groovyscript/minecraft/events/block_event._create_fluid_source_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._create_fluid_source_event.md rename to docs/en/groovyscript/minecraft/events/block_event._create_fluid_source_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._crop_grow_event.md b/docs/en/groovyscript/minecraft/events/block_event._crop_grow_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._crop_grow_event.md rename to docs/en/groovyscript/minecraft/events/block_event._crop_grow_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._entity_multi_place_event.md b/docs/en/groovyscript/minecraft/events/block_event._entity_multi_place_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._entity_multi_place_event.md rename to docs/en/groovyscript/minecraft/events/block_event._entity_multi_place_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._entity_place_event.md b/docs/en/groovyscript/minecraft/events/block_event._entity_place_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._entity_place_event.md rename to docs/en/groovyscript/minecraft/events/block_event._entity_place_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._farmland_trample_event.md b/docs/en/groovyscript/minecraft/events/block_event._farmland_trample_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._farmland_trample_event.md rename to docs/en/groovyscript/minecraft/events/block_event._farmland_trample_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._fluid_place_block_event.md b/docs/en/groovyscript/minecraft/events/block_event._fluid_place_block_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._fluid_place_block_event.md rename to docs/en/groovyscript/minecraft/events/block_event._fluid_place_block_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._harvest_drops_event.md b/docs/en/groovyscript/minecraft/events/block_event._harvest_drops_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._harvest_drops_event.md rename to docs/en/groovyscript/minecraft/events/block_event._harvest_drops_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._multi_place_event.md b/docs/en/groovyscript/minecraft/events/block_event._multi_place_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._multi_place_event.md rename to docs/en/groovyscript/minecraft/events/block_event._multi_place_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._neighbor_notify_event.md b/docs/en/groovyscript/minecraft/events/block_event._neighbor_notify_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._neighbor_notify_event.md rename to docs/en/groovyscript/minecraft/events/block_event._neighbor_notify_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._place_event.md b/docs/en/groovyscript/minecraft/events/block_event._place_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._place_event.md rename to docs/en/groovyscript/minecraft/events/block_event._place_event.md diff --git a/docs/groovyscript/minecraft/events/block_event._portal_spawn_event.md b/docs/en/groovyscript/minecraft/events/block_event._portal_spawn_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event._portal_spawn_event.md rename to docs/en/groovyscript/minecraft/events/block_event._portal_spawn_event.md diff --git a/docs/groovyscript/minecraft/events/block_event.md b/docs/en/groovyscript/minecraft/events/block_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/block_event.md rename to docs/en/groovyscript/minecraft/events/block_event.md diff --git a/docs/groovyscript/minecraft/events/bonemeal_event.md b/docs/en/groovyscript/minecraft/events/bonemeal_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/bonemeal_event.md rename to docs/en/groovyscript/minecraft/events/bonemeal_event.md diff --git a/docs/groovyscript/minecraft/events/chunk_data_event._load.md b/docs/en/groovyscript/minecraft/events/chunk_data_event._load.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_data_event._load.md rename to docs/en/groovyscript/minecraft/events/chunk_data_event._load.md diff --git a/docs/groovyscript/minecraft/events/chunk_data_event._save.md b/docs/en/groovyscript/minecraft/events/chunk_data_event._save.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_data_event._save.md rename to docs/en/groovyscript/minecraft/events/chunk_data_event._save.md diff --git a/docs/groovyscript/minecraft/events/chunk_data_event.md b/docs/en/groovyscript/minecraft/events/chunk_data_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_data_event.md rename to docs/en/groovyscript/minecraft/events/chunk_data_event.md diff --git a/docs/groovyscript/minecraft/events/chunk_event._load.md b/docs/en/groovyscript/minecraft/events/chunk_event._load.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_event._load.md rename to docs/en/groovyscript/minecraft/events/chunk_event._load.md diff --git a/docs/groovyscript/minecraft/events/chunk_event._unload.md b/docs/en/groovyscript/minecraft/events/chunk_event._unload.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_event._unload.md rename to docs/en/groovyscript/minecraft/events/chunk_event._unload.md diff --git a/docs/groovyscript/minecraft/events/chunk_event.md b/docs/en/groovyscript/minecraft/events/chunk_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_event.md rename to docs/en/groovyscript/minecraft/events/chunk_event.md diff --git a/docs/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md b/docs/en/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md rename to docs/en/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md diff --git a/docs/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md b/docs/en/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md rename to docs/en/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md diff --git a/docs/groovyscript/minecraft/events/chunk_generator_event.md b/docs/en/groovyscript/minecraft/events/chunk_generator_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_generator_event.md rename to docs/en/groovyscript/minecraft/events/chunk_generator_event.md diff --git a/docs/groovyscript/minecraft/events/chunk_watch_event._un_watch.md b/docs/en/groovyscript/minecraft/events/chunk_watch_event._un_watch.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_watch_event._un_watch.md rename to docs/en/groovyscript/minecraft/events/chunk_watch_event._un_watch.md diff --git a/docs/groovyscript/minecraft/events/chunk_watch_event._watch.md b/docs/en/groovyscript/minecraft/events/chunk_watch_event._watch.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_watch_event._watch.md rename to docs/en/groovyscript/minecraft/events/chunk_watch_event._watch.md diff --git a/docs/groovyscript/minecraft/events/chunk_watch_event.md b/docs/en/groovyscript/minecraft/events/chunk_watch_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/chunk_watch_event.md rename to docs/en/groovyscript/minecraft/events/chunk_watch_event.md diff --git a/docs/groovyscript/minecraft/events/command_event.md b/docs/en/groovyscript/minecraft/events/command_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/command_event.md rename to docs/en/groovyscript/minecraft/events/command_event.md diff --git a/docs/groovyscript/minecraft/events/critical_hit_event.md b/docs/en/groovyscript/minecraft/events/critical_hit_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/critical_hit_event.md rename to docs/en/groovyscript/minecraft/events/critical_hit_event.md diff --git a/docs/groovyscript/minecraft/events/decorate_biome_event._decorate.md b/docs/en/groovyscript/minecraft/events/decorate_biome_event._decorate.md similarity index 100% rename from docs/groovyscript/minecraft/events/decorate_biome_event._decorate.md rename to docs/en/groovyscript/minecraft/events/decorate_biome_event._decorate.md diff --git a/docs/groovyscript/minecraft/events/decorate_biome_event.md b/docs/en/groovyscript/minecraft/events/decorate_biome_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/decorate_biome_event.md rename to docs/en/groovyscript/minecraft/events/decorate_biome_event.md diff --git a/docs/groovyscript/minecraft/events/difficulty_change_event.md b/docs/en/groovyscript/minecraft/events/difficulty_change_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/difficulty_change_event.md rename to docs/en/groovyscript/minecraft/events/difficulty_change_event.md diff --git a/docs/groovyscript/minecraft/events/enchantment_level_set_event.md b/docs/en/groovyscript/minecraft/events/enchantment_level_set_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/enchantment_level_set_event.md rename to docs/en/groovyscript/minecraft/events/enchantment_level_set_event.md diff --git a/docs/groovyscript/minecraft/events/ender_teleport_event.md b/docs/en/groovyscript/minecraft/events/ender_teleport_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/ender_teleport_event.md rename to docs/en/groovyscript/minecraft/events/ender_teleport_event.md diff --git a/docs/groovyscript/minecraft/events/entity_event._can_update.md b/docs/en/groovyscript/minecraft/events/entity_event._can_update.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_event._can_update.md rename to docs/en/groovyscript/minecraft/events/entity_event._can_update.md diff --git a/docs/groovyscript/minecraft/events/entity_event._entering_chunk.md b/docs/en/groovyscript/minecraft/events/entity_event._entering_chunk.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_event._entering_chunk.md rename to docs/en/groovyscript/minecraft/events/entity_event._entering_chunk.md diff --git a/docs/groovyscript/minecraft/events/entity_event._entity_constructing.md b/docs/en/groovyscript/minecraft/events/entity_event._entity_constructing.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_event._entity_constructing.md rename to docs/en/groovyscript/minecraft/events/entity_event._entity_constructing.md diff --git a/docs/groovyscript/minecraft/events/entity_event.md b/docs/en/groovyscript/minecraft/events/entity_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_event.md rename to docs/en/groovyscript/minecraft/events/entity_event.md diff --git a/docs/groovyscript/minecraft/events/entity_item_pickup_event.md b/docs/en/groovyscript/minecraft/events/entity_item_pickup_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_item_pickup_event.md rename to docs/en/groovyscript/minecraft/events/entity_item_pickup_event.md diff --git a/docs/groovyscript/minecraft/events/entity_join_world_event.md b/docs/en/groovyscript/minecraft/events/entity_join_world_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_join_world_event.md rename to docs/en/groovyscript/minecraft/events/entity_join_world_event.md diff --git a/docs/groovyscript/minecraft/events/entity_mob_griefing_event.md b/docs/en/groovyscript/minecraft/events/entity_mob_griefing_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_mob_griefing_event.md rename to docs/en/groovyscript/minecraft/events/entity_mob_griefing_event.md diff --git a/docs/groovyscript/minecraft/events/entity_mount_event.md b/docs/en/groovyscript/minecraft/events/entity_mount_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_mount_event.md rename to docs/en/groovyscript/minecraft/events/entity_mount_event.md diff --git a/docs/groovyscript/minecraft/events/entity_struck_by_lightning_event.md b/docs/en/groovyscript/minecraft/events/entity_struck_by_lightning_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_struck_by_lightning_event.md rename to docs/en/groovyscript/minecraft/events/entity_struck_by_lightning_event.md diff --git a/docs/groovyscript/minecraft/events/entity_travel_to_dimension_event.md b/docs/en/groovyscript/minecraft/events/entity_travel_to_dimension_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/entity_travel_to_dimension_event.md rename to docs/en/groovyscript/minecraft/events/entity_travel_to_dimension_event.md diff --git a/docs/groovyscript/minecraft/events/explosion_event._detonate.md b/docs/en/groovyscript/minecraft/events/explosion_event._detonate.md similarity index 100% rename from docs/groovyscript/minecraft/events/explosion_event._detonate.md rename to docs/en/groovyscript/minecraft/events/explosion_event._detonate.md diff --git a/docs/groovyscript/minecraft/events/explosion_event._start.md b/docs/en/groovyscript/minecraft/events/explosion_event._start.md similarity index 100% rename from docs/groovyscript/minecraft/events/explosion_event._start.md rename to docs/en/groovyscript/minecraft/events/explosion_event._start.md diff --git a/docs/groovyscript/minecraft/events/explosion_event.md b/docs/en/groovyscript/minecraft/events/explosion_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/explosion_event.md rename to docs/en/groovyscript/minecraft/events/explosion_event.md diff --git a/docs/groovyscript/minecraft/events/fill_bucket_event.md b/docs/en/groovyscript/minecraft/events/fill_bucket_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/fill_bucket_event.md rename to docs/en/groovyscript/minecraft/events/fill_bucket_event.md diff --git a/docs/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md b/docs/en/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md rename to docs/en/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md diff --git a/docs/groovyscript/minecraft/events/game_rule_change_event.md b/docs/en/groovyscript/minecraft/events/game_rule_change_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/game_rule_change_event.md rename to docs/en/groovyscript/minecraft/events/game_rule_change_event.md diff --git a/docs/groovyscript/minecraft/events/get_collision_boxes_event.md b/docs/en/groovyscript/minecraft/events/get_collision_boxes_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/get_collision_boxes_event.md rename to docs/en/groovyscript/minecraft/events/get_collision_boxes_event.md diff --git a/docs/groovyscript/minecraft/events/init_map_gen_event.md b/docs/en/groovyscript/minecraft/events/init_map_gen_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/init_map_gen_event.md rename to docs/en/groovyscript/minecraft/events/init_map_gen_event.md diff --git a/docs/groovyscript/minecraft/events/init_noise_gens_event.md b/docs/en/groovyscript/minecraft/events/init_noise_gens_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/init_noise_gens_event.md rename to docs/en/groovyscript/minecraft/events/init_noise_gens_event.md diff --git a/docs/groovyscript/minecraft/events/item_event.md b/docs/en/groovyscript/minecraft/events/item_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/item_event.md rename to docs/en/groovyscript/minecraft/events/item_event.md diff --git a/docs/groovyscript/minecraft/events/item_expire_event.md b/docs/en/groovyscript/minecraft/events/item_expire_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/item_expire_event.md rename to docs/en/groovyscript/minecraft/events/item_expire_event.md diff --git a/docs/groovyscript/minecraft/events/item_fished_event.md b/docs/en/groovyscript/minecraft/events/item_fished_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/item_fished_event.md rename to docs/en/groovyscript/minecraft/events/item_fished_event.md diff --git a/docs/groovyscript/minecraft/events/item_tooltip_event.md b/docs/en/groovyscript/minecraft/events/item_tooltip_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/item_tooltip_event.md rename to docs/en/groovyscript/minecraft/events/item_tooltip_event.md diff --git a/docs/groovyscript/minecraft/events/item_toss_event.md b/docs/en/groovyscript/minecraft/events/item_toss_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/item_toss_event.md rename to docs/en/groovyscript/minecraft/events/item_toss_event.md diff --git a/docs/groovyscript/minecraft/events/living_attack_event.md b/docs/en/groovyscript/minecraft/events/living_attack_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_attack_event.md rename to docs/en/groovyscript/minecraft/events/living_attack_event.md diff --git a/docs/groovyscript/minecraft/events/living_damage_event.md b/docs/en/groovyscript/minecraft/events/living_damage_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_damage_event.md rename to docs/en/groovyscript/minecraft/events/living_damage_event.md diff --git a/docs/groovyscript/minecraft/events/living_death_event.md b/docs/en/groovyscript/minecraft/events/living_death_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_death_event.md rename to docs/en/groovyscript/minecraft/events/living_death_event.md diff --git a/docs/groovyscript/minecraft/events/living_destroy_block_event.md b/docs/en/groovyscript/minecraft/events/living_destroy_block_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_destroy_block_event.md rename to docs/en/groovyscript/minecraft/events/living_destroy_block_event.md diff --git a/docs/groovyscript/minecraft/events/living_drops_event.md b/docs/en/groovyscript/minecraft/events/living_drops_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_drops_event.md rename to docs/en/groovyscript/minecraft/events/living_drops_event.md diff --git a/docs/groovyscript/minecraft/events/living_entity_use_item_event._finish.md b/docs/en/groovyscript/minecraft/events/living_entity_use_item_event._finish.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_entity_use_item_event._finish.md rename to docs/en/groovyscript/minecraft/events/living_entity_use_item_event._finish.md diff --git a/docs/groovyscript/minecraft/events/living_entity_use_item_event._start.md b/docs/en/groovyscript/minecraft/events/living_entity_use_item_event._start.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_entity_use_item_event._start.md rename to docs/en/groovyscript/minecraft/events/living_entity_use_item_event._start.md diff --git a/docs/groovyscript/minecraft/events/living_entity_use_item_event._stop.md b/docs/en/groovyscript/minecraft/events/living_entity_use_item_event._stop.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_entity_use_item_event._stop.md rename to docs/en/groovyscript/minecraft/events/living_entity_use_item_event._stop.md diff --git a/docs/groovyscript/minecraft/events/living_entity_use_item_event._tick.md b/docs/en/groovyscript/minecraft/events/living_entity_use_item_event._tick.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_entity_use_item_event._tick.md rename to docs/en/groovyscript/minecraft/events/living_entity_use_item_event._tick.md diff --git a/docs/groovyscript/minecraft/events/living_entity_use_item_event.md b/docs/en/groovyscript/minecraft/events/living_entity_use_item_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_entity_use_item_event.md rename to docs/en/groovyscript/minecraft/events/living_entity_use_item_event.md diff --git a/docs/groovyscript/minecraft/events/living_equipment_change_event.md b/docs/en/groovyscript/minecraft/events/living_equipment_change_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_equipment_change_event.md rename to docs/en/groovyscript/minecraft/events/living_equipment_change_event.md diff --git a/docs/groovyscript/minecraft/events/living_event._living_jump_event.md b/docs/en/groovyscript/minecraft/events/living_event._living_jump_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_event._living_jump_event.md rename to docs/en/groovyscript/minecraft/events/living_event._living_jump_event.md diff --git a/docs/groovyscript/minecraft/events/living_event._living_update_event.md b/docs/en/groovyscript/minecraft/events/living_event._living_update_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_event._living_update_event.md rename to docs/en/groovyscript/minecraft/events/living_event._living_update_event.md diff --git a/docs/groovyscript/minecraft/events/living_event.md b/docs/en/groovyscript/minecraft/events/living_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_event.md rename to docs/en/groovyscript/minecraft/events/living_event.md diff --git a/docs/groovyscript/minecraft/events/living_experience_drop_event.md b/docs/en/groovyscript/minecraft/events/living_experience_drop_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_experience_drop_event.md rename to docs/en/groovyscript/minecraft/events/living_experience_drop_event.md diff --git a/docs/groovyscript/minecraft/events/living_fall_event.md b/docs/en/groovyscript/minecraft/events/living_fall_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_fall_event.md rename to docs/en/groovyscript/minecraft/events/living_fall_event.md diff --git a/docs/groovyscript/minecraft/events/living_heal_event.md b/docs/en/groovyscript/minecraft/events/living_heal_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_heal_event.md rename to docs/en/groovyscript/minecraft/events/living_heal_event.md diff --git a/docs/groovyscript/minecraft/events/living_hurt_event.md b/docs/en/groovyscript/minecraft/events/living_hurt_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_hurt_event.md rename to docs/en/groovyscript/minecraft/events/living_hurt_event.md diff --git a/docs/groovyscript/minecraft/events/living_knock_back_event.md b/docs/en/groovyscript/minecraft/events/living_knock_back_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_knock_back_event.md rename to docs/en/groovyscript/minecraft/events/living_knock_back_event.md diff --git a/docs/groovyscript/minecraft/events/living_pack_size_event.md b/docs/en/groovyscript/minecraft/events/living_pack_size_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_pack_size_event.md rename to docs/en/groovyscript/minecraft/events/living_pack_size_event.md diff --git a/docs/groovyscript/minecraft/events/living_set_attack_target_event.md b/docs/en/groovyscript/minecraft/events/living_set_attack_target_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_set_attack_target_event.md rename to docs/en/groovyscript/minecraft/events/living_set_attack_target_event.md diff --git a/docs/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md b/docs/en/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md rename to docs/en/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md diff --git a/docs/groovyscript/minecraft/events/living_spawn_event._check_spawn.md b/docs/en/groovyscript/minecraft/events/living_spawn_event._check_spawn.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_spawn_event._check_spawn.md rename to docs/en/groovyscript/minecraft/events/living_spawn_event._check_spawn.md diff --git a/docs/groovyscript/minecraft/events/living_spawn_event._special_spawn.md b/docs/en/groovyscript/minecraft/events/living_spawn_event._special_spawn.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_spawn_event._special_spawn.md rename to docs/en/groovyscript/minecraft/events/living_spawn_event._special_spawn.md diff --git a/docs/groovyscript/minecraft/events/living_spawn_event.md b/docs/en/groovyscript/minecraft/events/living_spawn_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/living_spawn_event.md rename to docs/en/groovyscript/minecraft/events/living_spawn_event.md diff --git a/docs/groovyscript/minecraft/events/loot_table_load_event.md b/docs/en/groovyscript/minecraft/events/loot_table_load_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/loot_table_load_event.md rename to docs/en/groovyscript/minecraft/events/loot_table_load_event.md diff --git a/docs/groovyscript/minecraft/events/looting_level_event.md b/docs/en/groovyscript/minecraft/events/looting_level_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/looting_level_event.md rename to docs/en/groovyscript/minecraft/events/looting_level_event.md diff --git a/docs/groovyscript/minecraft/events/merchant_trade_offers_event.md b/docs/en/groovyscript/minecraft/events/merchant_trade_offers_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/merchant_trade_offers_event.md rename to docs/en/groovyscript/minecraft/events/merchant_trade_offers_event.md diff --git a/docs/groovyscript/minecraft/events/minecart_collision_event.md b/docs/en/groovyscript/minecraft/events/minecart_collision_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/minecart_collision_event.md rename to docs/en/groovyscript/minecraft/events/minecart_collision_event.md diff --git a/docs/groovyscript/minecraft/events/minecart_event.md b/docs/en/groovyscript/minecraft/events/minecart_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/minecart_event.md rename to docs/en/groovyscript/minecraft/events/minecart_event.md diff --git a/docs/groovyscript/minecraft/events/minecart_interact_event.md b/docs/en/groovyscript/minecraft/events/minecart_interact_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/minecart_interact_event.md rename to docs/en/groovyscript/minecraft/events/minecart_interact_event.md diff --git a/docs/groovyscript/minecraft/events/minecart_update_event.md b/docs/en/groovyscript/minecraft/events/minecart_update_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/minecart_update_event.md rename to docs/en/groovyscript/minecraft/events/minecart_update_event.md diff --git a/docs/groovyscript/minecraft/events/note_block_event._change.md b/docs/en/groovyscript/minecraft/events/note_block_event._change.md similarity index 100% rename from docs/groovyscript/minecraft/events/note_block_event._change.md rename to docs/en/groovyscript/minecraft/events/note_block_event._change.md diff --git a/docs/groovyscript/minecraft/events/note_block_event._play.md b/docs/en/groovyscript/minecraft/events/note_block_event._play.md similarity index 100% rename from docs/groovyscript/minecraft/events/note_block_event._play.md rename to docs/en/groovyscript/minecraft/events/note_block_event._play.md diff --git a/docs/groovyscript/minecraft/events/note_block_event.md b/docs/en/groovyscript/minecraft/events/note_block_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/note_block_event.md rename to docs/en/groovyscript/minecraft/events/note_block_event.md diff --git a/docs/groovyscript/minecraft/events/ore_gen_event._generate_minable.md b/docs/en/groovyscript/minecraft/events/ore_gen_event._generate_minable.md similarity index 100% rename from docs/groovyscript/minecraft/events/ore_gen_event._generate_minable.md rename to docs/en/groovyscript/minecraft/events/ore_gen_event._generate_minable.md diff --git a/docs/groovyscript/minecraft/events/ore_gen_event.md b/docs/en/groovyscript/minecraft/events/ore_gen_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/ore_gen_event.md rename to docs/en/groovyscript/minecraft/events/ore_gen_event.md diff --git a/docs/groovyscript/minecraft/events/play_sound_at_entity_event.md b/docs/en/groovyscript/minecraft/events/play_sound_at_entity_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/play_sound_at_entity_event.md rename to docs/en/groovyscript/minecraft/events/play_sound_at_entity_event.md diff --git a/docs/groovyscript/minecraft/events/player_brewed_potion_event.md b/docs/en/groovyscript/minecraft/events/player_brewed_potion_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_brewed_potion_event.md rename to docs/en/groovyscript/minecraft/events/player_brewed_potion_event.md diff --git a/docs/groovyscript/minecraft/events/player_container_event._close.md b/docs/en/groovyscript/minecraft/events/player_container_event._close.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_container_event._close.md rename to docs/en/groovyscript/minecraft/events/player_container_event._close.md diff --git a/docs/groovyscript/minecraft/events/player_container_event._open.md b/docs/en/groovyscript/minecraft/events/player_container_event._open.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_container_event._open.md rename to docs/en/groovyscript/minecraft/events/player_container_event._open.md diff --git a/docs/groovyscript/minecraft/events/player_container_event.md b/docs/en/groovyscript/minecraft/events/player_container_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_container_event.md rename to docs/en/groovyscript/minecraft/events/player_container_event.md diff --git a/docs/groovyscript/minecraft/events/player_destroy_item_event.md b/docs/en/groovyscript/minecraft/events/player_destroy_item_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_destroy_item_event.md rename to docs/en/groovyscript/minecraft/events/player_destroy_item_event.md diff --git a/docs/groovyscript/minecraft/events/player_drops_event.md b/docs/en/groovyscript/minecraft/events/player_drops_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_drops_event.md rename to docs/en/groovyscript/minecraft/events/player_drops_event.md diff --git a/docs/groovyscript/minecraft/events/player_event._break_speed.md b/docs/en/groovyscript/minecraft/events/player_event._break_speed.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._break_speed.md rename to docs/en/groovyscript/minecraft/events/player_event._break_speed.md diff --git a/docs/groovyscript/minecraft/events/player_event._clone.md b/docs/en/groovyscript/minecraft/events/player_event._clone.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._clone.md rename to docs/en/groovyscript/minecraft/events/player_event._clone.md diff --git a/docs/groovyscript/minecraft/events/player_event._harvest_check.md b/docs/en/groovyscript/minecraft/events/player_event._harvest_check.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._harvest_check.md rename to docs/en/groovyscript/minecraft/events/player_event._harvest_check.md diff --git a/docs/groovyscript/minecraft/events/player_event._load_from_file.md b/docs/en/groovyscript/minecraft/events/player_event._load_from_file.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._load_from_file.md rename to docs/en/groovyscript/minecraft/events/player_event._load_from_file.md diff --git a/docs/groovyscript/minecraft/events/player_event._name_format.md b/docs/en/groovyscript/minecraft/events/player_event._name_format.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._name_format.md rename to docs/en/groovyscript/minecraft/events/player_event._name_format.md diff --git a/docs/groovyscript/minecraft/events/player_event._save_to_file.md b/docs/en/groovyscript/minecraft/events/player_event._save_to_file.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._save_to_file.md rename to docs/en/groovyscript/minecraft/events/player_event._save_to_file.md diff --git a/docs/groovyscript/minecraft/events/player_event._start_tracking.md b/docs/en/groovyscript/minecraft/events/player_event._start_tracking.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._start_tracking.md rename to docs/en/groovyscript/minecraft/events/player_event._start_tracking.md diff --git a/docs/groovyscript/minecraft/events/player_event._stop_tracking.md b/docs/en/groovyscript/minecraft/events/player_event._stop_tracking.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._stop_tracking.md rename to docs/en/groovyscript/minecraft/events/player_event._stop_tracking.md diff --git a/docs/groovyscript/minecraft/events/player_event._visibility.md b/docs/en/groovyscript/minecraft/events/player_event._visibility.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event._visibility.md rename to docs/en/groovyscript/minecraft/events/player_event._visibility.md diff --git a/docs/groovyscript/minecraft/events/player_event.md b/docs/en/groovyscript/minecraft/events/player_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_event.md rename to docs/en/groovyscript/minecraft/events/player_event.md diff --git a/docs/groovyscript/minecraft/events/player_flyable_fall_event.md b/docs/en/groovyscript/minecraft/events/player_flyable_fall_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_flyable_fall_event.md rename to docs/en/groovyscript/minecraft/events/player_flyable_fall_event.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event._entity_interact.md b/docs/en/groovyscript/minecraft/events/player_interact_event._entity_interact.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event._entity_interact.md rename to docs/en/groovyscript/minecraft/events/player_interact_event._entity_interact.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md b/docs/en/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md rename to docs/en/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event._left_click_block.md b/docs/en/groovyscript/minecraft/events/player_interact_event._left_click_block.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event._left_click_block.md rename to docs/en/groovyscript/minecraft/events/player_interact_event._left_click_block.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event._left_click_empty.md b/docs/en/groovyscript/minecraft/events/player_interact_event._left_click_empty.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event._left_click_empty.md rename to docs/en/groovyscript/minecraft/events/player_interact_event._left_click_empty.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event._right_click_block.md b/docs/en/groovyscript/minecraft/events/player_interact_event._right_click_block.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event._right_click_block.md rename to docs/en/groovyscript/minecraft/events/player_interact_event._right_click_block.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event._right_click_empty.md b/docs/en/groovyscript/minecraft/events/player_interact_event._right_click_empty.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event._right_click_empty.md rename to docs/en/groovyscript/minecraft/events/player_interact_event._right_click_empty.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event._right_click_item.md b/docs/en/groovyscript/minecraft/events/player_interact_event._right_click_item.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event._right_click_item.md rename to docs/en/groovyscript/minecraft/events/player_interact_event._right_click_item.md diff --git a/docs/groovyscript/minecraft/events/player_interact_event.md b/docs/en/groovyscript/minecraft/events/player_interact_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_interact_event.md rename to docs/en/groovyscript/minecraft/events/player_interact_event.md diff --git a/docs/groovyscript/minecraft/events/player_pickup_xp_event.md b/docs/en/groovyscript/minecraft/events/player_pickup_xp_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_pickup_xp_event.md rename to docs/en/groovyscript/minecraft/events/player_pickup_xp_event.md diff --git a/docs/groovyscript/minecraft/events/player_set_spawn_event.md b/docs/en/groovyscript/minecraft/events/player_set_spawn_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_set_spawn_event.md rename to docs/en/groovyscript/minecraft/events/player_set_spawn_event.md diff --git a/docs/groovyscript/minecraft/events/player_sleep_in_bed_event.md b/docs/en/groovyscript/minecraft/events/player_sleep_in_bed_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_sleep_in_bed_event.md rename to docs/en/groovyscript/minecraft/events/player_sleep_in_bed_event.md diff --git a/docs/groovyscript/minecraft/events/player_wake_up_event.md b/docs/en/groovyscript/minecraft/events/player_wake_up_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/player_wake_up_event.md rename to docs/en/groovyscript/minecraft/events/player_wake_up_event.md diff --git a/docs/groovyscript/minecraft/events/populate_chunk_event._populate.md b/docs/en/groovyscript/minecraft/events/populate_chunk_event._populate.md similarity index 100% rename from docs/groovyscript/minecraft/events/populate_chunk_event._populate.md rename to docs/en/groovyscript/minecraft/events/populate_chunk_event._populate.md diff --git a/docs/groovyscript/minecraft/events/populate_chunk_event.md b/docs/en/groovyscript/minecraft/events/populate_chunk_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/populate_chunk_event.md rename to docs/en/groovyscript/minecraft/events/populate_chunk_event.md diff --git a/docs/groovyscript/minecraft/events/potion_brew_event.md b/docs/en/groovyscript/minecraft/events/potion_brew_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/potion_brew_event.md rename to docs/en/groovyscript/minecraft/events/potion_brew_event.md diff --git a/docs/groovyscript/minecraft/events/potion_color_calculation_event.md b/docs/en/groovyscript/minecraft/events/potion_color_calculation_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/potion_color_calculation_event.md rename to docs/en/groovyscript/minecraft/events/potion_color_calculation_event.md diff --git a/docs/groovyscript/minecraft/events/potion_event._potion_added_event.md b/docs/en/groovyscript/minecraft/events/potion_event._potion_added_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/potion_event._potion_added_event.md rename to docs/en/groovyscript/minecraft/events/potion_event._potion_added_event.md diff --git a/docs/groovyscript/minecraft/events/potion_event._potion_applicable_event.md b/docs/en/groovyscript/minecraft/events/potion_event._potion_applicable_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/potion_event._potion_applicable_event.md rename to docs/en/groovyscript/minecraft/events/potion_event._potion_applicable_event.md diff --git a/docs/groovyscript/minecraft/events/potion_event._potion_expiry_event.md b/docs/en/groovyscript/minecraft/events/potion_event._potion_expiry_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/potion_event._potion_expiry_event.md rename to docs/en/groovyscript/minecraft/events/potion_event._potion_expiry_event.md diff --git a/docs/groovyscript/minecraft/events/potion_event._potion_remove_event.md b/docs/en/groovyscript/minecraft/events/potion_event._potion_remove_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/potion_event._potion_remove_event.md rename to docs/en/groovyscript/minecraft/events/potion_event._potion_remove_event.md diff --git a/docs/groovyscript/minecraft/events/potion_event.md b/docs/en/groovyscript/minecraft/events/potion_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/potion_event.md rename to docs/en/groovyscript/minecraft/events/potion_event.md diff --git a/docs/groovyscript/minecraft/events/projectile_impact_event._arrow.md b/docs/en/groovyscript/minecraft/events/projectile_impact_event._arrow.md similarity index 100% rename from docs/groovyscript/minecraft/events/projectile_impact_event._arrow.md rename to docs/en/groovyscript/minecraft/events/projectile_impact_event._arrow.md diff --git a/docs/groovyscript/minecraft/events/projectile_impact_event._fireball.md b/docs/en/groovyscript/minecraft/events/projectile_impact_event._fireball.md similarity index 100% rename from docs/groovyscript/minecraft/events/projectile_impact_event._fireball.md rename to docs/en/groovyscript/minecraft/events/projectile_impact_event._fireball.md diff --git a/docs/groovyscript/minecraft/events/projectile_impact_event._throwable.md b/docs/en/groovyscript/minecraft/events/projectile_impact_event._throwable.md similarity index 100% rename from docs/groovyscript/minecraft/events/projectile_impact_event._throwable.md rename to docs/en/groovyscript/minecraft/events/projectile_impact_event._throwable.md diff --git a/docs/groovyscript/minecraft/events/projectile_impact_event.md b/docs/en/groovyscript/minecraft/events/projectile_impact_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/projectile_impact_event.md rename to docs/en/groovyscript/minecraft/events/projectile_impact_event.md diff --git a/docs/groovyscript/minecraft/events/registry_event._missing_mappings.md b/docs/en/groovyscript/minecraft/events/registry_event._missing_mappings.md similarity index 100% rename from docs/groovyscript/minecraft/events/registry_event._missing_mappings.md rename to docs/en/groovyscript/minecraft/events/registry_event._missing_mappings.md diff --git a/docs/groovyscript/minecraft/events/registry_event._new_registry.md b/docs/en/groovyscript/minecraft/events/registry_event._new_registry.md similarity index 100% rename from docs/groovyscript/minecraft/events/registry_event._new_registry.md rename to docs/en/groovyscript/minecraft/events/registry_event._new_registry.md diff --git a/docs/groovyscript/minecraft/events/registry_event._register.md b/docs/en/groovyscript/minecraft/events/registry_event._register.md similarity index 100% rename from docs/groovyscript/minecraft/events/registry_event._register.md rename to docs/en/groovyscript/minecraft/events/registry_event._register.md diff --git a/docs/groovyscript/minecraft/events/registry_event.md b/docs/en/groovyscript/minecraft/events/registry_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/registry_event.md rename to docs/en/groovyscript/minecraft/events/registry_event.md diff --git a/docs/groovyscript/minecraft/events/sapling_grow_tree_event.md b/docs/en/groovyscript/minecraft/events/sapling_grow_tree_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/sapling_grow_tree_event.md rename to docs/en/groovyscript/minecraft/events/sapling_grow_tree_event.md diff --git a/docs/groovyscript/minecraft/events/server_chat_event.md b/docs/en/groovyscript/minecraft/events/server_chat_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/server_chat_event.md rename to docs/en/groovyscript/minecraft/events/server_chat_event.md diff --git a/docs/groovyscript/minecraft/events/sleeping_location_check_event.md b/docs/en/groovyscript/minecraft/events/sleeping_location_check_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/sleeping_location_check_event.md rename to docs/en/groovyscript/minecraft/events/sleeping_location_check_event.md diff --git a/docs/groovyscript/minecraft/events/sleeping_time_check_event.md b/docs/en/groovyscript/minecraft/events/sleeping_time_check_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/sleeping_time_check_event.md rename to docs/en/groovyscript/minecraft/events/sleeping_time_check_event.md diff --git a/docs/groovyscript/minecraft/events/throwable_impact_event.md b/docs/en/groovyscript/minecraft/events/throwable_impact_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/throwable_impact_event.md rename to docs/en/groovyscript/minecraft/events/throwable_impact_event.md diff --git a/docs/groovyscript/minecraft/events/use_hoe_event.md b/docs/en/groovyscript/minecraft/events/use_hoe_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/use_hoe_event.md rename to docs/en/groovyscript/minecraft/events/use_hoe_event.md diff --git a/docs/groovyscript/minecraft/events/village_siege_event.md b/docs/en/groovyscript/minecraft/events/village_siege_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/village_siege_event.md rename to docs/en/groovyscript/minecraft/events/village_siege_event.md diff --git a/docs/groovyscript/minecraft/events/world_event._create_spawn_position.md b/docs/en/groovyscript/minecraft/events/world_event._create_spawn_position.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_event._create_spawn_position.md rename to docs/en/groovyscript/minecraft/events/world_event._create_spawn_position.md diff --git a/docs/groovyscript/minecraft/events/world_event._load.md b/docs/en/groovyscript/minecraft/events/world_event._load.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_event._load.md rename to docs/en/groovyscript/minecraft/events/world_event._load.md diff --git a/docs/groovyscript/minecraft/events/world_event._potential_spawns.md b/docs/en/groovyscript/minecraft/events/world_event._potential_spawns.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_event._potential_spawns.md rename to docs/en/groovyscript/minecraft/events/world_event._potential_spawns.md diff --git a/docs/groovyscript/minecraft/events/world_event._save.md b/docs/en/groovyscript/minecraft/events/world_event._save.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_event._save.md rename to docs/en/groovyscript/minecraft/events/world_event._save.md diff --git a/docs/groovyscript/minecraft/events/world_event._unload.md b/docs/en/groovyscript/minecraft/events/world_event._unload.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_event._unload.md rename to docs/en/groovyscript/minecraft/events/world_event._unload.md diff --git a/docs/groovyscript/minecraft/events/world_event.md b/docs/en/groovyscript/minecraft/events/world_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_event.md rename to docs/en/groovyscript/minecraft/events/world_event.md diff --git a/docs/groovyscript/minecraft/events/world_type_event._biome_size.md b/docs/en/groovyscript/minecraft/events/world_type_event._biome_size.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_type_event._biome_size.md rename to docs/en/groovyscript/minecraft/events/world_type_event._biome_size.md diff --git a/docs/groovyscript/minecraft/events/world_type_event._init_biome_gens.md b/docs/en/groovyscript/minecraft/events/world_type_event._init_biome_gens.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_type_event._init_biome_gens.md rename to docs/en/groovyscript/minecraft/events/world_type_event._init_biome_gens.md diff --git a/docs/groovyscript/minecraft/events/world_type_event.md b/docs/en/groovyscript/minecraft/events/world_type_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/world_type_event.md rename to docs/en/groovyscript/minecraft/events/world_type_event.md diff --git a/docs/groovyscript/minecraft/events/zombie_event._summon_aid_event.md b/docs/en/groovyscript/minecraft/events/zombie_event._summon_aid_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/zombie_event._summon_aid_event.md rename to docs/en/groovyscript/minecraft/events/zombie_event._summon_aid_event.md diff --git a/docs/groovyscript/minecraft/events/zombie_event.md b/docs/en/groovyscript/minecraft/events/zombie_event.md similarity index 100% rename from docs/groovyscript/minecraft/events/zombie_event.md rename to docs/en/groovyscript/minecraft/events/zombie_event.md diff --git a/docs/groovyscript/minecraft/furnace.md b/docs/en/groovyscript/minecraft/furnace.md similarity index 100% rename from docs/groovyscript/minecraft/furnace.md rename to docs/en/groovyscript/minecraft/furnace.md diff --git a/docs/groovyscript/minecraft/item.md b/docs/en/groovyscript/minecraft/item.md similarity index 100% rename from docs/groovyscript/minecraft/item.md rename to docs/en/groovyscript/minecraft/item.md diff --git a/docs/groovyscript/minecraft/ore_dictionary.md b/docs/en/groovyscript/minecraft/ore_dictionary.md similarity index 100% rename from docs/groovyscript/minecraft/ore_dictionary.md rename to docs/en/groovyscript/minecraft/ore_dictionary.md diff --git a/docs/groovyscript/minecraft/tooltip.md b/docs/en/groovyscript/minecraft/tooltip.md similarity index 100% rename from docs/groovyscript/minecraft/tooltip.md rename to docs/en/groovyscript/minecraft/tooltip.md diff --git a/docs/groovyscript/mods/bloodmagic/alchemy_array.md b/docs/en/groovyscript/mods/bloodmagic/alchemy_array.md similarity index 100% rename from docs/groovyscript/mods/bloodmagic/alchemy_array.md rename to docs/en/groovyscript/mods/bloodmagic/alchemy_array.md diff --git a/docs/groovyscript/mods/bloodmagic/alchemy_table.md b/docs/en/groovyscript/mods/bloodmagic/alchemy_table.md similarity index 100% rename from docs/groovyscript/mods/bloodmagic/alchemy_table.md rename to docs/en/groovyscript/mods/bloodmagic/alchemy_table.md diff --git a/docs/groovyscript/mods/bloodmagic/blood_altar.md b/docs/en/groovyscript/mods/bloodmagic/blood_altar.md similarity index 100% rename from docs/groovyscript/mods/bloodmagic/blood_altar.md rename to docs/en/groovyscript/mods/bloodmagic/blood_altar.md diff --git a/docs/groovyscript/mods/bloodmagic/meteor.md b/docs/en/groovyscript/mods/bloodmagic/meteor.md similarity index 100% rename from docs/groovyscript/mods/bloodmagic/meteor.md rename to docs/en/groovyscript/mods/bloodmagic/meteor.md diff --git a/docs/groovyscript/mods/bloodmagic/sacrificial.md b/docs/en/groovyscript/mods/bloodmagic/sacrificial.md similarity index 100% rename from docs/groovyscript/mods/bloodmagic/sacrificial.md rename to docs/en/groovyscript/mods/bloodmagic/sacrificial.md diff --git a/docs/groovyscript/mods/bloodmagic/tartaric_forge.md b/docs/en/groovyscript/mods/bloodmagic/tartaric_forge.md similarity index 100% rename from docs/groovyscript/mods/bloodmagic/tartaric_forge.md rename to docs/en/groovyscript/mods/bloodmagic/tartaric_forge.md diff --git a/docs/groovyscript/mods/bloodmagic/tranquility.md b/docs/en/groovyscript/mods/bloodmagic/tranquility.md similarity index 100% rename from docs/groovyscript/mods/bloodmagic/tranquility.md rename to docs/en/groovyscript/mods/bloodmagic/tranquility.md diff --git a/docs/groovyscript/mods/enderio/alloy_smelter.md b/docs/en/groovyscript/mods/enderio/alloy_smelter.md similarity index 100% rename from docs/groovyscript/mods/enderio/alloy_smelter.md rename to docs/en/groovyscript/mods/enderio/alloy_smelter.md diff --git a/docs/groovyscript/mods/enderio/combustion_gen.md b/docs/en/groovyscript/mods/enderio/combustion_gen.md similarity index 100% rename from docs/groovyscript/mods/enderio/combustion_gen.md rename to docs/en/groovyscript/mods/enderio/combustion_gen.md diff --git a/docs/groovyscript/mods/enderio/enchanter.md b/docs/en/groovyscript/mods/enderio/enchanter.md similarity index 100% rename from docs/groovyscript/mods/enderio/enchanter.md rename to docs/en/groovyscript/mods/enderio/enchanter.md diff --git a/docs/groovyscript/mods/enderio/sag_mill.md b/docs/en/groovyscript/mods/enderio/sag_mill.md similarity index 100% rename from docs/groovyscript/mods/enderio/sag_mill.md rename to docs/en/groovyscript/mods/enderio/sag_mill.md diff --git a/docs/groovyscript/mods/enderio/slice_n_splice.md b/docs/en/groovyscript/mods/enderio/slice_n_splice.md similarity index 100% rename from docs/groovyscript/mods/enderio/slice_n_splice.md rename to docs/en/groovyscript/mods/enderio/slice_n_splice.md diff --git a/docs/groovyscript/mods/enderio/soul_binder.md b/docs/en/groovyscript/mods/enderio/soul_binder.md similarity index 100% rename from docs/groovyscript/mods/enderio/soul_binder.md rename to docs/en/groovyscript/mods/enderio/soul_binder.md diff --git a/docs/groovyscript/mods/enderio/tank.md b/docs/en/groovyscript/mods/enderio/tank.md similarity index 100% rename from docs/groovyscript/mods/enderio/tank.md rename to docs/en/groovyscript/mods/enderio/tank.md diff --git a/docs/groovyscript/mods/enderio/vat.md b/docs/en/groovyscript/mods/enderio/vat.md similarity index 100% rename from docs/groovyscript/mods/enderio/vat.md rename to docs/en/groovyscript/mods/enderio/vat.md diff --git a/docs/groovyscript/mods/gtceu/heating_coils.md b/docs/en/groovyscript/mods/gtceu/heating_coils.md similarity index 100% rename from docs/groovyscript/mods/gtceu/heating_coils.md rename to docs/en/groovyscript/mods/gtceu/heating_coils.md diff --git a/docs/groovyscript/mods/gtceu/material.md b/docs/en/groovyscript/mods/gtceu/material.md similarity index 100% rename from docs/groovyscript/mods/gtceu/material.md rename to docs/en/groovyscript/mods/gtceu/material.md diff --git a/docs/groovyscript/mods/gtceu/multiblock.md b/docs/en/groovyscript/mods/gtceu/multiblock.md similarity index 100% rename from docs/groovyscript/mods/gtceu/multiblock.md rename to docs/en/groovyscript/mods/gtceu/multiblock.md diff --git a/docs/groovyscript/mods/gtceu/recipes.md b/docs/en/groovyscript/mods/gtceu/recipes.md similarity index 100% rename from docs/groovyscript/mods/gtceu/recipes.md rename to docs/en/groovyscript/mods/gtceu/recipes.md diff --git a/docs/groovyscript/mods/gtceu/terminal.md b/docs/en/groovyscript/mods/gtceu/terminal.md similarity index 100% rename from docs/groovyscript/mods/gtceu/terminal.md rename to docs/en/groovyscript/mods/gtceu/terminal.md diff --git a/docs/groovyscript/mods/jei.md b/docs/en/groovyscript/mods/jei.md similarity index 100% rename from docs/groovyscript/mods/jei.md rename to docs/en/groovyscript/mods/jei.md diff --git a/docs/groovyscript/mods/mekanism/crusher.md b/docs/en/groovyscript/mods/mekanism/crusher.md similarity index 100% rename from docs/groovyscript/mods/mekanism/crusher.md rename to docs/en/groovyscript/mods/mekanism/crusher.md diff --git a/docs/groovyscript/mods/thaumcraft/ArcaneWorkbench.md b/docs/en/groovyscript/mods/thaumcraft/ArcaneWorkbench.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/ArcaneWorkbench.md rename to docs/en/groovyscript/mods/thaumcraft/ArcaneWorkbench.md diff --git a/docs/groovyscript/mods/thaumcraft/Aspects.md b/docs/en/groovyscript/mods/thaumcraft/Aspects.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/Aspects.md rename to docs/en/groovyscript/mods/thaumcraft/Aspects.md diff --git a/docs/groovyscript/mods/thaumcraft/Crucible.md b/docs/en/groovyscript/mods/thaumcraft/Crucible.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/Crucible.md rename to docs/en/groovyscript/mods/thaumcraft/Crucible.md diff --git a/docs/groovyscript/mods/thaumcraft/DustTrigger.md b/docs/en/groovyscript/mods/thaumcraft/DustTrigger.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/DustTrigger.md rename to docs/en/groovyscript/mods/thaumcraft/DustTrigger.md diff --git a/docs/groovyscript/mods/thaumcraft/Infusion.md b/docs/en/groovyscript/mods/thaumcraft/Infusion.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/Infusion.md rename to docs/en/groovyscript/mods/thaumcraft/Infusion.md diff --git a/docs/groovyscript/mods/thaumcraft/Lootbag.md b/docs/en/groovyscript/mods/thaumcraft/Lootbag.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/Lootbag.md rename to docs/en/groovyscript/mods/thaumcraft/Lootbag.md diff --git a/docs/groovyscript/mods/thaumcraft/Research.md b/docs/en/groovyscript/mods/thaumcraft/Research.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/Research.md rename to docs/en/groovyscript/mods/thaumcraft/Research.md diff --git a/docs/groovyscript/mods/thaumcraft/SmeltingBonus.md b/docs/en/groovyscript/mods/thaumcraft/SmeltingBonus.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/SmeltingBonus.md rename to docs/en/groovyscript/mods/thaumcraft/SmeltingBonus.md diff --git a/docs/groovyscript/mods/thaumcraft/Warp.md b/docs/en/groovyscript/mods/thaumcraft/Warp.md similarity index 100% rename from docs/groovyscript/mods/thaumcraft/Warp.md rename to docs/en/groovyscript/mods/thaumcraft/Warp.md diff --git a/docs/groovyscript/mods/thermal/pulverizer.md b/docs/en/groovyscript/mods/thermal/pulverizer.md similarity index 100% rename from docs/groovyscript/mods/thermal/pulverizer.md rename to docs/en/groovyscript/mods/thermal/pulverizer.md diff --git a/docs/groovyscript/rl.md b/docs/en/groovyscript/rl.md similarity index 100% rename from docs/groovyscript/rl.md rename to docs/en/groovyscript/rl.md diff --git a/docs/index.md b/docs/en/index.md similarity index 100% rename from docs/index.md rename to docs/en/index.md diff --git a/docs/stylesheets/extra.css b/docs/en/stylesheets/extra.css similarity index 100% rename from docs/stylesheets/extra.css rename to docs/en/stylesheets/extra.css diff --git a/docs/fr/index.md b/docs/fr/index.md new file mode 100644 index 0000000..dc1e4ff --- /dev/null +++ b/docs/fr/index.md @@ -0,0 +1 @@ +# Lol \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 99a6886..edc1771 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,11 +1,14 @@ site_name: GroovyScript +site_url: https://groovyscript-docs.readthedocs.io repo_name: CleanroomMC/GroovyScript-Docs repo_url: https://github.com/CleanroomMC/GroovyScript-Docs +docs_dir: docs + nav: + - index.md - Introduction: - - index.md - Getting Started: getting_started.md - "Groovy": - "Introduction": "groovy/introduction.md" @@ -289,3 +292,23 @@ markdown_extensions: extra_css: - stylesheets/extra.css + + +plugins: + - search + - i18n: + default_language: en + default_language_only: false + docs_structure: folder + languages: + default: + name: Default (en) + build: true + en: + name: English + build: true + site_name: "MkDocs static i18n plugin demo (en)" + fr: + name: Francais + build: true + site_name: "MkDocs static i18n plugin demo (fr)" diff --git a/requirements.txt b/requirements.txt index 10f2c47..8d4d5da 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,4 +2,5 @@ jinja2>=3.0.2 markdown>=3.2 mkdocs>=1.3.1 -mkdocs-material>=8.3.9 \ No newline at end of file +mkdocs-material>=8.3.9 +mkdocs-static-i18n>=0.53 \ No newline at end of file From 7dd3fdff6963a4bfdc6857ea097c396b919eea11 Mon Sep 17 00:00:00 2001 From: brachy84 Date: Fri, 17 Mar 2023 18:08:23 +0100 Subject: [PATCH 02/11] some german docs --- docs/de/index.md | 35 +++++++++++++++++++++++++++++++++++ docs/fr/index.md | 1 - mkdocs.yml | 19 +++++++++++-------- 3 files changed, 46 insertions(+), 9 deletions(-) create mode 100644 docs/de/index.md delete mode 100644 docs/fr/index.md diff --git a/docs/de/index.md b/docs/de/index.md new file mode 100644 index 0000000..e1b7b66 --- /dev/null +++ b/docs/de/index.md @@ -0,0 +1,35 @@ +# Welcome to GroovyScript + +Ein umfassender Skriptsandkasten für Minecraft 1.12.2.
+[Trete unserem Discordserver bei (Englisch)](https://discord.com/invite/m53yxTjjKM).
+ +!!! Note + Die deutsche Übersetzung ist nicht vollständig! Bei nicht vorhandenen Seiten werden die Englischen versionen gezeigt. + +Du siehst nicht, was andere sehen? Versuche die Seite neu zu laden. + +#### Merkmale: + +1. Groovy: eine leistungsfähige und getestete Skriptsprache + - Java kompatibler Syntax + zusammenpassender Code + - Statische Kompilation + - Optionale dynamisches typisieren + - Metaprogrammierung +2. Sandboxed: scripts are effectively ran in a sandbox, with sensitive operations blacklisted from being called or referenced +3. Reloading: able to test script changes within the game without restarting + - Most if not all Forge Registry objects can be reloaded on the fly + - Most mod registries are supported natively +4. Events: Easily listen to Forge's EventBuses with Groovy Closures +5. Familiarity: Bracket handlers for those that are familiar with CraftTweaker (currently implemented, may be removed in the near future) +6. Informational: commands to display rich information for the item in your hand and more +7. Optimized: Making sure no compromises are being made while delivering features with efficient code +8. API: Great catalogue of code for other mod authors to make their mods compatible with GroovyScript such as package/class/method/field blacklists + +### Where to go? +Check [this](getting_started.md) out to get started.
+Check out the Groovy tab for infos about the Groovy language.
+Check out the GroovyScript for the GroovyScript documentation.
+ +!!! Note + This wiki is highly WIP. There is still a lot of info missing. We would appreciate any help to improve this place. + Get started by joining our [Discord](https://discord.com/invite/m53yxTjjKM) \ No newline at end of file diff --git a/docs/fr/index.md b/docs/fr/index.md deleted file mode 100644 index dc1e4ff..0000000 --- a/docs/fr/index.md +++ /dev/null @@ -1 +0,0 @@ -# Lol \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index edc1771..2cee315 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,4 +1,4 @@ -site_name: GroovyScript +site_name: GroovyScript Wiki site_url: https://groovyscript-docs.readthedocs.io repo_name: CleanroomMC/GroovyScript-Docs @@ -7,9 +7,8 @@ repo_url: https://github.com/CleanroomMC/GroovyScript-Docs docs_dir: docs nav: - - index.md - - Introduction: - - Getting Started: getting_started.md + - Introduction: index.md + - Getting Started: getting_started.md - "Groovy": - "Introduction": "groovy/introduction.md" - "Strings": "groovy/strings.md" @@ -307,8 +306,12 @@ plugins: en: name: English build: true - site_name: "MkDocs static i18n plugin demo (en)" - fr: - name: Francais + de: + name: Deutsch build: true - site_name: "MkDocs static i18n plugin demo (fr)" + site_name: "GroovyScript Wiki" + nav_translations: + de: + Introduction: Einführung + Getting Started: Erste Schritte + From ee0d4cfb94bc9edd81e4fecd951101c38218557f Mon Sep 17 00:00:00 2001 From: Lonelyxia <3438505487@qq.com> Date: Sat, 18 Mar 2023 12:18:30 +0800 Subject: [PATCH 03/11] Update --- mkdocs.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mkdocs.yml b/mkdocs.yml index 2cee315..4a3c2ef 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -310,6 +310,10 @@ plugins: name: Deutsch build: true site_name: "GroovyScript Wiki" + zh: + name: Simplified Chinese + bulid: true + site_name: "GroovyScript 维基百科" nav_translations: de: Introduction: Einführung From fcf6df5516dbf9662433f40428ed46d72c82d7aa Mon Sep 17 00:00:00 2001 From: Lonelyxia <3438505487@qq.com> Date: Sat, 18 Mar 2023 12:50:00 +0800 Subject: [PATCH 04/11] Update files --- mkdocs.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/mkdocs.yml b/mkdocs.yml index 4a3c2ef..1a4bb05 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -314,8 +314,18 @@ plugins: name: Simplified Chinese bulid: true site_name: "GroovyScript 维基百科" + zh-TW: + name: Traditional Chinese + bulid: true + site_name: "GroovyScript 維基百科" nav_translations: de: Introduction: Einführung Getting Started: Erste Schritte + zh: + Introduction: 简介 + Getting Started: 第一个步骤 + zh-TW: + Introduction: 概括 + Getting Started: 第一個步驟 From 7ecc31dba9d41e5e040e811ff0052827b83a2cee Mon Sep 17 00:00:00 2001 From: Lonelyxia <3438505487@qq.com> Date: Sat, 18 Mar 2023 13:06:05 +0800 Subject: [PATCH 05/11] Update files --- docs/zh-TW/index.md | 32 ++++++++++++++++++++++++++++++++ docs/zh/index.md | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 docs/zh-TW/index.md create mode 100644 docs/zh/index.md diff --git a/docs/zh-TW/index.md b/docs/zh-TW/index.md new file mode 100644 index 0000000..c7824c3 --- /dev/null +++ b/docs/zh-TW/index.md @@ -0,0 +1,32 @@ +# Welcome to GroovyScript + +A comprehensive scripting sandbox for Minecraft 1.12.2.
+[Join our Discord](https://discord.com/invite/m53yxTjjKM).
+ +Are you not seeing what other see on this wiki? Try reloading it. + +#### Features: + +1. Groovy: a powerful and tested scripting language + - Java-compatible syntax + interoperable code + - Static compilation + - Optional dynamic typing + - Metaprogramming +2. Sandboxed: scripts are effectively ran in a sandbox, with sensitive operations blacklisted from being called or referenced +3. Reloading: able to test script changes within the game without restarting + - Most if not all Forge Registry objects can be reloaded on the fly + - Most mod registries are supported natively +4. Events: Easily listen to Forge's EventBuses with Groovy Closures +5. Familiarity: Bracket handlers for those that are familiar with CraftTweaker (currently implemented, may be removed in the near future) +6. Informational: commands to display rich information for the item in your hand and more +7. Optimized: Making sure no compromises are being made while delivering features with efficient code +8. API: Great catalogue of code for other mod authors to make their mods compatible with GroovyScript such as package/class/method/field blacklists + +### Where to go? +Check [this](getting_started.md) out to get started.
+Check out the Groovy tab for infos about the Groovy language.
+Check out the GroovyScript for the GroovyScript documentation.
+ +!!! Note + This wiki is highly WIP. There is still a lot of info missing. We would appreciate any help to improve this place. + Get started by joining our [Discord](https://discord.com/invite/m53yxTjjKM) \ No newline at end of file diff --git a/docs/zh/index.md b/docs/zh/index.md new file mode 100644 index 0000000..c7824c3 --- /dev/null +++ b/docs/zh/index.md @@ -0,0 +1,32 @@ +# Welcome to GroovyScript + +A comprehensive scripting sandbox for Minecraft 1.12.2.
+[Join our Discord](https://discord.com/invite/m53yxTjjKM).
+ +Are you not seeing what other see on this wiki? Try reloading it. + +#### Features: + +1. Groovy: a powerful and tested scripting language + - Java-compatible syntax + interoperable code + - Static compilation + - Optional dynamic typing + - Metaprogramming +2. Sandboxed: scripts are effectively ran in a sandbox, with sensitive operations blacklisted from being called or referenced +3. Reloading: able to test script changes within the game without restarting + - Most if not all Forge Registry objects can be reloaded on the fly + - Most mod registries are supported natively +4. Events: Easily listen to Forge's EventBuses with Groovy Closures +5. Familiarity: Bracket handlers for those that are familiar with CraftTweaker (currently implemented, may be removed in the near future) +6. Informational: commands to display rich information for the item in your hand and more +7. Optimized: Making sure no compromises are being made while delivering features with efficient code +8. API: Great catalogue of code for other mod authors to make their mods compatible with GroovyScript such as package/class/method/field blacklists + +### Where to go? +Check [this](getting_started.md) out to get started.
+Check out the Groovy tab for infos about the Groovy language.
+Check out the GroovyScript for the GroovyScript documentation.
+ +!!! Note + This wiki is highly WIP. There is still a lot of info missing. We would appreciate any help to improve this place. + Get started by joining our [Discord](https://discord.com/invite/m53yxTjjKM) \ No newline at end of file From fbc951134d26f1e663a93a33d7c2f6fbe4fd01dd Mon Sep 17 00:00:00 2001 From: Lonelyxia <3438505487@qq.com> Date: Sat, 18 Mar 2023 13:22:59 +0800 Subject: [PATCH 06/11] beta pls --- docs/zh-TW/index.md | 2 +- docs/zh/index.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/zh-TW/index.md b/docs/zh-TW/index.md index c7824c3..62522ef 100644 --- a/docs/zh-TW/index.md +++ b/docs/zh-TW/index.md @@ -1,7 +1,7 @@ # Welcome to GroovyScript A comprehensive scripting sandbox for Minecraft 1.12.2.
-[Join our Discord](https://discord.com/invite/m53yxTjjKM).
+[加入 Discord 群組(英語)](https://discord.com/invite/m53yxTjjKM).
Are you not seeing what other see on this wiki? Try reloading it. diff --git a/docs/zh/index.md b/docs/zh/index.md index c7824c3..5bca3db 100644 --- a/docs/zh/index.md +++ b/docs/zh/index.md @@ -1,7 +1,7 @@ # Welcome to GroovyScript A comprehensive scripting sandbox for Minecraft 1.12.2.
-[Join our Discord](https://discord.com/invite/m53yxTjjKM).
+[加入 Discord 社区(英语)](https://discord.com/invite/m53yxTjjKM).
Are you not seeing what other see on this wiki? Try reloading it. From 84a5cec02251de7480e7c6f61f35e35b91e0b29e Mon Sep 17 00:00:00 2001 From: Lonelyxia <3438505487@qq.com> Date: Sat, 18 Mar 2023 14:02:15 +0800 Subject: [PATCH 07/11] Update Simplified Chinese files --- docs/zh/getting_started.md | 109 +++++++++++++++++++++++++++++++++++++ docs/zh/index.md | 45 ++++++++------- mkdocs.yml | 2 +- 3 files changed, 132 insertions(+), 24 deletions(-) create mode 100644 docs/zh/getting_started.md diff --git a/docs/zh/getting_started.md b/docs/zh/getting_started.md new file mode 100644 index 0000000..e9dd6ef --- /dev/null +++ b/docs/zh/getting_started.md @@ -0,0 +1,109 @@ +# Getting started + +Programming knowledge is not necessarily required, but it will help you a lot.
+As text editor you can use [Notepad++](https://notepad-plus-plus.org/downloads/) just fine. (We will work on a better +alternative in the future) + +1. Download Minecraft Forge 1.12.2 and install it +2. Download the latest version of GroovyScript [here](https://www.curseforge.com/minecraft/mc-mods/groovyscript/files) + and drop it into the mods folder +3. Also install [MixinBooter](https://www.curseforge.com/minecraft/mc-mods/mixin-booter/files) since GroovyScript + depends on it +4. Launch minecraft without adding any files +5. GroovyScript will create several files + - groovy.log (refer to [Groovy Log](#groovy-log)) + - groovy/runConfig.json (refer to [Groovy Log](#run-config)) + - groovy/postInit/main.groovy (default script file) + +## Groovy log + +Everything groovy related has its own log, and it generates its own file. If you run into issues with your script you +should look here first. +The files directory is always `[Minecraft instance path]/groovy.log` + +## Run config + +This file defines how each script file should be executed. It can also store some general info about the mod pack. The +file will be generated if it doesn't exist. +If you don't understand what this is or how it works you can skip this. All you need to know is that you put your +scripts with recipes in `groovy/postInit`. +Scripts with stuff like Item Creation go in `groovy/preInit`.
+Let's see what the file can look like. + +````json +{ + "packName": "", + "packId": "", + "version": "1.0.0", + "debug": false, + "classes": [ + "classes/" + ], + "loaders": { + "preInit": [ + "preInit/" + ], + "postInit": [ + "postInit2/" + ] + } +} +```` + +Let's go through it bit by bit:
+ +- `packName` is the name of the pack (See [pack name and id](#pack-name-and-id)). Important + for [content](groovyscript/content/content.md).
+- `packId` (0.4.0+) is the id of the pack (See [pack name and id](#pack-name-and-id)). Important + for [content](groovyscript/content/content.md).
+- `version` is the version of the pack. It currently doesn't do anything special.
+- `debug`: If this is false all messages that logged to debug will not be logged. Great for debugging.
+- `classes`: (0.3.0+) Files that contain a single class should be specified here. It makes sure classes are loaded when + scripts try to access them.
+- `loaders`: This defines at what stage what files should be loaded. By default, there are two stages: `preInit` + and `postInit`.
+- `preInit` will run at an early stage. Do not register recipes here. Use it to register game objects like items and + blocks.
+- `postInit` will run right before JEI loads. Use it to register recipes for example. When GroovyScript gets reloaded + only this loader will run.
+ Inside the square brackets of the loader we define the files or path that will be run. You can NOT run a file in + multiple loaders. + Elements higher in the list will be run first. Files can be put multiple times, but they will only get executed + once.
+ For example: + +````json +[ + "postInit/ore_dict.groovy", + "postInit/" +] +```` + +Here first `ore_dict.groovy` will be executed and then all files of `postInit/`, but since `ore_dict.groovy` was already +executed, it will not run now.
+Another example: + +````json +[ + "postInit/", + "postInit/late_stuff.groovy" +] +```` + +First everything in `postInit/` will be executed, but since `late_stuff.groovy` is specifically put later it will not be +executed. After that only `late_stuff.groovy` will be executed. + +### Pack name and id + +The pack name can be anything. It's the name that will show up in JEI in tooltips on items you created.
+The pack id is very important. It must only consist of lower case letters and `_`. + +!!! warning + Changing the pack id will result in created items being lost in existing worlds! + +## Important infos + +1. Groovy scripts must end in `.groovy` +2. Groovy scripts must be defined somehow in the [run config](#run-config) to be executed +3. The scripts and folders can have any name +4. All scripts and the [run config](#run-config) must be located in `[Minecraft instance path]/groovy/` \ No newline at end of file diff --git a/docs/zh/index.md b/docs/zh/index.md index 5bca3db..cae4c22 100644 --- a/docs/zh/index.md +++ b/docs/zh/index.md @@ -1,31 +1,30 @@ -# Welcome to GroovyScript +# 欢迎来到GroovyScript -A comprehensive scripting sandbox for Minecraft 1.12.2.
+这是一个在 1.12.2 版本上的脚本模组。
[加入 Discord 社区(英语)](https://discord.com/invite/m53yxTjjKM).
-Are you not seeing what other see on this wiki? Try reloading it. +你没有看到其他人在这个维基百科看到的东西吗?尝试重新加载它。 -#### Features: +#### 功能: -1. Groovy: a powerful and tested scripting language - - Java-compatible syntax + interoperable code - - Static compilation - - Optional dynamic typing - - Metaprogramming -2. Sandboxed: scripts are effectively ran in a sandbox, with sensitive operations blacklisted from being called or referenced -3. Reloading: able to test script changes within the game without restarting - - Most if not all Forge Registry objects can be reloaded on the fly - - Most mod registries are supported natively -4. Events: Easily listen to Forge's EventBuses with Groovy Closures -5. Familiarity: Bracket handlers for those that are familiar with CraftTweaker (currently implemented, may be removed in the near future) -6. Informational: commands to display rich information for the item in your hand and more -7. Optimized: Making sure no compromises are being made while delivering features with efficient code -8. API: Great catalogue of code for other mod authors to make their mods compatible with GroovyScript such as package/class/method/field blacklists - -### Where to go? -Check [this](getting_started.md) out to get started.
-Check out the Groovy tab for infos about the Groovy language.
-Check out the GroovyScript for the GroovyScript documentation.
+1. Groovy:一种功能强大且经过测试的脚本语言 + - Java 兼容语法 + 可互操作代码; + - 静态编译; + - 可选动态类型; + - 元编程。 +2. 沙盒化:脚本在沙盒中有效运行,敏感操作被列入黑名单,不被调用或引用。 +3. 热重载:能够在不重新启动的情况下测试游戏中的脚本更改: + - 大多数(如果不是全部)Forge 注册表对象都可以热重载; + - 大多数模组注册表都本地支持。 +4. 事件:使用 Groovy 的闭包轻松的监听 Forge 的事件总线。 +5. 熟悉性:适用于熟悉 CraftTweaker 的人的括号处理程序(目前已实现,可能会在不久的将来删除)。 +6. 信息性:通过命令显示玩家手中物品的丰富信息等。 +7. 优化:确保在使用高效代码实现功能时不会做出任何妥协。 +8. API:为其他模组作者提供出色的代码 API 库,使其模组与 GroovyScript 兼容,例如包/类/方法/字段黑名单。 +### 在哪? +查看 [this](getting_started.md) 就可以开始了。
+请查看Groovy标签,了解有关Groovy语言的信息。
+请查看GroovyScript文档。
!!! Note This wiki is highly WIP. There is still a lot of info missing. We would appreciate any help to improve this place. diff --git a/mkdocs.yml b/mkdocs.yml index 1a4bb05..a0bfd33 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -321,7 +321,7 @@ plugins: nav_translations: de: Introduction: Einführung - Getting Started: Erste Schritte + Getting Started: Erste Schritte zh: Introduction: 简介 Getting Started: 第一个步骤 From 23d671e7d92abbcc2f83b98cc91da5b9bb8ba45a Mon Sep 17 00:00:00 2001 From: Lonelyxia <3438505487@qq.com> Date: Sat, 18 Mar 2023 14:14:15 +0800 Subject: [PATCH 08/11] note --- docs/zh/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/zh/index.md b/docs/zh/index.md index cae4c22..aada268 100644 --- a/docs/zh/index.md +++ b/docs/zh/index.md @@ -26,6 +26,6 @@ 请查看Groovy标签,了解有关Groovy语言的信息。
请查看GroovyScript文档。
-!!! Note - This wiki is highly WIP. There is still a lot of info missing. We would appreciate any help to improve this place. - Get started by joining our [Discord](https://discord.com/invite/m53yxTjjKM) \ No newline at end of file +!!! 笔记 + 这个维基是WIP阶段。仍然有很多信息缺失。我们将感谢任何帮助来改善这个地方。 + 通过加入我们的 [Discord](https://discord.com/invite/m53yxTjjKM) \ No newline at end of file From 3fbc05660e404c3b0b76abd282b2cc258fb2c363 Mon Sep 17 00:00:00 2001 From: Oganesson897 <101081378+Darknight123MC@users.noreply.github.com> Date: Sat, 18 Mar 2023 08:51:58 +0000 Subject: [PATCH 09/11] add main body files --- .../assets/images/slice_n_splice_recipe.png | Bin 0 -> 5331 bytes docs/zh/groovy/builder.md | 62 ++ docs/zh/groovy/closure.md | 52 + docs/zh/groovy/introduction.md | 113 +++ docs/zh/groovy/lists.md | 52 + docs/zh/groovy/loops.md | 74 ++ docs/zh/groovy/maps.md | 39 + docs/zh/groovy/strings.md | 15 + docs/zh/groovyscript/content/block.md | 49 + docs/zh/groovyscript/content/content.md | 34 + docs/zh/groovyscript/content/creative_tab.md | 17 + docs/zh/groovyscript/content/item.md | 48 + docs/zh/groovyscript/minecraft/crafting.md | 70 ++ .../minecraft/crafting_builders.md | 134 +++ docs/zh/groovyscript/minecraft/events.md | 15 + .../minecraft/events/aa_events.md | 66 ++ .../minecraft/events/advancement_event.md | 16 + .../minecraft/events/animal_tame_event.md | 20 + .../minecraft/events/anvil_repair_event.md | 44 + .../minecraft/events/anvil_update_event.md | 44 + .../minecraft/events/arrow_loose_event.md | 32 + .../minecraft/events/arrow_nock_event.md | 36 + .../events/attach_capabilities_event.md | 24 + .../minecraft/events/attack_entity_event.md | 16 + .../events/baby_entity_spawn_event.md | 28 + .../events/biome_event._biome_color.md | 24 + .../events/biome_event._create_decorator.md | 24 + .../events/biome_event._get_foliage_color.md | 12 + .../events/biome_event._get_grass_color.md | 12 + .../biome_event._get_village_block_i_d.md | 28 + .../events/biome_event._get_water_color.md | 12 + .../minecraft/events/biome_event.md | 12 + .../events/block_event._break_event.md | 24 + .../block_event._create_fluid_source_event.md | 16 + .../events/block_event._crop_grow_event.md | 44 + .../block_event._entity_multi_place_event.md | 16 + .../events/block_event._entity_place_event.md | 28 + .../block_event._farmland_trample_event.md | 20 + .../block_event._fluid_place_block_event.md | 28 + .../block_event._harvest_drops_event.md | 36 + .../events/block_event._multi_place_event.md | 16 + .../block_event._neighbor_notify_event.md | 20 + .../events/block_event._place_event.md | 24 + .../events/block_event._portal_spawn_event.md | 16 + .../minecraft/events/block_event.md | 20 + .../minecraft/events/bonemeal_event.md | 36 + .../events/chunk_data_event._load.md | 12 + .../events/chunk_data_event._save.md | 12 + .../minecraft/events/chunk_data_event.md | 16 + .../minecraft/events/chunk_event._load.md | 12 + .../minecraft/events/chunk_event._unload.md | 12 + .../minecraft/events/chunk_event.md | 16 + ...chunk_generator_event._init_noise_field.md | 48 + ...k_generator_event._replace_biome_blocks.md | 32 + .../minecraft/events/chunk_generator_event.md | 16 + .../events/chunk_watch_event._un_watch.md | 12 + .../events/chunk_watch_event._watch.md | 12 + .../minecraft/events/chunk_watch_event.md | 20 + .../minecraft/events/command_event.md | 32 + .../minecraft/events/critical_hit_event.md | 36 + .../events/decorate_biome_event._decorate.md | 24 + .../minecraft/events/decorate_biome_event.md | 48 + .../events/difficulty_change_event.md | 16 + .../events/enchantment_level_set_event.md | 40 + .../minecraft/events/ender_teleport_event.md | 44 + .../events/entity_event._can_update.md | 20 + .../events/entity_event._entering_chunk.md | 44 + .../entity_event._entity_constructing.md | 12 + .../minecraft/events/entity_event.md | 12 + .../events/entity_item_pickup_event.md | 20 + .../events/entity_join_world_event.md | 16 + .../events/entity_mob_griefing_event.md | 16 + .../minecraft/events/entity_mount_event.md | 32 + .../entity_struck_by_lightning_event.md | 16 + .../entity_travel_to_dimension_event.md | 16 + .../events/explosion_event._detonate.md | 20 + .../events/explosion_event._start.md | 12 + .../minecraft/events/explosion_event.md | 16 + .../minecraft/events/fill_bucket_event.md | 36 + .../events/furnace_fuel_burn_time_event.md | 20 + .../events/game_rule_change_event.md | 20 + .../events/get_collision_boxes_event.md | 24 + .../minecraft/events/init_map_gen_event.md | 24 + .../minecraft/events/init_noise_gens_event.md | 24 + .../minecraft/events/item_event.md | 16 + .../minecraft/events/item_expire_event.md | 20 + .../minecraft/events/item_fished_event.md | 28 + .../minecraft/events/item_tooltip_event.md | 28 + .../minecraft/events/item_toss_event.md | 16 + .../minecraft/events/living_attack_event.md | 20 + .../minecraft/events/living_damage_event.md | 24 + .../minecraft/events/living_death_event.md | 16 + .../events/living_destroy_block_event.md | 20 + .../minecraft/events/living_drops_event.md | 28 + .../living_entity_use_item_event._finish.md | 20 + .../living_entity_use_item_event._start.md | 12 + .../living_entity_use_item_event._stop.md | 12 + .../living_entity_use_item_event._tick.md | 12 + .../events/living_entity_use_item_event.md | 24 + .../events/living_equipment_change_event.md | 24 + .../events/living_event._living_jump_event.md | 12 + .../living_event._living_update_event.md | 12 + .../minecraft/events/living_event.md | 16 + .../events/living_experience_drop_event.md | 28 + .../minecraft/events/living_fall_event.md | 28 + .../minecraft/events/living_heal_event.md | 20 + .../minecraft/events/living_hurt_event.md | 24 + .../events/living_knock_back_event.md | 60 ++ .../events/living_pack_size_event.md | 24 + .../events/living_set_attack_target_event.md | 16 + .../living_spawn_event._allow_despawn.md | 16 + .../events/living_spawn_event._check_spawn.md | 24 + .../living_spawn_event._special_spawn.md | 16 + .../minecraft/events/living_spawn_event.md | 28 + .../minecraft/events/loot_table_load_event.md | 24 + .../minecraft/events/looting_level_event.md | 24 + .../events/merchant_trade_offers_event.md | 24 + .../events/minecart_collision_event.md | 16 + .../minecraft/events/minecart_event.md | 16 + .../events/minecart_interact_event.md | 24 + .../minecraft/events/minecart_update_event.md | 16 + .../events/note_block_event._change.md | 20 + .../events/note_block_event._play.md | 20 + .../minecraft/events/note_block_event.md | 28 + .../events/ore_gen_event._generate_minable.md | 24 + .../minecraft/events/ore_gen_event.md | 44 + .../events/play_sound_at_entity_event.md | 52 + .../events/player_brewed_potion_event.md | 16 + .../events/player_container_event._close.md | 12 + .../events/player_container_event._open.md | 12 + .../events/player_container_event.md | 16 + .../events/player_destroy_item_event.md | 20 + .../minecraft/events/player_drops_event.md | 16 + .../events/player_event._break_speed.md | 32 + .../minecraft/events/player_event._clone.md | 20 + .../events/player_event._harvest_check.md | 24 + .../events/player_event._load_from_file.md | 24 + .../events/player_event._name_format.md | 24 + .../events/player_event._save_to_file.md | 24 + .../events/player_event._start_tracking.md | 16 + .../events/player_event._stop_tracking.md | 16 + .../events/player_event._visibility.md | 20 + .../minecraft/events/player_event.md | 16 + .../events/player_flyable_fall_event.md | 28 + .../player_interact_event._entity_interact.md | 16 + ...nteract_event._entity_interact_specific.md | 20 + ...player_interact_event._left_click_block.md | 36 + ...player_interact_event._left_click_empty.md | 12 + ...layer_interact_event._right_click_block.md | 36 + ...layer_interact_event._right_click_empty.md | 12 + ...player_interact_event._right_click_item.md | 12 + .../minecraft/events/player_interact_event.md | 44 + .../events/player_pickup_xp_event.md | 16 + .../events/player_set_spawn_event.md | 20 + .../events/player_sleep_in_bed_event.md | 24 + .../minecraft/events/player_wake_up_event.md | 24 + .../events/populate_chunk_event._populate.md | 20 + .../minecraft/events/populate_chunk_event.md | 56 ++ .../minecraft/events/potion_brew_event.md | 44 + .../events/potion_color_calculation_event.md | 32 + .../potion_event._potion_added_event.md | 20 + .../potion_event._potion_applicable_event.md | 20 + .../potion_event._potion_expiry_event.md | 12 + .../potion_event._potion_remove_event.md | 20 + .../minecraft/events/potion_event.md | 16 + .../events/projectile_impact_event._arrow.md | 16 + .../projectile_impact_event._fireball.md | 16 + .../projectile_impact_event._throwable.md | 16 + .../events/projectile_impact_event.md | 16 + .../registry_event._missing_mappings.md | 32 + .../events/registry_event._new_registry.md | 8 + .../events/registry_event._register.md | 20 + .../minecraft/events/registry_event.md | 12 + .../events/sapling_grow_tree_event.md | 24 + .../minecraft/events/server_chat_event.md | 28 + .../events/sleeping_location_check_event.md | 20 + .../events/sleeping_time_check_event.md | 20 + .../events/throwable_impact_event.md | 20 + .../minecraft/events/use_hoe_event.md | 28 + .../minecraft/events/village_siege_event.md | 28 + .../world_event._create_spawn_position.md | 16 + .../minecraft/events/world_event._load.md | 12 + .../events/world_event._potential_spawns.md | 24 + .../minecraft/events/world_event._save.md | 12 + .../minecraft/events/world_event._unload.md | 12 + .../minecraft/events/world_event.md | 12 + .../events/world_type_event._biome_size.md | 24 + .../world_type_event._init_biome_gens.md | 28 + .../minecraft/events/world_type_event.md | 12 + .../events/zombie_event._summon_aid_event.md | 48 + .../minecraft/events/zombie_event.md | 16 + docs/zh/groovyscript/minecraft/furnace.md | 26 + docs/zh/groovyscript/minecraft/item.md | 61 ++ .../groovyscript/minecraft/ore_dictionary.md | 53 + docs/zh/groovyscript/minecraft/tooltip.md | 23 + .../mods/bloodmagic/alchemy_array.md | 104 ++ .../mods/bloodmagic/alchemy_table.md | 105 ++ .../mods/bloodmagic/blood_altar.md | 105 ++ .../zh/groovyscript/mods/bloodmagic/meteor.md | 93 ++ .../mods/bloodmagic/sacrificial.md | 66 ++ .../mods/bloodmagic/tartaric_forge.md | 96 ++ .../mods/bloodmagic/tranquility.md | 91 ++ .../mods/enderio/alloy_smelter.md | 66 ++ .../mods/enderio/combustion_gen.md | 40 + .../zh/groovyscript/mods/enderio/enchanter.md | 68 ++ docs/zh/groovyscript/mods/enderio/sag_mill.md | 73 ++ .../mods/enderio/slice_n_splice.md | 63 ++ .../groovyscript/mods/enderio/soul_binder.md | 64 ++ docs/zh/groovyscript/mods/enderio/tank.md | 31 + docs/zh/groovyscript/mods/enderio/vat.md | 74 ++ .../groovyscript/mods/gtceu/heating_coils.md | 1 + docs/zh/groovyscript/mods/gtceu/material.md | 929 ++++++++++++++++++ docs/zh/groovyscript/mods/gtceu/multiblock.md | 100 ++ docs/zh/groovyscript/mods/gtceu/recipes.md | 68 ++ docs/zh/groovyscript/mods/gtceu/terminal.md | 2 + docs/zh/groovyscript/mods/jei.md | 35 + docs/zh/groovyscript/mods/mekanism/crusher.md | 16 + .../mods/thaumcraft/ArcaneWorkbench.md | 182 ++++ .../groovyscript/mods/thaumcraft/Aspects.md | 138 +++ .../groovyscript/mods/thaumcraft/Crucible.md | 64 ++ .../mods/thaumcraft/DustTrigger.md | 58 ++ .../groovyscript/mods/thaumcraft/Infusion.md | 85 ++ .../groovyscript/mods/thaumcraft/Lootbag.md | 55 ++ .../groovyscript/mods/thaumcraft/Research.md | 180 ++++ .../mods/thaumcraft/SmeltingBonus.md | 61 ++ docs/zh/groovyscript/mods/thaumcraft/Warp.md | 23 + .../groovyscript/mods/thermal/pulverizer.md | 57 ++ docs/zh/groovyscript/rl.md | 71 ++ docs/zh/stylesheets/extra.css | 3 + 229 files changed, 8202 insertions(+) create mode 100644 docs/zh/assets/images/slice_n_splice_recipe.png create mode 100644 docs/zh/groovy/builder.md create mode 100644 docs/zh/groovy/closure.md create mode 100644 docs/zh/groovy/introduction.md create mode 100644 docs/zh/groovy/lists.md create mode 100644 docs/zh/groovy/loops.md create mode 100644 docs/zh/groovy/maps.md create mode 100644 docs/zh/groovy/strings.md create mode 100644 docs/zh/groovyscript/content/block.md create mode 100644 docs/zh/groovyscript/content/content.md create mode 100644 docs/zh/groovyscript/content/creative_tab.md create mode 100644 docs/zh/groovyscript/content/item.md create mode 100644 docs/zh/groovyscript/minecraft/crafting.md create mode 100644 docs/zh/groovyscript/minecraft/crafting_builders.md create mode 100644 docs/zh/groovyscript/minecraft/events.md create mode 100644 docs/zh/groovyscript/minecraft/events/aa_events.md create mode 100644 docs/zh/groovyscript/minecraft/events/advancement_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/animal_tame_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/anvil_repair_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/anvil_update_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/arrow_loose_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/arrow_nock_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/attach_capabilities_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/attack_entity_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/baby_entity_spawn_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/biome_event._biome_color.md create mode 100644 docs/zh/groovyscript/minecraft/events/biome_event._create_decorator.md create mode 100644 docs/zh/groovyscript/minecraft/events/biome_event._get_foliage_color.md create mode 100644 docs/zh/groovyscript/minecraft/events/biome_event._get_grass_color.md create mode 100644 docs/zh/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md create mode 100644 docs/zh/groovyscript/minecraft/events/biome_event._get_water_color.md create mode 100644 docs/zh/groovyscript/minecraft/events/biome_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._break_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._create_fluid_source_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._crop_grow_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._entity_multi_place_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._entity_place_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._farmland_trample_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._fluid_place_block_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._harvest_drops_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._multi_place_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._neighbor_notify_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._place_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event._portal_spawn_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/block_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/bonemeal_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_data_event._load.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_data_event._save.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_data_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_event._load.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_event._unload.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_generator_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_watch_event._un_watch.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_watch_event._watch.md create mode 100644 docs/zh/groovyscript/minecraft/events/chunk_watch_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/command_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/critical_hit_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/decorate_biome_event._decorate.md create mode 100644 docs/zh/groovyscript/minecraft/events/decorate_biome_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/difficulty_change_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/enchantment_level_set_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/ender_teleport_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_event._can_update.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_event._entering_chunk.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_event._entity_constructing.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_item_pickup_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_join_world_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_mob_griefing_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_mount_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_struck_by_lightning_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/entity_travel_to_dimension_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/explosion_event._detonate.md create mode 100644 docs/zh/groovyscript/minecraft/events/explosion_event._start.md create mode 100644 docs/zh/groovyscript/minecraft/events/explosion_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/fill_bucket_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/game_rule_change_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/get_collision_boxes_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/init_map_gen_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/init_noise_gens_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/item_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/item_expire_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/item_fished_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/item_tooltip_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/item_toss_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_attack_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_damage_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_death_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_destroy_block_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_drops_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._finish.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._start.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._stop.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._tick.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_entity_use_item_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_equipment_change_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_event._living_jump_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_event._living_update_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_experience_drop_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_fall_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_heal_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_hurt_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_knock_back_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_pack_size_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_set_attack_target_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_spawn_event._check_spawn.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_spawn_event._special_spawn.md create mode 100644 docs/zh/groovyscript/minecraft/events/living_spawn_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/loot_table_load_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/looting_level_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/merchant_trade_offers_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/minecart_collision_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/minecart_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/minecart_interact_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/minecart_update_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/note_block_event._change.md create mode 100644 docs/zh/groovyscript/minecraft/events/note_block_event._play.md create mode 100644 docs/zh/groovyscript/minecraft/events/note_block_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/ore_gen_event._generate_minable.md create mode 100644 docs/zh/groovyscript/minecraft/events/ore_gen_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/play_sound_at_entity_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_brewed_potion_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_container_event._close.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_container_event._open.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_container_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_destroy_item_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_drops_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._break_speed.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._clone.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._harvest_check.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._load_from_file.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._name_format.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._save_to_file.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._start_tracking.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._stop_tracking.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event._visibility.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_flyable_fall_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_block.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_empty.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_block.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_empty.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_item.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_interact_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_pickup_xp_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_set_spawn_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_sleep_in_bed_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/player_wake_up_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/populate_chunk_event._populate.md create mode 100644 docs/zh/groovyscript/minecraft/events/populate_chunk_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/potion_brew_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/potion_color_calculation_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/potion_event._potion_added_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/potion_event._potion_applicable_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/potion_event._potion_expiry_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/potion_event._potion_remove_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/potion_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/projectile_impact_event._arrow.md create mode 100644 docs/zh/groovyscript/minecraft/events/projectile_impact_event._fireball.md create mode 100644 docs/zh/groovyscript/minecraft/events/projectile_impact_event._throwable.md create mode 100644 docs/zh/groovyscript/minecraft/events/projectile_impact_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/registry_event._missing_mappings.md create mode 100644 docs/zh/groovyscript/minecraft/events/registry_event._new_registry.md create mode 100644 docs/zh/groovyscript/minecraft/events/registry_event._register.md create mode 100644 docs/zh/groovyscript/minecraft/events/registry_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/sapling_grow_tree_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/server_chat_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/sleeping_location_check_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/sleeping_time_check_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/throwable_impact_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/use_hoe_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/village_siege_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_event._create_spawn_position.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_event._load.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_event._potential_spawns.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_event._save.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_event._unload.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_type_event._biome_size.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_type_event._init_biome_gens.md create mode 100644 docs/zh/groovyscript/minecraft/events/world_type_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/zombie_event._summon_aid_event.md create mode 100644 docs/zh/groovyscript/minecraft/events/zombie_event.md create mode 100644 docs/zh/groovyscript/minecraft/furnace.md create mode 100644 docs/zh/groovyscript/minecraft/item.md create mode 100644 docs/zh/groovyscript/minecraft/ore_dictionary.md create mode 100644 docs/zh/groovyscript/minecraft/tooltip.md create mode 100644 docs/zh/groovyscript/mods/bloodmagic/alchemy_array.md create mode 100644 docs/zh/groovyscript/mods/bloodmagic/alchemy_table.md create mode 100644 docs/zh/groovyscript/mods/bloodmagic/blood_altar.md create mode 100644 docs/zh/groovyscript/mods/bloodmagic/meteor.md create mode 100644 docs/zh/groovyscript/mods/bloodmagic/sacrificial.md create mode 100644 docs/zh/groovyscript/mods/bloodmagic/tartaric_forge.md create mode 100644 docs/zh/groovyscript/mods/bloodmagic/tranquility.md create mode 100644 docs/zh/groovyscript/mods/enderio/alloy_smelter.md create mode 100644 docs/zh/groovyscript/mods/enderio/combustion_gen.md create mode 100644 docs/zh/groovyscript/mods/enderio/enchanter.md create mode 100644 docs/zh/groovyscript/mods/enderio/sag_mill.md create mode 100644 docs/zh/groovyscript/mods/enderio/slice_n_splice.md create mode 100644 docs/zh/groovyscript/mods/enderio/soul_binder.md create mode 100644 docs/zh/groovyscript/mods/enderio/tank.md create mode 100644 docs/zh/groovyscript/mods/enderio/vat.md create mode 100644 docs/zh/groovyscript/mods/gtceu/heating_coils.md create mode 100644 docs/zh/groovyscript/mods/gtceu/material.md create mode 100644 docs/zh/groovyscript/mods/gtceu/multiblock.md create mode 100644 docs/zh/groovyscript/mods/gtceu/recipes.md create mode 100644 docs/zh/groovyscript/mods/gtceu/terminal.md create mode 100644 docs/zh/groovyscript/mods/jei.md create mode 100644 docs/zh/groovyscript/mods/mekanism/crusher.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/ArcaneWorkbench.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/Aspects.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/Crucible.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/DustTrigger.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/Infusion.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/Lootbag.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/Research.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/SmeltingBonus.md create mode 100644 docs/zh/groovyscript/mods/thaumcraft/Warp.md create mode 100644 docs/zh/groovyscript/mods/thermal/pulverizer.md create mode 100644 docs/zh/groovyscript/rl.md create mode 100644 docs/zh/stylesheets/extra.css diff --git a/docs/zh/assets/images/slice_n_splice_recipe.png b/docs/zh/assets/images/slice_n_splice_recipe.png new file mode 100644 index 0000000000000000000000000000000000000000..6ebf4d7822758169b99ecea6d3d87b85dfe31d5f GIT binary patch literal 5331 zcmb_gc|4T++kQH2(m`la2w9?0vJ(w;vW}23&!8cZB^vu4Lus)TLX$1YR^}N)$jIIy zM3$7vFrvtkHG8(1-=lL*o%j8`??3P7{bQDAo|*65-}}C<>%P8s)HxG1yC006iQ z4RkO7uq6(DKf$pBevXe66op^5_+a$^01DcLzrq*WoKG8{27sct-RpMS;p<(V239@* zz+J!j*wW;Y=Kz0r$XD0W_l&orov(|ByBOBR%@I(PS5(xHSJ#kN6_Y=qA+Mw%udFf{ zJ_Z1LH4Sx6V*@WtedM_-JRH6C70HR&0D*QT-|m>RR}s?t;|!H`+A@ zoy*;i%tkAFAq31z(Gq;QW_#7|oximwUW`wl41I~tMwTKHb4r^xT%z4xb{V_9ym-T9 zxAP=pi?nJPaUdw8JgB?oL`SeviDp<$#+%^zzN-Nt!Izer*O&n#f)WxE#@m5w5iV&> zHN>@?-+(UA);0qhFW2)MaBqLxR^ZcA6{95v!WCXPh5#NH_)qs80r%P|%mYARb`Stm zZ7%|?v3`>b1u_8msc31*kudskB3!iAlK{|vSp)z)lzD(_YN16nH>GM!>!l-pHwsVN7_Fiul71VguO-HJJ)qO2?lu9SCBYHMwg zfR&J_XcC&7tsl1o@ANY;d&+)y!f>O6?405|twJShmSU&By-WzlraP91mRU)bOUk>6Mbit>3%jn#$eA}QjEc)OIr7{=k zPoVRGett%oUF!qZQsBh$+wN{@5{5~0OGF;9mwk+iqyj+7}7#dhkw-O6;7e|06sl*WIOr3 z#u|D-DQu{z1CFDiw!#2Oe5`65xLcS@$E~@BNmP zalb_y5)=|jM3dQli+R{rxKmGg@mm1J(|>`(H!>=@&Mph`Oy&pb?Qr0&dL8hyOtFN1 z>{)L9zpmuXK=rd&L~N2s7{MEmQT+unI!Gtofi4>89!15%JT_&A% z#4h0qxH66<3~McY|Eh#J;`bFVmjLg@8;<_Jr36<5KFvZ}q%zR#wR>nXzqARAgWl3B zxf-K$liX?}-YW%N(Ps$TpYQwyG#HRB_Ob)~!2F01zIx%E5sc$7RtWk0RA0F{GPj?# z%0|;$VxC&NWFZBL5N}0Z{Toc*8*#dpAfic))>|7^i$x!^D%OE;%rXxc`O`z@O*pFt zbFWD1wIwmyZ-7Ji4>A%E5{3luIS6`%T#`)^vMV1P%=Z`H#3_RlxVP)CtV(Pzfsn$7 zA>sLss)@S{{$An)I_j<3rCg{1XKSxDf;o?n$n+;-`A9v&n5RmJl?T-@AfkUH96 z7=9{L-Ehx8Yr}iLc>dQe{@+9c!BX4h-uv7TniJZ;A5MQ}<{@%RA@^T$@Hq6lari$h zL?iI!3V$4M>#wpx=Hd#hk03fId3~cQ8X8E%Iqm-~H2g6OJn`z75Jt+U`=x#k`srm# z!tIEe`w$q$Mq#89m*nH?#hoZ?`&!=s>VpYFY!*neie`RZ^U`U-@h{P z!8QS+bE&OkAqQTZNC)L|6HHb=y`LPTzJsN9VRliCr4I$pJW|m|=DG)c*2f%KY!w|i zL<*Bk0IP;X4bu~-3Np;EA!u5&cz*sPi}*MgCF6I0mJ&Z~PkAvmL{>8Mo&RE`))>_n zGOL+`8DEY?Nr4ob3HNwp1_Nm$IgI8rmGb(`A!|$k9}MXdZfQvTgbXf?(PC3H)OgVS zB;RPEsg^Y9QSrfG5XmN;^qOt23Sz@uVELo;Et;pDIrPnn^RvL@ik^ z5S=b_bmQ#}Y^>O9W!QgsKZVYu02kLew_g1J>Gi;R=sG zpki|GP^Zhi#$~=jX{JWQqIjvOr-R~T^=@13d86W_SvZ^Ng|D^w?J0y`GD=yH>KUk< zx&klpg~$U((kIkyKx(}bH+c_QEb3tQ*kBs;MGGWnW7pEQ4Txscc-woh_GM zZt#*IOTv<1VHGP-L|=$rns1h%t=@_AfVre3U1mfdUqNZ+V#a4!T2P_2UmBLRnK051 z{igWN%Xces>f>6Y(>=dr*0LWpdyPsAB}&9vNg=rT4Q(zb8;t*vZQc@Cbus0#tT5;Z zD}C#wVH~kYoVj14V&s z@>Kk(a>pC+%TR+WCFN^Z$FVp%EsDri;p{32jUNBCuv!@e1&)*B zNB>10#FzIONOBE~)sw&~bLF6ug;@uW+fx>LSCm>MXcg`~r^$oml>E(|sqfrubyU?N zkarKBWYq6w94XGcEoh_KtN2lB?I z*5bZ1Tmu6wp$}j2J>}+sk1S?+@wuZcrspuPU2YV$&!{j?o2^SuI1v2J7S8NAk6Z%M z=B6&J0eQb~YAT+L!;{iAi6Vl63DElZx2m~FoTVE{bbx`BgS;=vsJX8$RI3@0Cbg!c zj}B~hd*IxGAO6LJk024S+H4r!kQ8A3%<;`Wa`e>oog(*;>Hd0hHHAWDA!E)MsXLk0 zhT>#N1z0kG$8&#M1UDT5D5o2_J6fy_ddBpqwL#{7D6~BevgRVGHQ!7-Yp=gZ-1$Dg z9c~!_R^)G!CuaUnuW$(XIJ?+vmzCq0EOSJ-pzH$8(>s}t`y4q`$yWSfUw)WC*V?nMWLhyoY)5ZhdcMNtlx04`}+;I`T(nhiADY<2> zft94o87LGAv!X8^)PxHN@hzD`tiCVNU(oYNt2lo2{QCWxPUXnkS4S>pRNq+1S9_v3 zG{3B!SN244hQz=N#mJRDTSnNJ9&ejRzL|x52*a$#`YhXQdX+B1pV7wvb%8=|@RBrFg;z4o zPUx1Ku>V=r*vFX+|4X9wX}V|pCXUyohKT@A;P!=#$!fq&us*476uXA9vpvxhN85)nQG~6}`N)P>s^2ah+kO zq+j1}y!d@A(oMPIz_EvHSI>!Zm>2KFXm#H_ee*vKS^B@i892_NcAW_Mb9eR1-d5Gt zv`@|pZ-{%%dKfKw7EXS22W5oTQHH-}Og-Vohiq-a&@&|j@a(ckt^;>kP*2iAorMPLF# zv*1Ny``|RY?{vxeW{se^94sr|AT@9lHB)I;n?KQWUBqJPLO~hrR#kOCAxpUCMTA61 zV&7%Rc{$8-U_dp(NN(e%`@Rxi6(bwP8PsZr^BeikBw`=GsWmV5$(AWppxBGHR+Rrv z-UsPVtyS34SFfyS6)K7xx0mfYPy|Nx$TUYmXO}sia6936+vT#<8ngB6FCl}Sd-UI{ z@&z-$#40lbTaibDn-e^D@DY=Vx0ZLDvsI2ucy_#3)tgf=B8uE9`KhXrSA|QnH9gzF z)mx~lmUq&4S|CRLiDH}hs>bgXlPsWX)6oPRpGiV%CoQvR*x9}@2{{q3!n7_jWBhBq z_WR?^k+LoRC8VmF3 ze)p-2LshV3(W1od%-gl~kHdFvI5~)HY@pbP$qr?SlHL~iW&9T%ut2#8+-#1U{t9{( ze&EI}~T*xq}< zsRIY!Us8^Q_O)qeHhERfbIT0P{szUS=I?B(93ClBN*oCy4F?wWa{4v8Qd&w% zxPlK?Xg#m6WhA$>BkL}=^t;kj7mBIdfQ0NIY$U81`|YY6BT!NDcPl0{QeW=|);@`0yrrtF zC}2T5=W{E@!j`4?ZB!|qK98K66{r1?&Wi^h5=)rd%$!Uz%l;G^@*m-C1V883_jk*; z-B{TPXe-B|6^_+~jP0crUgM?zu>pw;1!{-muQ4#GUX>fG_K>*~bNl9D8vHSDmX1H4-kpOKOdz0Gb7s^xee=C0@to`W+MfZ{+XX8V%R*k YGp_XyIDBT|nImARYob%|$Hnmf07RGeaR2}S literal 0 HcmV?d00001 diff --git a/docs/zh/groovy/builder.md b/docs/zh/groovy/builder.md new file mode 100644 index 0000000..ea71aa8 --- /dev/null +++ b/docs/zh/groovy/builder.md @@ -0,0 +1,62 @@ +# Builder + +A builder is a class that contains methods to build an object. Those methods can be chained together and often end in a `.build()` call. +Each method, except the `build()` method, should return the same builder instance. +The Recipe Builders in GroovyScript and with a `.register()` call, because the recipe is registered rather than just build and `.buildAndRegister()` is too long. + +## Builder class example +Let's see what a simple Builder class can look like: + +```groovy +class RecipeBuilder { + private final List inputs = new ArrayList() + private final List outputs = new ArrayList() // (1) + + RecipeBuilder input(IIngredient ingredient) { + this.inputs.add(ingredient) + return this // the method returns this builder (2) + } + + RecipeBuilder output(ItemStack itemStack) { + this.outputs.add(itemStack) + return this // the method returns this builder (3) + } + + Recipe build() { // the build method usually returns the object that will be build + return new Recipe(inputs, outputs) + } +} +``` + +1. We need to store our inputs and outputs somewhere +2. Usually the return keyword is not needed in groovy, but in this case it helps to understand the concept. +3. Usually the return keyword is not needed in groovy, but in this case it helps to understand the concept. + +## Usage example +Now let's create a new recipe using the builder +````groovy +def recipe = new RecipeBuilder() // first create a recipe builder instance + .input('') // add a input + .input('' * 3) // add another input + .output('') // add a output + .build() // build and return a recipe instance +```` + +Notice how each method call is chained together. This is because `input()` and `output()` return the same builder instance.
+Since the `build()` method returns a `Recipe` instance, the `recipe` variable will also be of type `Recipe`.
+The same code as above can also be put in a single line: +````groovy +def recipe = new RecipeBuilder().input('').input('' * 3).output('').build() +```` +This does exactly the same thing, but as you can see it is uglier and harder to read. The line breaks are purely aesthetically, but are highly recommended. + +Now lets see what the recipe could look like without a builder: +````groovy +def recipe = new Recipe(['', '' * 3], ['']) +```` +That doesn't look too bad right? Now imagine the recipe requires 5 inputs. Or 10. Or 20. And you need to specify energy requirement, duration and maybe fluids.
+This is where Builders shine. + +## Conclusion +Builders help to produce clean code while creating complex objects. +Understanding the concept will help you in GroovyScript, since they are used commonly for recipes. \ No newline at end of file diff --git a/docs/zh/groovy/closure.md b/docs/zh/groovy/closure.md new file mode 100644 index 0000000..87f6a68 --- /dev/null +++ b/docs/zh/groovy/closure.md @@ -0,0 +1,52 @@ +# Closures + +Closures are like lambdas in java, but slightly different. + +# For beginners + +You may know what a method is. A method is a set order of instructions you can call. For example: + +````groovy +def print_numbers(int n) { + for (def i : 0..n) { + log.info(i) + } +} +```` + +This method prints numbers from 0 to a given number to the log. + +````groovy +print_numbers(5) +```` + +This will now output + +```` +0 +1 +2 +3 +4 +```` + +You can call that method as often as you want with any number input. + +Now closures are methods, but you can carry them around. Example: + +````groovy +def print_numbers = { int n -> /*(1)*/ + for (def i : 0..n) { + log.info(i) + } +} +```` + +1. Most of the time the type is optional, so here it would become `{ n -> ...` + +This closure does the same thing as the method above, but it's a variable instead of a method. Just like any other +variable you can pass it to other methods. (See [Events](../groovyscript/minecraft/events/aa_events.md)). +You can invoke this closure the same way you do with a method: +````groovy +print_numbers(3) +```` \ No newline at end of file diff --git a/docs/zh/groovy/introduction.md b/docs/zh/groovy/introduction.md new file mode 100644 index 0000000..a833d9a --- /dev/null +++ b/docs/zh/groovy/introduction.md @@ -0,0 +1,113 @@ +# Groovy +Groovy is a powerful scripting language based on java. + +In this tab you can find some information about the scripting language itself. +For GroovyScript specific stuff refer to the GroovyScript tab. + +The syntax is very similar to java, but with some conveniences from other scripting languages. +The most noticeable is that you don't need `;` at the end of a line. + +## Comments +Comments can be made inside scripts that will be ignored by the compiler like this: +````groovy +// single line comment + +/* +Multi line comment + */ +```` + +## Variables +Variables can hold data with a specific type. They can be created with the keyword `def` or by using the desired type directly. +After that comes the name. It usually starts with a lower case letter. +At the end is the value. If you used `def` then the value will define the type. +```groovy +def num = 10 // dynamically typed +int num2 = 100 // strongly typed +``` + +## Datatypes +There are differnt kinds of datatypes: primitive and complex. + +### Primitive types +Primitive types can never be null. They always have a value. A whole number is by default a `int`
+Decimals like `1.5` have by default the type `BigDecimal`. Which is most likely not what you want. +I highly recommend to use the `d` or `f` suffix for `double` or `float`.
+`int`: any whole number from -2^31 to 2^31 - 1
+`long`: any whole number from -2^63 to 2^63 - 1
+`byte`: any whole number from -2^7 to 2^7 - 1 (-256 - 255)
+`short`: any whole number from -2^15 to 2^15 - 1 (-32768 - 32767)
+`float` a decimal number stored in 32 bits
+`double` a decimal number stored in 64 bits
+`boolean` true or false (nothing else) + +````groovy +def num1 = 10 // int +def num2 = 10l // long +def num3 = 10 as byte // byte +def num4 = 10 as short // byte +def num5 = 1.0f // float +def num6 = 1.0d // double +def bool = true // boolean +```` + +### Complex types +Complex types are all types that are not primitive. Every object falls under this category. +Primitive types also have boxed complex types. +As said before `def num = 1.5` will create a `BigDecimal` which is complex.
+`def num = 10G` will create a `BigInteger` which has almost no value limit, but it can take a lot of memory, so try to not use to often. + +## Functions +A function is a set of instructions that can be called with a single line. + +### Defining Functions +```groovy +// function which takes a single parameter and returns nothing +def f(x) { + println(x) +} + +// function which takes two parameters and returns their sum +def sum(x, y) { + return x + y +} + +// specifying types is optional +// if used, it will error if passed invalid types +def sum2(int x, int y) { + return x + y +} +``` + +### Calling functions +We'll take the functions from above. +````groovy +f(10) // calls the function with the parameter 10 +f(sum(4, 16)) // calls f with the result of sum +```` + +## Imports +If you want to use any classes short name you need to import the full class name. +Most of javas classes are imported by default. +```groovy +import my.package.MyClass // import a single class +import my.other.package.* // import all classes from a package + +import static my.package.MyClass.FIELD // static field import +import static my.package.MyClass.function // static function import +import static my.other.package.MyOtherClass.* // import all static functions from the class + +import my.package.MyClass as MC // import aliasing +import static my.package.MyClass.function as f // static import aliasing +``` + +## Further Reading + +If there's something more advanced you'd like to learn, take a look at the [Official Groovy Documentation](https://groovy-lang.org/documentation.html). + +Some useful Groovy Documentation pages: + +* [Syntax](https://groovy-lang.org/syntax.html) +* [Operators](https://groovy-lang.org/operators.html) +* [Closures](https://groovy-lang.org/closures.html) +* [Semantics](https://groovy-lang.org/semantics.html) diff --git a/docs/zh/groovy/lists.md b/docs/zh/groovy/lists.md new file mode 100644 index 0000000..a250699 --- /dev/null +++ b/docs/zh/groovy/lists.md @@ -0,0 +1,52 @@ +# Lists +Lists are data types that can hold multiple values of a certain type. + +Lists are dynamically sized. So that means if we create a list of 0 length, we can still add elements to it. +There are multiple ways to create lists. The elements of a list are ordered, so the order wont change randomly. +````groovy +// most simple list, size = 0 +// the type is always ArrayList +def simpleList = [] +def list = new ArrayList() // this is the same as above + +def anotherList = ['He', 'llo', ' w', 'or', 'ld!'] // we can put values into the list, all of the same type +```` + +## Getting values +Elements of a list can bee accessed via `get` or the `[]` operator. +Lists index start at 0. +````groovy +def list = [9, 8, 7, 6, 5, 4, 3, 2, 1] +println(list[0]) // 9 +println(list.get(0)) // 9 +println(list[3]) // prints the 4th element: 6 +println(list[-1]) // prints the last element: 1 +println(list[-2]) // prints the 2nd last element: 2 +```` + +You can also get a range of elements by using the `..` operator. +````groovy +def list = [9, 8, 7, 6, 5, 4, 3, 2, 1] +def subList = list[2..5] // [7, 6, 5, 4] +// reversing the indexes results in a reversed list +def subLis2 = list[5..2] // [4, 5, 6, 7] +// -1 is greater because it refers to the last elements, so its not reversed +def subList3 = list[2..-1] // [7, 6, 5, 4, 3, 2, 1] +```` + +## Modifying lists +Lists can modified by using `set()`, `add()` and `remove()`. +We can also use the `[]` operators +````groovy +def list = [] +list.add(1) // adds 1 to the lest +// list is now [1] +list.add(3) +list.add(9) +// [1, 3, 9] +list.set(1, 5) // sets the element at index 1 to 5 +list[1] = 5 // same thing as above +// [1, 5, 9] +list.remove(0) // removes the first element +// [5, 9] +```` \ No newline at end of file diff --git a/docs/zh/groovy/loops.md b/docs/zh/groovy/loops.md new file mode 100644 index 0000000..581473c --- /dev/null +++ b/docs/zh/groovy/loops.md @@ -0,0 +1,74 @@ +# Loops +Loops are useful if you want to do the operation multiple times or if you want to do a operation for each element in a list. + +## While loop +A simple while loop looks like this: +````groovy +while (condition) { + operation +} +```` +The condition is a boolean. As long as that condition evaluates to true, the operation will be executed. +### Example: +This will print `0, 1, 2, 3, 4, 5, 6, 7, 8, 9`. +````groovy +int i = 0; +while (i < 10) { + print("${i++}, ") +} +```` + +There is also a `do while` loop which ignores the condition on its first run. +````groovy +do { + operation +} while (condition) +```` + +## For loop +For loops are similar to while loops. +````groovy +for(init; condition; incrementor) { + operation +} +```` +`init` is called before the loop. `condition` is checked before each run and `incrementor` is called after each run. + +### Example +This will print `0, 1, 2, 3, 4, 5, 6, 7, 8, 9`. +````groovy +for(int i = 0; i < 10; i++) { + print("${i++}, ") +} +```` + +## Enhanced for loop +Those are very useful for lists and maps. +This will print `Hello world!` +````groovy +def list = ['He', 'llo', ' w', 'or', 'ld!'] +for(part in list) { + print(part) +} +```` +`part` creates a new variable on each run for the current element in the list `lists`. + +For maps it looks like this +````groovy +def elements = [ + 'Au': 'Gold', + 'Ag': 'Silver', + 'Pb': 'Lead', + 'H' : 'Hydrogen' +] +// prints al elements +for (entry in elements) { + println("${entry.key}: ${entry.value}") +} +```` + +## Control flow in loops +`break` can be used at any time inside a loop to abort the current and all following runs. +`continue` will only abort the current run and *continues* with the next run (if the condition is still true) + + diff --git a/docs/zh/groovy/maps.md b/docs/zh/groovy/maps.md new file mode 100644 index 0000000..9190488 --- /dev/null +++ b/docs/zh/groovy/maps.md @@ -0,0 +1,39 @@ +# Maps +Maps are similar to lists, but they assign each value to a key. +Meaning instead of accessing the value by the index, you can get it by using the key. +Each key can only have one value, but multiple values can have the same key. + +There different types of maps. Javas default map is `HashMap`. +It doesn't keep the elements order causing the elements to be seemingly random. + +Groovy uses `Object2ObjectLinkedOpenHashMap` by default. It is slightly more memory efficient and keeps the element order. + +The key and value can be of different types. If the key is a string you can leave out the `'` or `"`. + +````groovy +def simpleMap = [:] // a empty ordered hash map +def hashMap = new HashMap() // a empty unordered hash map + +// this maps the short form of some periodic elements to their real name +def elements = [ + Au: 'Gold', + Ag: 'Silver', + Pb: 'Lead', + H: 'Hydrogen' +] +```` + +## Getting values +We are using the map we created above here. +````groovy +println(elements['Pb']) // Lead +println(elements['Ag']) // Silver +println(elements['B']) // null since there is no key 'B' +```` + +## Modifying maps +We are using the map we created above here. +````groovy +elements['Au'] = 'Copper' // Au is know mapped to copper +elements.remove('H') // removes H: Hydrogen +```` diff --git a/docs/zh/groovy/strings.md b/docs/zh/groovy/strings.md new file mode 100644 index 0000000..b0e8eed --- /dev/null +++ b/docs/zh/groovy/strings.md @@ -0,0 +1,15 @@ +# Strings +Strings are a sequence of characters. +There are multiple ways to define a string and each does something different. +The most simple way is by using `''`. In java these are used for chars. Here they create strings and don't do anything special. +A more advanced way is by using `""`. They allow you to use variables inside the literal. +The last way is by using `\\`. This is perfect for regex, because you don't need to escape any `\`. +````groovy +def s = 'hello' // String +def s2 = "hello" // can use either '' or "" +assert s == s2 // both strings are equal + +def num = 7 +def numberOfDays = 'There are ' + num + ' days in a week' // using a variable inside the string with concatenation +def numberOfDays2 = "There are $num days in a week" // using a variable inside the string with $ +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/content/block.md b/docs/zh/groovyscript/content/block.md new file mode 100644 index 0000000..5fa7817 --- /dev/null +++ b/docs/zh/groovyscript/content/block.md @@ -0,0 +1,49 @@ +# Creating blocks + +## The simplest way + +````groovy +content.createBlock(String name).register() +```` + +Simple right? +Let's break it up: + +- `content` is a global variable. +- `createBlock(String name)` creates a block and an item version and returns it. The name is the registry name and must only consist of lower + case letters and `_`. +- `register()` registers the block and the item. Without this the block will not appear in game. + +## Registering a block +The example above creates a simple block for you, but you can also create blocks yourself (to create custom behaviour). +Use the following methods to register custom blocks. +````groovy +content.registerBlock(String name, Block block) +content.registerBlock(String name, Block block, ItemBlock block) +```` + +## Texture + +Minecraft's blocks need a texture (or multiple), a model file which describes how the textures are rendered and a block state file which points each block state to a model file. If groovy +can't find a model file or a block state file it will generate default files +at `.minecraft/groovy/assets/[pack id]/models/block/[block name].json` and `.minecraft/groovy/assets/[pack id]/blockstates/[item name].json`. +It will point to a texture you will need to place +at `.minecraft/groovy/assets/[pack id]/textures/blocks/[block name].png`. + +## Translating the items name + +By default, the items name will show up as `tile.[pack id].[block name].name`. To change that you need add an entry to +the lang file. GroovyScript generates a default lang file at `.minecraft/groovy/assets/[pack id]/lang/en_us.lang`. + +### Example +First create a block +````groovy +content.createBlock('dust_block') +```` +Let's assume that the pack id is `nomifactory` so that the item and block id will be `nomifactory:dust_block`. +Insert this line into the lang file. +````mclang +tile.nomifactory.dust_block.name=Heart of the universe +```` +(`tile.nomifactory.dust_block.name` is the default generated translation key. You can change to anything you want.)
+Finally, put a texture at `.minecraft/groovy/assets/nomifactory/textures/items/dust_block.png` diff --git a/docs/zh/groovyscript/content/content.md b/docs/zh/groovyscript/content/content.md new file mode 100644 index 0000000..ee03a11 --- /dev/null +++ b/docs/zh/groovyscript/content/content.md @@ -0,0 +1,34 @@ +# Content + +This part of GroovyScript allows the creation of game content like items and blocks. It's equivalent to ContentTweaker +for CraftTweaker, but for GroovyScript it doesn't require another mod. + +!!! Note + Requires version 0.4.0+.
+ Before you start adding content make sure to specify the pack name and id in + your [runConfig](../../getting_started.md#run-config).
+ Also make sure to read [pack name and id](../../getting_started.md#pack-name-and-id) + +Currently, GroovyScript adds helpers to create + +- [items](item.md) +- blocks +- creative tabs + +Coming in the future: + +- fluids +- Mekanism gases + +## Creative tabs +You can set a default creative tab which registered items and blocks will use if not specified otherwise +````groovy +content.setDefaultCreativeTab(CreativeTabs tab) +```` + +### Example +With [that](creative_tab.md) we can do this +````groovy +def creativeTab = content.createCreativeTab("nomifactory.creative_tab", item("nomifactory:heart_of_the_universe")) +content.setDefaultCreativeTab(creativeTab) +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/content/creative_tab.md b/docs/zh/groovyscript/content/creative_tab.md new file mode 100644 index 0000000..30a6260 --- /dev/null +++ b/docs/zh/groovyscript/content/creative_tab.md @@ -0,0 +1,17 @@ +# Creating creative tabs + +````groovy +content.createCreativeTab(String name, ItemStack icon) // returns the creative tab +```` + +## Example +````groovy +def creativeTab = content.createCreativeTab("nomifactory.creative_tab", item("nomifactory:heart_of_the_universe")) +```` + +## Other +You can get a creative tab by using +````groovy +creativeTab(String tabName) +```` +A list of existing creative tab names can be obtained by running the `/gs creativeTabs` command. \ No newline at end of file diff --git a/docs/zh/groovyscript/content/item.md b/docs/zh/groovyscript/content/item.md new file mode 100644 index 0000000..aaf65aa --- /dev/null +++ b/docs/zh/groovyscript/content/item.md @@ -0,0 +1,48 @@ +# Creating items + +## The simplest way + +````groovy +content.createItem(String name).register() +```` + +Simple right? +Let's break it up: + +- `content` is a global variable. +- `createItem(String name)` creates an item and returns it. The name is the registry name and must only consist of lower + case letters and `_`. +- `register()` registers the item. Without this the item will not appear in game. + +## Registering an item +The example above creates a simple item for you, but you can also create items yourself (to create custom behaviour). +Use the following methods to register custom items. +````groovy +content.registerItem(String name, Item item) +```` + +## Texture + +Minecraft's items need a texture (or multiple) and a model file which describes how the textures are rendered. If groovy +can't find a model file it will generate a default file +at `.minecraft/groovy/assets/[pack id]/models/item/[item name].json`. +It will point to a texture you will need to place +at `.minecraft/groovy/assets/[pack id]/textures/items/[item name].png`. + +## Translating the items name + +By default, the items name will show up as `item.[pack id].[item name].name`. To change that you need add an entry to +the lang file. GroovyScript generates a default lang file at `.minecraft/groovy/assets/[pack id]/lang/en_us.lang`. + +### Example +First create an item +````groovy +content.createItem('heart_of_the_universe') +```` +Let's assume that the pack id is `nomifactory` so that the item id will be `nomifactory:heart_of_the_universe`. +Insert this line into the lang file. +````mclang +item.nomifactory.heart_of_the_universe.name=Heart of the universe +```` +(`item.nomifactory.heart_of_the_universe.name` is the default generated translation key. You can change to anything you want.)
+Finally, put a texture at `.minecraft/groovy/assets/nomifactory/textures/items/heart_of_the_universe.png` diff --git a/docs/zh/groovyscript/minecraft/crafting.md b/docs/zh/groovyscript/minecraft/crafting.md new file mode 100644 index 0000000..0fa3d16 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/crafting.md @@ -0,0 +1,70 @@ +# Crafting Table + +## Adding Shaped Recipes + +```groovy +// Regular Addition +crafting.addShaped(ItemStack output, List> input) // (1) +crafting.addShaped(String name, ItemStack output, List> input) // (2) + +// Replacement Addition +crafting.replaceShaped(ItemStack output, List> input) // (3) +crafting.replaceShaped(String name, ItemStack output, List> input) // (2) +``` + +1. If not provided, a recipe name will be autogenerated for you. +2. The `List>` in the signature may seem complicated at first. See the Shaped Recipe Examples for a better representation. +3. The `replace` methods will remove all recipes outputting the output, and adds the new recipe - replacing the old one(s). + +### Example +```groovy +crafting.addShaped('balanced_clay', item('minecraft:clay_ball') * 3, [ + [item('minecraft:nether_star'), null, item('minecraft:nether_star')], + [null, ore('ingotIron'), null], // (1) + [item('minecraft:nether_star'), null, item('minecraft:nether_star')] +]) + +crafting.addShaped('balanced_clay_2x2', item('minecraft:clay_ball') * 2, [ + [item('minecraft:nether_star'), null], + [null, ore('ingotIron')], // (2) +]) +``` + +1. Use `null` to specify an empty slot. +2. You can shrink the sizes of the lists for smaller recipes - this one is 2x2. Just make sure it's not jagged (different lengths for each row/col). + +## Adding Shapeless Recipes +Unlike other recipe types, Shapeless Crafting also does not use a recipe builder. + +```groovy +// Regular Addition +crafting.addShapeless(ItemStack output, List input) // (1) +crafting.addShapeless(String name, ItemStack output, List input) + +// Replacement Addition +crafting.replaceShapeless(ItemStack output, List input) // (2) +crafting.replaceShapeless(String name, ItemStack output, List input) +``` + +1. If not provided, a recipe name will be autogenerated for you. +2. The `replace` methods will remove all recipes outputting the output, and adds the new recipe - replacing the old one(s). + +### Example +```groovy +crafting.addShapeless('unbalanced_clay', item('minecraft:clay_ball') * 32, [item('minecraft:dirt'), item('minecraft:dirt'), item('minecraft:leather')]) +``` + +## Removing Recipes +{-- +You can also use JEI/HEI in Creative Mode to remove recipes with ease. +Find the recipe you want to remove, and click the `[X]` button to copy code to remove the recipe to your clipboard. +Then just paste the code into your desired script and you're good to go! +--} +(Planned feature) + +You can view recipe names in JEI/HEI by hovering over the output with `F3+h` mode enabled. + +```groovy +crafting.remove(String name) // removes the recipe with the same name +crafting.removeByOutput(IIngredient output) // removes all recipes with the output +``` diff --git a/docs/zh/groovyscript/minecraft/crafting_builders.md b/docs/zh/groovyscript/minecraft/crafting_builders.md new file mode 100644 index 0000000..673482b --- /dev/null +++ b/docs/zh/groovyscript/minecraft/crafting_builders.md @@ -0,0 +1,134 @@ +# Crafting Recipes with RecipeBuilders + +## Adding Recipes with Builders + +Crafting also has a RecipeBuilder. +If you don't know what a builder is, check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out! + +You start the builder chain with either `shapedBuilder()` or `shapelessBuilder()`. This determines the kind of recipe you want to add. +```groovy +crafting.shapedBuilder() +crafting.shapelessBuilder() +``` + +Then you call additional methods onto the builder (.name(), .replace(), etc), to build up the end result. See the examples below for a complete picture. + + +Set the recipe name (optional): +```groovy +name(String name) // (1) +``` + +1. If not provided, a recipe name will be autogenerated for you. + +Set the recipe output (required): +```groovy +output(ItemStack item) +``` + +Set the recipe function (optional): +```groovy +recipeFunction(Closure recipeFunction) // (1) +``` + +1. See the [Recipe Function and Action page](./crafting.md) for more details. + +Set the recipe action (optional): +```groovy +recipeFunction(Closure recipeAction) // (1) +``` + +1. See the [Recipe Function and Action page](TODO) for more details. + +Set the recipe to replace others (optional): +```groovy +replace() // (1) +``` + +1. See the [Crafting page](https://groovyscript-docs.readthedocs.io/en/latest/groovyscript/minecraft/crafting/) for details about these. + +Set the recipe to replace others by name (optional): +```groovy +replaceByName() // (1) +``` + +1. See the [Crafting page](https://groovyscript-docs.readthedocs.io/en/latest/groovyscript/minecraft/crafting/) for details about these. +It functions the same as the one above, except that it matches the provided recipe name. + +Set the recipe to allow the grid to be mirrored (optional, shaped only): +```groovy +mirrored() +mirrored(boolean mirrored) // (1) +``` + +1. Choose whether the recipe is mirrored or not, default false + +Creating the recipe's layout (required, shaped only): +```groovy +matrix(String... matrix) +shape(String... matrix) // does the same thing as matrix() + +// to input a matrix in the style of non-builder shaped addition +matrix(List> matrix) +shape(List> matrix) +``` + +Matching ingredients to the recipe layout (required, shaped only): +```groovy +key(String c, IIngredient ingredient) // (1) +``` + +1. Please see the examples below to better understand how this works + +Adding inputs to the recipe (required, shapeless only): +```groovy +input(IIngredient ingredient) +input(IIngredient... ingredients) +input(Collection ingredients) +``` + +Registering the recipe (required): +```groovy +register() +``` + +### Examples +Reading the above makes this seem quite complicated. We promise it's not! + +```groovy +// Shaped Recipes +crafting.shapedBuilder() // create a new shaped recipe + .name('balanced_clay') // name the recipe 'balanced_clay' + .output(item('minecraft:clay') * 32) // output 32 clay + .matrix('NIN', // create the layout for the recipe + 'DSD', // each character represents a slot + 'NIN') + .key('N', item('minecraft:nether_star')) // everywhere there is an 'N' in the layout, use a nether star + .key('I', ore('ingotIron')) // all 'I' characters are iron ingots + .key('D', item('minecraft:diamond')) // all 'D' characters are diamonds + .key('S', ore('stone')) // all 'I' characters are stone + .register() // register the recipe + + +crafting.shapedBuilder() + .name('balanced_clay_v2') + .output(item('minecraft:clay') * 64) + .matrix(' B ', // use a space for an empty slot + 'X X') // (1) + .key('B', item('minecraft:glass_bottle')) + .key('X', item('minecraft:gold_nugget')) + .register() +``` + +1. You can omit rows and columns for smaller recipes - this one's 3x2. Just make sure it's not jagged (different lengths for each row/col). + +```groovy +// Shapeless Recipes +crafting.shapelessBuilder() // add a new shapeless recipe + .name('balanced_clay_v3') // name the recipe 'balanced_clay_v3' + .output('minecraft:clay' * 2) // output 2 clay + .input('minecraft:iron_ingot') // add an iron ingot to the inputs + .input('minecraft:iron_ingot') // add a second iron ingot to the inputs + .input('minecraft:gold_nugget', 'minecraft:diamond') // add a gold nugget and a diamond to the inputs + .register() +``` diff --git a/docs/zh/groovyscript/minecraft/events.md b/docs/zh/groovyscript/minecraft/events.md new file mode 100644 index 0000000..163454a --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events.md @@ -0,0 +1,15 @@ +# Events + +By listening to an event you can run a block of code when something special happens, for example when a block breaks or the player takes damage. + +## Example + +`````groovy +eventManager.listen { + Event event -> + // Your code here + print('Hello') +} +````` + +Replace `Event` with the desired event class. diff --git a/docs/zh/groovyscript/minecraft/events/aa_events.md b/docs/zh/groovyscript/minecraft/events/aa_events.md new file mode 100644 index 0000000..8d28aa9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/aa_events.md @@ -0,0 +1,66 @@ +# Events + +GroovyScript allows you to listen to any event which uses the forge event system. +Here are listed all minecraft and forge events there are. + +!!! Note + Events can be reloaded if they are registered in `postInit` + +Let's see an example: + +````groovy +import net.minecraftforge.event.world.BlockEvent.BreakEvent + +event_manager.listen { BreakEvent event -> + log.info('Block broken: {}', event.getState()) +} +```` + +What is happening? + +- `event_manager` is a global variable where event listeners are registered (alternative name `eventManager`) +- `listen` is a method which accepts a [closure](../../../groovy/closure.md) with the event class as the first parameter +- `BreakEvent event` is the event being listened to. The type must be specified and imported here. ( + See [BreakEvent](block_event._break_event.md)) +- Inside the closure you can do what you want. Here the broken block state is printed to the log. + +## Other listen methods + +````groovy +event_manager.listen(EventPriority eventPriority, EventBusType eventBusType, Closure eventListener) +event_manager.listen(EventBusType eventPriority, EventPriority eventBusType, Closure eventListener) +event_manager.listen(EventBusType eventPriority, Closure eventListener) +event_manager.listen(EventPriority eventPriority, Closure eventListener) +```` + +### Explanation + +- `EventPriority` is the priority this listener takes compared to other listeners (from all mods). Valid values are + + * `EventPriority.HIGHEST` (executed first) + * `EventPriority.HIGH` + * `EventPriority.NORMAL` (default) + * `EventPriority.LOW` + * `EventPriority.LOWEST` (executed last) + +- `EventBusType` is the event bus where you want to register your listener. Valid values are + + * `EventBusType.MAIN` (default) + * `EventBusType.FORGE` (currently unused) + * `EventBusType.ORE_GENERATION` + * `EventBusType.TERRAIN_GENERATION` + +- `Closure eventListener` is the method executed when the event is invoked. + +Normally you don't need to chane any of those values.
+ +Let's see an example using `EventPriority`: +````groovy +import net.minecraftforge.event.world.BlockEvent.BreakEvent + +event_manager.listen(EventPriority.HIGHEST) { BreakEvent event -> + log.info('Block broken: {}', event.getState()) +} +```` +Now it is very likely that our listener is executed before all other (not guaranteed). +Note that we don't need to import `EventPriority`. It is auto imported. \ No newline at end of file diff --git a/docs/zh/groovyscript/minecraft/events/advancement_event.md b/docs/zh/groovyscript/minecraft/events/advancement_event.md new file mode 100644 index 0000000..e309436 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/advancement_event.md @@ -0,0 +1,16 @@ +# AdvancementEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.AdvancementEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.advancements.Advancement getAdvancement() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/animal_tame_event.md b/docs/zh/groovyscript/minecraft/events/animal_tame_event.md new file mode 100644 index 0000000..6d1ab91 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/animal_tame_event.md @@ -0,0 +1,20 @@ +# AnimalTameEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.AnimalTameEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getTamer() +``` + +```groovy +net.minecraft.entity.passive.EntityAnimal getAnimal() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/anvil_repair_event.md b/docs/zh/groovyscript/minecraft/events/anvil_repair_event.md new file mode 100644 index 0000000..3e28fd1 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/anvil_repair_event.md @@ -0,0 +1,44 @@ +# AnvilRepairEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.AnvilRepairEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.item.ItemStack getOutput() +``` + +```groovy +net.minecraft.item.ItemStack getRight() +``` + +```groovy +net.minecraft.item.ItemStack getLeft() +``` + +```groovy +net.minecraft.item.ItemStack getItemResult() +``` + +```groovy +void setBreakChance(float arg0) +``` + +```groovy +net.minecraft.item.ItemStack getItemInput() +``` + +```groovy +net.minecraft.item.ItemStack getIngredientInput() +``` + +```groovy +float getBreakChance() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/anvil_update_event.md b/docs/zh/groovyscript/minecraft/events/anvil_update_event.md new file mode 100644 index 0000000..ead1609 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/anvil_update_event.md @@ -0,0 +1,44 @@ +# AnvilUpdateEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.AnvilUpdateEvent +``` + +## Methods +```groovy +java.lang.String getName() +``` + +```groovy +net.minecraft.item.ItemStack getOutput() +``` + +```groovy +net.minecraft.item.ItemStack getRight() +``` + +```groovy +net.minecraft.item.ItemStack getLeft() +``` + +```groovy +void setOutput(net.minecraft.item.ItemStack arg0) +``` + +```groovy +void setCost(int arg0) +``` + +```groovy +void setMaterialCost(int arg0) +``` + +```groovy +int getCost() +``` + +```groovy +int getMaterialCost() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/arrow_loose_event.md b/docs/zh/groovyscript/minecraft/events/arrow_loose_event.md new file mode 100644 index 0000000..ad50907 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/arrow_loose_event.md @@ -0,0 +1,32 @@ +# ArrowLooseEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.ArrowLooseEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +boolean hasAmmo() +``` + +```groovy +int getCharge() +``` + +```groovy +net.minecraft.item.ItemStack getBow() +``` + +```groovy +void setCharge(int arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/arrow_nock_event.md b/docs/zh/groovyscript/minecraft/events/arrow_nock_event.md new file mode 100644 index 0000000..3329335 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/arrow_nock_event.md @@ -0,0 +1,36 @@ +# ArrowNockEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.ArrowNockEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.EnumHand getHand() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +boolean hasAmmo() +``` + +```groovy +void setAction(net.minecraft.util.ActionResult arg0) +``` + +```groovy +net.minecraft.item.ItemStack getBow() +``` + +```groovy +net.minecraft.util.ActionResult getAction() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/attach_capabilities_event.md b/docs/zh/groovyscript/minecraft/events/attach_capabilities_event.md new file mode 100644 index 0000000..2a1e4dc --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/attach_capabilities_event.md @@ -0,0 +1,24 @@ +# AttachCapabilitiesEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.AttachCapabilitiesEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[GenericEvent](generic_event.md) + +## Methods +```groovy +java.lang.Object getObject() +``` + +```groovy +void addCapability(net.minecraft.util.ResourceLocation arg0, net.minecraftforge.common.capabilities.ICapabilityProvider arg1) +``` + +```groovy +java.util.Map getCapabilities() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/attack_entity_event.md b/docs/zh/groovyscript/minecraft/events/attack_entity_event.md new file mode 100644 index 0000000..bf62401 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/attack_entity_event.md @@ -0,0 +1,16 @@ +# AttackEntityEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.AttackEntityEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getTarget() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/baby_entity_spawn_event.md b/docs/zh/groovyscript/minecraft/events/baby_entity_spawn_event.md new file mode 100644 index 0000000..3022552 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/baby_entity_spawn_event.md @@ -0,0 +1,28 @@ +# BabyEntitySpawnEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.BabyEntitySpawnEvent +``` + +## Methods +```groovy +net.minecraft.entity.EntityLiving getParentB() +``` + +```groovy +net.minecraft.entity.EntityLiving getParentA() +``` + +```groovy +net.minecraft.entity.player.EntityPlayer getCausedByPlayer() +``` + +```groovy +void setChild(net.minecraft.entity.EntityAgeable arg0) +``` + +```groovy +net.minecraft.entity.EntityAgeable getChild() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/biome_event._biome_color.md b/docs/zh/groovyscript/minecraft/events/biome_event._biome_color.md new file mode 100644 index 0000000..7d2bf2a --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/biome_event._biome_color.md @@ -0,0 +1,24 @@ +# BiomeEvent.BiomeColor + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.BiomeEvent.BiomeColor +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BiomeEvent](biome_event.md) + +## Methods +```groovy +int getNewColor() +``` + +```groovy +int getOriginalColor() +``` + +```groovy +void setNewColor(int arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/biome_event._create_decorator.md b/docs/zh/groovyscript/minecraft/events/biome_event._create_decorator.md new file mode 100644 index 0000000..a54d73d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/biome_event._create_decorator.md @@ -0,0 +1,24 @@ +# BiomeEvent.CreateDecorator + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.BiomeEvent.CreateDecorator +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BiomeEvent](biome_event.md) + +## Methods +```groovy +net.minecraft.world.biome.BiomeDecorator getNewBiomeDecorator() +``` + +```groovy +net.minecraft.world.biome.BiomeDecorator getOriginalBiomeDecorator() +``` + +```groovy +void setNewBiomeDecorator(net.minecraft.world.biome.BiomeDecorator arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/biome_event._get_foliage_color.md b/docs/zh/groovyscript/minecraft/events/biome_event._get_foliage_color.md new file mode 100644 index 0000000..055e80d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/biome_event._get_foliage_color.md @@ -0,0 +1,12 @@ +# BiomeEvent.GetFoliageColor + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.BiomeEvent.GetFoliageColor +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BiomeColor](biome_color.md), [BiomeEvent](biome_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/biome_event._get_grass_color.md b/docs/zh/groovyscript/minecraft/events/biome_event._get_grass_color.md new file mode 100644 index 0000000..c635118 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/biome_event._get_grass_color.md @@ -0,0 +1,12 @@ +# BiomeEvent.GetGrassColor + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.BiomeEvent.GetGrassColor +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BiomeColor](biome_color.md), [BiomeEvent](biome_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md b/docs/zh/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md new file mode 100644 index 0000000..8d33cf0 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/biome_event._get_village_block_i_d.md @@ -0,0 +1,28 @@ +# BiomeEvent.GetVillageBlockID + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.BiomeEvent.GetVillageBlockID +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BiomeEvent](biome_event.md) + +## Methods +```groovy +net.minecraft.block.state.IBlockState getReplacement() +``` + +```groovy +void setReplacement(net.minecraft.block.state.IBlockState arg0) +``` + +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.block.state.IBlockState getOriginal() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/biome_event._get_water_color.md b/docs/zh/groovyscript/minecraft/events/biome_event._get_water_color.md new file mode 100644 index 0000000..50202e4 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/biome_event._get_water_color.md @@ -0,0 +1,12 @@ +# BiomeEvent.GetWaterColor + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.BiomeEvent.GetWaterColor +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BiomeColor](biome_color.md), [BiomeEvent](biome_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/biome_event.md b/docs/zh/groovyscript/minecraft/events/biome_event.md new file mode 100644 index 0000000..0151afb --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/biome_event.md @@ -0,0 +1,12 @@ +# BiomeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.BiomeEvent +``` + +## Methods +```groovy +net.minecraft.world.biome.Biome getBiome() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._break_event.md b/docs/zh/groovyscript/minecraft/events/block_event._break_event.md new file mode 100644 index 0000000..03ec1b3 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._break_event.md @@ -0,0 +1,24 @@ +# BlockEvent.BreakEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.BreakEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getPlayer() +``` + +```groovy +int getExpToDrop() +``` + +```groovy +void setExpToDrop(int arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._create_fluid_source_event.md b/docs/zh/groovyscript/minecraft/events/block_event._create_fluid_source_event.md new file mode 100644 index 0000000..0d84f1c --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._create_fluid_source_event.md @@ -0,0 +1,16 @@ +# BlockEvent.CreateFluidSourceEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.CreateFluidSourceEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +boolean hasResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._crop_grow_event.md b/docs/zh/groovyscript/minecraft/events/block_event._crop_grow_event.md new file mode 100644 index 0000000..591755f --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._crop_grow_event.md @@ -0,0 +1,44 @@ +# BlockEvent.CropGrowEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.CropGrowEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +# BlockEvent.CropGrowEvent.Pre + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.CropGrowEvent.Pre +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[CropGrowEvent](crop_grow_event.md), [BlockEvent](block_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +# BlockEvent.CropGrowEvent.Post + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.CropGrowEvent.Post +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[CropGrowEvent](crop_grow_event.md), [BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraft.block.state.IBlockState getOriginalState() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._entity_multi_place_event.md b/docs/zh/groovyscript/minecraft/events/block_event._entity_multi_place_event.md new file mode 100644 index 0000000..129ca37 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._entity_multi_place_event.md @@ -0,0 +1,16 @@ +# BlockEvent.EntityMultiPlaceEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.EntityMultiPlaceEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityPlaceEvent](entity_place_event.md), [BlockEvent](block_event.md) + +## Methods +```groovy +java.util.List getReplacedBlockSnapshots() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._entity_place_event.md b/docs/zh/groovyscript/minecraft/events/block_event._entity_place_event.md new file mode 100644 index 0000000..abcdf04 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._entity_place_event.md @@ -0,0 +1,28 @@ +# BlockEvent.EntityPlaceEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.EntityPlaceEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getEntity() +``` + +```groovy +net.minecraftforge.common.util.BlockSnapshot getBlockSnapshot() +``` + +```groovy +net.minecraft.block.state.IBlockState getPlacedBlock() +``` + +```groovy +net.minecraft.block.state.IBlockState getPlacedAgainst() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._farmland_trample_event.md b/docs/zh/groovyscript/minecraft/events/block_event._farmland_trample_event.md new file mode 100644 index 0000000..9fc772b --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._farmland_trample_event.md @@ -0,0 +1,20 @@ +# BlockEvent.FarmlandTrampleEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.FarmlandTrampleEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getEntity() +``` + +```groovy +float getFallDistance() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._fluid_place_block_event.md b/docs/zh/groovyscript/minecraft/events/block_event._fluid_place_block_event.md new file mode 100644 index 0000000..b8c7915 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._fluid_place_block_event.md @@ -0,0 +1,28 @@ +# BlockEvent.FluidPlaceBlockEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.FluidPlaceBlockEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraft.block.state.IBlockState getNewState() +``` + +```groovy +net.minecraft.util.math.BlockPos getLiquidPos() +``` + +```groovy +void setNewState(net.minecraft.block.state.IBlockState arg0) +``` + +```groovy +net.minecraft.block.state.IBlockState getOriginalState() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._harvest_drops_event.md b/docs/zh/groovyscript/minecraft/events/block_event._harvest_drops_event.md new file mode 100644 index 0000000..a5484cc --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._harvest_drops_event.md @@ -0,0 +1,36 @@ +# BlockEvent.HarvestDropsEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.HarvestDropsEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +void setDropChance(float arg0) +``` + +```groovy +java.util.List getDrops() +``` + +```groovy +float getDropChance() +``` + +```groovy +int getFortuneLevel() +``` + +```groovy +boolean isSilkTouching() +``` + +```groovy +net.minecraft.entity.player.EntityPlayer getHarvester() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._multi_place_event.md b/docs/zh/groovyscript/minecraft/events/block_event._multi_place_event.md new file mode 100644 index 0000000..9e3ee25 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._multi_place_event.md @@ -0,0 +1,16 @@ +# BlockEvent.MultiPlaceEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.MultiPlaceEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlaceEvent](place_event.md), [EntityPlaceEvent](entity_place_event.md), [BlockEvent](block_event.md) + +## Methods +```groovy +java.util.List getReplacedBlockSnapshots() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._neighbor_notify_event.md b/docs/zh/groovyscript/minecraft/events/block_event._neighbor_notify_event.md new file mode 100644 index 0000000..66a03e8 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._neighbor_notify_event.md @@ -0,0 +1,20 @@ +# BlockEvent.NeighborNotifyEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.NeighborNotifyEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +boolean getForceRedstoneUpdate() +``` + +```groovy +java.util.EnumSet getNotifiedSides() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._place_event.md b/docs/zh/groovyscript/minecraft/events/block_event._place_event.md new file mode 100644 index 0000000..d3794ae --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._place_event.md @@ -0,0 +1,24 @@ +# BlockEvent.PlaceEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.PlaceEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityPlaceEvent](entity_place_event.md), [BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getPlayer() +``` + +```groovy +net.minecraft.util.EnumHand getHand() +``` + +```groovy +net.minecraft.item.ItemStack getItemInHand() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event._portal_spawn_event.md b/docs/zh/groovyscript/minecraft/events/block_event._portal_spawn_event.md new file mode 100644 index 0000000..09ed910 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event._portal_spawn_event.md @@ -0,0 +1,16 @@ +# BlockEvent.PortalSpawnEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent.PortalSpawnEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraft.block.BlockPortal$Size getPortalSize() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/block_event.md b/docs/zh/groovyscript/minecraft/events/block_event.md new file mode 100644 index 0000000..82db4fe --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/block_event.md @@ -0,0 +1,20 @@ +# BlockEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.BlockEvent +``` + +## Methods +```groovy +net.minecraft.block.state.IBlockState getState() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/bonemeal_event.md b/docs/zh/groovyscript/minecraft/events/bonemeal_event.md new file mode 100644 index 0000000..ad58297 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/bonemeal_event.md @@ -0,0 +1,36 @@ +# BonemealEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.BonemealEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.item.ItemStack getStack() +``` + +```groovy +net.minecraft.block.state.IBlockState getBlock() +``` + +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.util.EnumHand getHand() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/chunk_data_event._load.md b/docs/zh/groovyscript/minecraft/events/chunk_data_event._load.md new file mode 100644 index 0000000..55d8bca --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_data_event._load.md @@ -0,0 +1,12 @@ +# ChunkDataEvent.Load + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkDataEvent.Load +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkDataEvent](chunk_data_event.md), [ChunkEvent](chunk_event.md), [WorldEvent](world_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/chunk_data_event._save.md b/docs/zh/groovyscript/minecraft/events/chunk_data_event._save.md new file mode 100644 index 0000000..74d6eb1 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_data_event._save.md @@ -0,0 +1,12 @@ +# ChunkDataEvent.Save + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkDataEvent.Save +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkDataEvent](chunk_data_event.md), [ChunkEvent](chunk_event.md), [WorldEvent](world_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/chunk_data_event.md b/docs/zh/groovyscript/minecraft/events/chunk_data_event.md new file mode 100644 index 0000000..bf2af60 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_data_event.md @@ -0,0 +1,16 @@ +# ChunkDataEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkDataEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkEvent](chunk_event.md), [WorldEvent](world_event.md) + +## Methods +```groovy +net.minecraft.nbt.NBTTagCompound getData() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/chunk_event._load.md b/docs/zh/groovyscript/minecraft/events/chunk_event._load.md new file mode 100644 index 0000000..4c7db4e --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_event._load.md @@ -0,0 +1,12 @@ +# ChunkEvent.Load + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkEvent.Load +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkEvent](chunk_event.md), [WorldEvent](world_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/chunk_event._unload.md b/docs/zh/groovyscript/minecraft/events/chunk_event._unload.md new file mode 100644 index 0000000..2bb30fa --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_event._unload.md @@ -0,0 +1,12 @@ +# ChunkEvent.Unload + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkEvent.Unload +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkEvent](chunk_event.md), [WorldEvent](world_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/chunk_event.md b/docs/zh/groovyscript/minecraft/events/chunk_event.md new file mode 100644 index 0000000..4ffc967 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_event.md @@ -0,0 +1,16 @@ +# ChunkEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods +```groovy +net.minecraft.world.chunk.Chunk getChunk() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md b/docs/zh/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md new file mode 100644 index 0000000..da84fda --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_generator_event._init_noise_field.md @@ -0,0 +1,48 @@ +# ChunkGeneratorEvent.InitNoiseField + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.ChunkGeneratorEvent.InitNoiseField +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkGeneratorEvent](chunk_generator_event.md) + +## Methods +```groovy +int getPosZ() +``` + +```groovy +[D getNoisefield() +``` + +```groovy +void setNoisefield([D arg0) +``` + +```groovy +int getSizeX() +``` + +```groovy +int getSizeZ() +``` + +```groovy +int getSizeY() +``` + +```groovy +boolean hasResult() +``` + +```groovy +int getPosY() +``` + +```groovy +int getPosX() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md b/docs/zh/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md new file mode 100644 index 0000000..411e771 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_generator_event._replace_biome_blocks.md @@ -0,0 +1,32 @@ +# ChunkGeneratorEvent.ReplaceBiomeBlocks + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.ChunkGeneratorEvent.ReplaceBiomeBlocks +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkGeneratorEvent](chunk_generator_event.md) + +## Methods +```groovy +int getX() +``` + +```groovy +boolean hasResult() +``` + +```groovy +int getZ() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +net.minecraft.world.chunk.ChunkPrimer getPrimer() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/chunk_generator_event.md b/docs/zh/groovyscript/minecraft/events/chunk_generator_event.md new file mode 100644 index 0000000..8124998 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_generator_event.md @@ -0,0 +1,16 @@ +# ChunkGeneratorEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.ChunkGeneratorEvent +``` + +## Methods +```groovy +net.minecraft.world.gen.IChunkGenerator getGenerator() +``` + +```groovy +net.minecraft.world.gen.IChunkGenerator getGen() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/chunk_watch_event._un_watch.md b/docs/zh/groovyscript/minecraft/events/chunk_watch_event._un_watch.md new file mode 100644 index 0000000..716aa72 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_watch_event._un_watch.md @@ -0,0 +1,12 @@ +# ChunkWatchEvent.UnWatch + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkWatchEvent.UnWatch +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkWatchEvent](chunk_watch_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/chunk_watch_event._watch.md b/docs/zh/groovyscript/minecraft/events/chunk_watch_event._watch.md new file mode 100644 index 0000000..74f5dc6 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_watch_event._watch.md @@ -0,0 +1,12 @@ +# ChunkWatchEvent.Watch + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkWatchEvent.Watch +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkWatchEvent](chunk_watch_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/chunk_watch_event.md b/docs/zh/groovyscript/minecraft/events/chunk_watch_event.md new file mode 100644 index 0000000..3eb2776 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/chunk_watch_event.md @@ -0,0 +1,20 @@ +# ChunkWatchEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ChunkWatchEvent +``` + +## Methods +```groovy +net.minecraft.world.chunk.Chunk getChunkInstance() +``` + +```groovy +net.minecraft.entity.player.EntityPlayerMP getPlayer() +``` + +```groovy +net.minecraft.util.math.ChunkPos getChunk() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/command_event.md b/docs/zh/groovyscript/minecraft/events/command_event.md new file mode 100644 index 0000000..58a1706 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/command_event.md @@ -0,0 +1,32 @@ +# CommandEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.CommandEvent +``` + +## Methods +```groovy +java.lang.Throwable getException() +``` + +```groovy +[Ljava.lang.String; getParameters() +``` + +```groovy +net.minecraft.command.ICommand getCommand() +``` + +```groovy +void setParameters([Ljava.lang.String; arg0) +``` + +```groovy +void setException(java.lang.Throwable arg0) +``` + +```groovy +net.minecraft.command.ICommandSender getSender() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/critical_hit_event.md b/docs/zh/groovyscript/minecraft/events/critical_hit_event.md new file mode 100644 index 0000000..c6f33cc --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/critical_hit_event.md @@ -0,0 +1,36 @@ +# CriticalHitEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.CriticalHitEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getTarget() +``` + +```groovy +boolean hasResult() +``` + +```groovy +float getDamageModifier() +``` + +```groovy +void setDamageModifier(float arg0) +``` + +```groovy +float getOldDamageModifier() +``` + +```groovy +boolean isVanillaCritical() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/decorate_biome_event._decorate.md b/docs/zh/groovyscript/minecraft/events/decorate_biome_event._decorate.md new file mode 100644 index 0000000..3140c4a --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/decorate_biome_event._decorate.md @@ -0,0 +1,24 @@ +# DecorateBiomeEvent.Decorate + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.DecorateBiomeEvent.Decorate +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[DecorateBiomeEvent](decorate_biome_event.md) + +## Methods +```groovy +net.minecraftforge.event.terraingen.DecorateBiomeEvent$Decorate$EventType getType() +``` + +```groovy +net.minecraft.util.math.BlockPos getPlacementPos() +``` + +```groovy +boolean hasResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/decorate_biome_event.md b/docs/zh/groovyscript/minecraft/events/decorate_biome_event.md new file mode 100644 index 0000000..7e1456d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/decorate_biome_event.md @@ -0,0 +1,48 @@ +# DecorateBiomeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.DecorateBiomeEvent +``` + +## Methods +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +java.util.Random getRand() +``` + +```groovy +net.minecraft.util.math.ChunkPos getChunkPos() +``` + +# DecorateBiomeEvent.Pre + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.DecorateBiomeEvent.Pre +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[DecorateBiomeEvent](decorate_biome_event.md) + +## Methods +# DecorateBiomeEvent.Post + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.DecorateBiomeEvent.Post +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[DecorateBiomeEvent](decorate_biome_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/difficulty_change_event.md b/docs/zh/groovyscript/minecraft/events/difficulty_change_event.md new file mode 100644 index 0000000..0acf23e --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/difficulty_change_event.md @@ -0,0 +1,16 @@ +# DifficultyChangeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.DifficultyChangeEvent +``` + +## Methods +```groovy +net.minecraft.world.EnumDifficulty getOldDifficulty() +``` + +```groovy +net.minecraft.world.EnumDifficulty getDifficulty() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/enchantment_level_set_event.md b/docs/zh/groovyscript/minecraft/events/enchantment_level_set_event.md new file mode 100644 index 0000000..9668d61 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/enchantment_level_set_event.md @@ -0,0 +1,40 @@ +# EnchantmentLevelSetEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.enchanting.EnchantmentLevelSetEvent +``` + +## Methods +```groovy +int getLevel() +``` + +```groovy +void setLevel(int arg0) +``` + +```groovy +net.minecraft.item.ItemStack getItem() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +int getOriginalLevel() +``` + +```groovy +int getEnchantRow() +``` + +```groovy +int getPower() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/ender_teleport_event.md b/docs/zh/groovyscript/minecraft/events/ender_teleport_event.md new file mode 100644 index 0000000..cf00f59 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/ender_teleport_event.md @@ -0,0 +1,44 @@ +# EnderTeleportEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.EnderTeleportEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +double getTargetX() +``` + +```groovy +double getTargetY() +``` + +```groovy +double getTargetZ() +``` + +```groovy +float getAttackDamage() +``` + +```groovy +void setAttackDamage(float arg0) +``` + +```groovy +void setTargetX(double arg0) +``` + +```groovy +void setTargetZ(double arg0) +``` + +```groovy +void setTargetY(double arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_event._can_update.md b/docs/zh/groovyscript/minecraft/events/entity_event._can_update.md new file mode 100644 index 0000000..e2d7b8c --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_event._can_update.md @@ -0,0 +1,20 @@ +# EntityEvent.CanUpdate + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityEvent.CanUpdate +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +boolean getCanUpdate() +``` + +```groovy +void setCanUpdate(boolean arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_event._entering_chunk.md b/docs/zh/groovyscript/minecraft/events/entity_event._entering_chunk.md new file mode 100644 index 0000000..51ab0bf --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_event._entering_chunk.md @@ -0,0 +1,44 @@ +# EntityEvent.EnteringChunk + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityEvent.EnteringChunk +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +void setNewChunkX(int arg0) +``` + +```groovy +void setNewChunkZ(int arg0) +``` + +```groovy +void setOldChunkX(int arg0) +``` + +```groovy +void setOldChunkZ(int arg0) +``` + +```groovy +int getNewChunkX() +``` + +```groovy +int getOldChunkX() +``` + +```groovy +int getOldChunkZ() +``` + +```groovy +int getNewChunkZ() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_event._entity_constructing.md b/docs/zh/groovyscript/minecraft/events/entity_event._entity_constructing.md new file mode 100644 index 0000000..10f9c20 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_event._entity_constructing.md @@ -0,0 +1,12 @@ +# EntityEvent.EntityConstructing + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityEvent.EntityConstructing +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/entity_event.md b/docs/zh/groovyscript/minecraft/events/entity_event.md new file mode 100644 index 0000000..2a43262 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_event.md @@ -0,0 +1,12 @@ +# EntityEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityEvent +``` + +## Methods +```groovy +net.minecraft.entity.Entity getEntity() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_item_pickup_event.md b/docs/zh/groovyscript/minecraft/events/entity_item_pickup_event.md new file mode 100644 index 0000000..2f4835c --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_item_pickup_event.md @@ -0,0 +1,20 @@ +# EntityItemPickupEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.EntityItemPickupEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.item.EntityItem getItem() +``` + +```groovy +boolean hasResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_join_world_event.md b/docs/zh/groovyscript/minecraft/events/entity_join_world_event.md new file mode 100644 index 0000000..33e36e3 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_join_world_event.md @@ -0,0 +1,16 @@ +# EntityJoinWorldEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityJoinWorldEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.world.World getWorld() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_mob_griefing_event.md b/docs/zh/groovyscript/minecraft/events/entity_mob_griefing_event.md new file mode 100644 index 0000000..74399f4 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_mob_griefing_event.md @@ -0,0 +1,16 @@ +# EntityMobGriefingEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityMobGriefingEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_mount_event.md b/docs/zh/groovyscript/minecraft/events/entity_mount_event.md new file mode 100644 index 0000000..fcb51d9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_mount_event.md @@ -0,0 +1,32 @@ +# EntityMountEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityMountEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.world.World getWorldObj() +``` + +```groovy +net.minecraft.entity.Entity getEntityBeingMounted() +``` + +```groovy +net.minecraft.entity.Entity getEntityMounting() +``` + +```groovy +boolean isMounting() +``` + +```groovy +boolean isDismounting() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_struck_by_lightning_event.md b/docs/zh/groovyscript/minecraft/events/entity_struck_by_lightning_event.md new file mode 100644 index 0000000..6308b30 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_struck_by_lightning_event.md @@ -0,0 +1,16 @@ +# EntityStruckByLightningEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityStruckByLightningEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.effect.EntityLightningBolt getLightning() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/entity_travel_to_dimension_event.md b/docs/zh/groovyscript/minecraft/events/entity_travel_to_dimension_event.md new file mode 100644 index 0000000..3922204 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/entity_travel_to_dimension_event.md @@ -0,0 +1,16 @@ +# EntityTravelToDimensionEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.EntityTravelToDimensionEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +int getDimension() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/explosion_event._detonate.md b/docs/zh/groovyscript/minecraft/events/explosion_event._detonate.md new file mode 100644 index 0000000..6b0e3d9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/explosion_event._detonate.md @@ -0,0 +1,20 @@ +# ExplosionEvent.Detonate + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ExplosionEvent.Detonate +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ExplosionEvent](explosion_event.md) + +## Methods +```groovy +java.util.List getAffectedBlocks() +``` + +```groovy +java.util.List getAffectedEntities() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/explosion_event._start.md b/docs/zh/groovyscript/minecraft/events/explosion_event._start.md new file mode 100644 index 0000000..7de5448 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/explosion_event._start.md @@ -0,0 +1,12 @@ +# ExplosionEvent.Start + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ExplosionEvent.Start +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ExplosionEvent](explosion_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/explosion_event.md b/docs/zh/groovyscript/minecraft/events/explosion_event.md new file mode 100644 index 0000000..071aa22 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/explosion_event.md @@ -0,0 +1,16 @@ +# ExplosionEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.ExplosionEvent +``` + +## Methods +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +net.minecraft.world.Explosion getExplosion() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/fill_bucket_event.md b/docs/zh/groovyscript/minecraft/events/fill_bucket_event.md new file mode 100644 index 0000000..0178a66 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/fill_bucket_event.md @@ -0,0 +1,36 @@ +# FillBucketEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.FillBucketEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.math.RayTraceResult getTarget() +``` + +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +net.minecraft.item.ItemStack getFilledBucket() +``` + +```groovy +void setFilledBucket(net.minecraft.item.ItemStack arg0) +``` + +```groovy +net.minecraft.item.ItemStack getEmptyBucket() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md b/docs/zh/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md new file mode 100644 index 0000000..dcab401 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/furnace_fuel_burn_time_event.md @@ -0,0 +1,20 @@ +# FurnaceFuelBurnTimeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.furnace.FurnaceFuelBurnTimeEvent +``` + +## Methods +```groovy +int getBurnTime() +``` + +```groovy +void setBurnTime(int arg0) +``` + +```groovy +net.minecraft.item.ItemStack getItemStack() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/game_rule_change_event.md b/docs/zh/groovyscript/minecraft/events/game_rule_change_event.md new file mode 100644 index 0000000..5efaa5c --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/game_rule_change_event.md @@ -0,0 +1,20 @@ +# GameRuleChangeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.GameRuleChangeEvent +``` + +## Methods +```groovy +net.minecraft.world.GameRules getRules() +``` + +```groovy +java.lang.String getRuleName() +``` + +```groovy +net.minecraft.server.MinecraftServer getServer() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/get_collision_boxes_event.md b/docs/zh/groovyscript/minecraft/events/get_collision_boxes_event.md new file mode 100644 index 0000000..947d117 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/get_collision_boxes_event.md @@ -0,0 +1,24 @@ +# GetCollisionBoxesEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.GetCollisionBoxesEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getEntity() +``` + +```groovy +java.util.List getCollisionBoxesList() +``` + +```groovy +net.minecraft.util.math.AxisAlignedBB getAabb() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/init_map_gen_event.md b/docs/zh/groovyscript/minecraft/events/init_map_gen_event.md new file mode 100644 index 0000000..307c285 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/init_map_gen_event.md @@ -0,0 +1,24 @@ +# InitMapGenEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.InitMapGenEvent +``` + +## Methods +```groovy +net.minecraftforge.event.terraingen.InitMapGenEvent$EventType getType() +``` + +```groovy +void setNewGen(net.minecraft.world.gen.MapGenBase arg0) +``` + +```groovy +net.minecraft.world.gen.MapGenBase getOriginalGen() +``` + +```groovy +net.minecraft.world.gen.MapGenBase getNewGen() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/init_noise_gens_event.md b/docs/zh/groovyscript/minecraft/events/init_noise_gens_event.md new file mode 100644 index 0000000..5bc7b53 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/init_noise_gens_event.md @@ -0,0 +1,24 @@ +# InitNoiseGensEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.InitNoiseGensEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods +```groovy +net.minecraftforge.event.terraingen.InitNoiseGensEvent$Context getNewValues() +``` + +```groovy +net.minecraftforge.event.terraingen.InitNoiseGensEvent$Context getOriginal() +``` + +```groovy +java.util.Random getRandom() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/item_event.md b/docs/zh/groovyscript/minecraft/events/item_event.md new file mode 100644 index 0000000..9bbe0f2 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/item_event.md @@ -0,0 +1,16 @@ +# ItemEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.item.ItemEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.item.EntityItem getEntityItem() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/item_expire_event.md b/docs/zh/groovyscript/minecraft/events/item_expire_event.md new file mode 100644 index 0000000..6d566ae --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/item_expire_event.md @@ -0,0 +1,20 @@ +# ItemExpireEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.item.ItemExpireEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ItemEvent](item_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +int getExtraLife() +``` + +```groovy +void setExtraLife(int arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/item_fished_event.md b/docs/zh/groovyscript/minecraft/events/item_fished_event.md new file mode 100644 index 0000000..b9495e1 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/item_fished_event.md @@ -0,0 +1,28 @@ +# ItemFishedEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.ItemFishedEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +int getRodDamage() +``` + +```groovy +net.minecraft.util.NonNullList getDrops() +``` + +```groovy +void damageRodBy(int arg0) +``` + +```groovy +net.minecraft.entity.projectile.EntityFishHook getHookEntity() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/item_tooltip_event.md b/docs/zh/groovyscript/minecraft/events/item_tooltip_event.md new file mode 100644 index 0000000..7c61fc5 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/item_tooltip_event.md @@ -0,0 +1,28 @@ +# ItemTooltipEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.ItemTooltipEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.client.util.ITooltipFlag getFlags() +``` + +```groovy +net.minecraft.entity.player.EntityPlayer getEntityPlayer() +``` + +```groovy +java.util.List getToolTip() +``` + +```groovy +net.minecraft.item.ItemStack getItemStack() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/item_toss_event.md b/docs/zh/groovyscript/minecraft/events/item_toss_event.md new file mode 100644 index 0000000..efe8543 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/item_toss_event.md @@ -0,0 +1,16 @@ +# ItemTossEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.item.ItemTossEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ItemEvent](item_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getPlayer() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_attack_event.md b/docs/zh/groovyscript/minecraft/events/living_attack_event.md new file mode 100644 index 0000000..ff21a2c --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_attack_event.md @@ -0,0 +1,20 @@ +# LivingAttackEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingAttackEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.DamageSource getSource() +``` + +```groovy +float getAmount() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_damage_event.md b/docs/zh/groovyscript/minecraft/events/living_damage_event.md new file mode 100644 index 0000000..9c7c7d8 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_damage_event.md @@ -0,0 +1,24 @@ +# LivingDamageEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingDamageEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.DamageSource getSource() +``` + +```groovy +void setAmount(float arg0) +``` + +```groovy +float getAmount() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_death_event.md b/docs/zh/groovyscript/minecraft/events/living_death_event.md new file mode 100644 index 0000000..b6967be --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_death_event.md @@ -0,0 +1,16 @@ +# LivingDeathEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingDeathEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.DamageSource getSource() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_destroy_block_event.md b/docs/zh/groovyscript/minecraft/events/living_destroy_block_event.md new file mode 100644 index 0000000..0293b41 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_destroy_block_event.md @@ -0,0 +1,20 @@ +# LivingDestroyBlockEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingDestroyBlockEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.block.state.IBlockState getState() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_drops_event.md b/docs/zh/groovyscript/minecraft/events/living_drops_event.md new file mode 100644 index 0000000..473c711 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_drops_event.md @@ -0,0 +1,28 @@ +# LivingDropsEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingDropsEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.DamageSource getSource() +``` + +```groovy +java.util.List getDrops() +``` + +```groovy +boolean isRecentlyHit() +``` + +```groovy +int getLootingLevel() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._finish.md b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._finish.md new file mode 100644 index 0000000..9ef51ea --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._finish.md @@ -0,0 +1,20 @@ +# LivingEntityUseItemEvent.Finish + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEntityUseItemEvent.Finish +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEntityUseItemEvent](living_entity_use_item_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.item.ItemStack getResultStack() +``` + +```groovy +void setResultStack(net.minecraft.item.ItemStack arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._start.md b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._start.md new file mode 100644 index 0000000..0f0da8d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._start.md @@ -0,0 +1,12 @@ +# LivingEntityUseItemEvent.Start + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEntityUseItemEvent.Start +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEntityUseItemEvent](living_entity_use_item_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._stop.md b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._stop.md new file mode 100644 index 0000000..6fd1ac4 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._stop.md @@ -0,0 +1,12 @@ +# LivingEntityUseItemEvent.Stop + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEntityUseItemEvent.Stop +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEntityUseItemEvent](living_entity_use_item_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._tick.md b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._tick.md new file mode 100644 index 0000000..2a86354 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event._tick.md @@ -0,0 +1,12 @@ +# LivingEntityUseItemEvent.Tick + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEntityUseItemEvent.Tick +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEntityUseItemEvent](living_entity_use_item_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event.md b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event.md new file mode 100644 index 0000000..4f753d9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_entity_use_item_event.md @@ -0,0 +1,24 @@ +# LivingEntityUseItemEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEntityUseItemEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +int getDuration() +``` + +```groovy +net.minecraft.item.ItemStack getItem() +``` + +```groovy +void setDuration(int arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_equipment_change_event.md b/docs/zh/groovyscript/minecraft/events/living_equipment_change_event.md new file mode 100644 index 0000000..fc49f42 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_equipment_change_event.md @@ -0,0 +1,24 @@ +# LivingEquipmentChangeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEquipmentChangeEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.inventory.EntityEquipmentSlot getSlot() +``` + +```groovy +net.minecraft.item.ItemStack getTo() +``` + +```groovy +net.minecraft.item.ItemStack getFrom() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_event._living_jump_event.md b/docs/zh/groovyscript/minecraft/events/living_event._living_jump_event.md new file mode 100644 index 0000000..050482a --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_event._living_jump_event.md @@ -0,0 +1,12 @@ +# LivingEvent.LivingJumpEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEvent.LivingJumpEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/living_event._living_update_event.md b/docs/zh/groovyscript/minecraft/events/living_event._living_update_event.md new file mode 100644 index 0000000..ad34d59 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_event._living_update_event.md @@ -0,0 +1,12 @@ +# LivingEvent.LivingUpdateEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEvent.LivingUpdateEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/living_event.md b/docs/zh/groovyscript/minecraft/events/living_event.md new file mode 100644 index 0000000..a71ce6d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_event.md @@ -0,0 +1,16 @@ +# LivingEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.EntityLivingBase getEntityLiving() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_experience_drop_event.md b/docs/zh/groovyscript/minecraft/events/living_experience_drop_event.md new file mode 100644 index 0000000..858a7b1 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_experience_drop_event.md @@ -0,0 +1,28 @@ +# LivingExperienceDropEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingExperienceDropEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +int getDroppedExperience() +``` + +```groovy +void setDroppedExperience(int arg0) +``` + +```groovy +int getOriginalExperience() +``` + +```groovy +net.minecraft.entity.player.EntityPlayer getAttackingPlayer() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_fall_event.md b/docs/zh/groovyscript/minecraft/events/living_fall_event.md new file mode 100644 index 0000000..64ae965 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_fall_event.md @@ -0,0 +1,28 @@ +# LivingFallEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingFallEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +float getDamageMultiplier() +``` + +```groovy +void setDamageMultiplier(float arg0) +``` + +```groovy +void setDistance(float arg0) +``` + +```groovy +float getDistance() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_heal_event.md b/docs/zh/groovyscript/minecraft/events/living_heal_event.md new file mode 100644 index 0000000..f7251f1 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_heal_event.md @@ -0,0 +1,20 @@ +# LivingHealEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingHealEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +void setAmount(float arg0) +``` + +```groovy +float getAmount() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_hurt_event.md b/docs/zh/groovyscript/minecraft/events/living_hurt_event.md new file mode 100644 index 0000000..0fc2e05 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_hurt_event.md @@ -0,0 +1,24 @@ +# LivingHurtEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingHurtEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.DamageSource getSource() +``` + +```groovy +void setAmount(float arg0) +``` + +```groovy +float getAmount() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_knock_back_event.md b/docs/zh/groovyscript/minecraft/events/living_knock_back_event.md new file mode 100644 index 0000000..1c5847b --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_knock_back_event.md @@ -0,0 +1,60 @@ +# LivingKnockBackEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingKnockBackEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getOriginalAttacker() +``` + +```groovy +double getOriginalRatioX() +``` + +```groovy +double getOriginalRatioZ() +``` + +```groovy +float getOriginalStrength() +``` + +```groovy +net.minecraft.entity.Entity getAttacker() +``` + +```groovy +float getStrength() +``` + +```groovy +double getRatioX() +``` + +```groovy +double getRatioZ() +``` + +```groovy +void setStrength(float arg0) +``` + +```groovy +void setAttacker(net.minecraft.entity.Entity arg0) +``` + +```groovy +void setRatioZ(double arg0) +``` + +```groovy +void setRatioX(double arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_pack_size_event.md b/docs/zh/groovyscript/minecraft/events/living_pack_size_event.md new file mode 100644 index 0000000..de36fea --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_pack_size_event.md @@ -0,0 +1,24 @@ +# LivingPackSizeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingPackSizeEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +```groovy +int getMaxPackSize() +``` + +```groovy +void setMaxPackSize(int arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_set_attack_target_event.md b/docs/zh/groovyscript/minecraft/events/living_set_attack_target_event.md new file mode 100644 index 0000000..b53746b --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_set_attack_target_event.md @@ -0,0 +1,16 @@ +# LivingSetAttackTargetEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingSetAttackTargetEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.EntityLivingBase getTarget() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md b/docs/zh/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md new file mode 100644 index 0000000..a034830 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_spawn_event._allow_despawn.md @@ -0,0 +1,16 @@ +# LivingSpawnEvent.AllowDespawn + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingSpawnEvent.AllowDespawn +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingSpawnEvent](living_spawn_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_spawn_event._check_spawn.md b/docs/zh/groovyscript/minecraft/events/living_spawn_event._check_spawn.md new file mode 100644 index 0000000..7bb86ab --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_spawn_event._check_spawn.md @@ -0,0 +1,24 @@ +# LivingSpawnEvent.CheckSpawn + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingSpawnEvent.CheckSpawn +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingSpawnEvent](living_spawn_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +```groovy +boolean isSpawner() +``` + +```groovy +net.minecraft.tileentity.MobSpawnerBaseLogic getSpawner() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_spawn_event._special_spawn.md b/docs/zh/groovyscript/minecraft/events/living_spawn_event._special_spawn.md new file mode 100644 index 0000000..812919e --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_spawn_event._special_spawn.md @@ -0,0 +1,16 @@ +# LivingSpawnEvent.SpecialSpawn + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingSpawnEvent.SpecialSpawn +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingSpawnEvent](living_spawn_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.tileentity.MobSpawnerBaseLogic getSpawner() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/living_spawn_event.md b/docs/zh/groovyscript/minecraft/events/living_spawn_event.md new file mode 100644 index 0000000..d11ad0d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/living_spawn_event.md @@ -0,0 +1,28 @@ +# LivingSpawnEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LivingSpawnEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +float getY() +``` + +```groovy +float getX() +``` + +```groovy +float getZ() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/loot_table_load_event.md b/docs/zh/groovyscript/minecraft/events/loot_table_load_event.md new file mode 100644 index 0000000..6e56648 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/loot_table_load_event.md @@ -0,0 +1,24 @@ +# LootTableLoadEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.LootTableLoadEvent +``` + +## Methods +```groovy +net.minecraft.util.ResourceLocation getName() +``` + +```groovy +net.minecraft.world.storage.loot.LootTable getTable() +``` + +```groovy +net.minecraft.world.storage.loot.LootTableManager getLootTableManager() +``` + +```groovy +void setTable(net.minecraft.world.storage.loot.LootTable arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/looting_level_event.md b/docs/zh/groovyscript/minecraft/events/looting_level_event.md new file mode 100644 index 0000000..545e893 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/looting_level_event.md @@ -0,0 +1,24 @@ +# LootingLevelEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.LootingLevelEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.DamageSource getDamageSource() +``` + +```groovy +void setLootingLevel(int arg0) +``` + +```groovy +int getLootingLevel() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/merchant_trade_offers_event.md b/docs/zh/groovyscript/minecraft/events/merchant_trade_offers_event.md new file mode 100644 index 0000000..e8bd465 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/merchant_trade_offers_event.md @@ -0,0 +1,24 @@ +# MerchantTradeOffersEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.village.MerchantTradeOffersEvent +``` + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getPlayer() +``` + +```groovy +net.minecraft.village.MerchantRecipeList getList() +``` + +```groovy +net.minecraft.entity.IMerchant getMerchant() +``` + +```groovy +void setList(net.minecraft.village.MerchantRecipeList arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/minecart_collision_event.md b/docs/zh/groovyscript/minecraft/events/minecart_collision_event.md new file mode 100644 index 0000000..2672035 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/minecart_collision_event.md @@ -0,0 +1,16 @@ +# MinecartCollisionEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.minecart.MinecartCollisionEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[MinecartEvent](minecart_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getCollider() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/minecart_event.md b/docs/zh/groovyscript/minecraft/events/minecart_event.md new file mode 100644 index 0000000..238ddd4 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/minecart_event.md @@ -0,0 +1,16 @@ +# MinecartEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.minecart.MinecartEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.item.EntityMinecart getMinecart() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/minecart_interact_event.md b/docs/zh/groovyscript/minecraft/events/minecart_interact_event.md new file mode 100644 index 0000000..49955cc --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/minecart_interact_event.md @@ -0,0 +1,24 @@ +# MinecartInteractEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.minecart.MinecartInteractEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[MinecartEvent](minecart_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.item.ItemStack getItem() +``` + +```groovy +net.minecraft.entity.player.EntityPlayer getPlayer() +``` + +```groovy +net.minecraft.util.EnumHand getHand() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/minecart_update_event.md b/docs/zh/groovyscript/minecraft/events/minecart_update_event.md new file mode 100644 index 0000000..8d9b497 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/minecart_update_event.md @@ -0,0 +1,16 @@ +# MinecartUpdateEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.minecart.MinecartUpdateEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[MinecartEvent](minecart_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/note_block_event._change.md b/docs/zh/groovyscript/minecraft/events/note_block_event._change.md new file mode 100644 index 0000000..0502ede --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/note_block_event._change.md @@ -0,0 +1,20 @@ +# NoteBlockEvent.Change + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.NoteBlockEvent.Change +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[NoteBlockEvent](note_block_event.md), [BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraftforge.event.world.NoteBlockEvent$Note getOldNote() +``` + +```groovy +net.minecraftforge.event.world.NoteBlockEvent$Octave getOldOctave() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/note_block_event._play.md b/docs/zh/groovyscript/minecraft/events/note_block_event._play.md new file mode 100644 index 0000000..f92904d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/note_block_event._play.md @@ -0,0 +1,20 @@ +# NoteBlockEvent.Play + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.NoteBlockEvent.Play +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[NoteBlockEvent](note_block_event.md), [BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraftforge.event.world.NoteBlockEvent$Instrument getInstrument() +``` + +```groovy +void setInstrument(net.minecraftforge.event.world.NoteBlockEvent$Instrument arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/note_block_event.md b/docs/zh/groovyscript/minecraft/events/note_block_event.md new file mode 100644 index 0000000..4605990 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/note_block_event.md @@ -0,0 +1,28 @@ +# NoteBlockEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.NoteBlockEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[BlockEvent](block_event.md) + +## Methods +```groovy +net.minecraftforge.event.world.NoteBlockEvent$Note getNote() +``` + +```groovy +net.minecraftforge.event.world.NoteBlockEvent$Octave getOctave() +``` + +```groovy +int getVanillaNoteId() +``` + +```groovy +void setNote(net.minecraftforge.event.world.NoteBlockEvent$Note arg0, net.minecraftforge.event.world.NoteBlockEvent$Octave arg1) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/ore_gen_event._generate_minable.md b/docs/zh/groovyscript/minecraft/events/ore_gen_event._generate_minable.md new file mode 100644 index 0000000..8093800 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/ore_gen_event._generate_minable.md @@ -0,0 +1,24 @@ +# OreGenEvent.GenerateMinable + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.OreGenEvent.GenerateMinable +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[OreGenEvent](ore_gen_event.md) + +## Methods +```groovy +net.minecraftforge.event.terraingen.OreGenEvent$GenerateMinable$EventType getType() +``` + +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.world.gen.feature.WorldGenerator getGenerator() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/ore_gen_event.md b/docs/zh/groovyscript/minecraft/events/ore_gen_event.md new file mode 100644 index 0000000..8427399 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/ore_gen_event.md @@ -0,0 +1,44 @@ +# OreGenEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.OreGenEvent +``` + +## Methods +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +java.util.Random getRand() +``` + +# OreGenEvent.Pre + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.OreGenEvent.Pre +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[OreGenEvent](ore_gen_event.md) + +## Methods +# OreGenEvent.Post + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.OreGenEvent.Post +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[OreGenEvent](ore_gen_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/play_sound_at_entity_event.md b/docs/zh/groovyscript/minecraft/events/play_sound_at_entity_event.md new file mode 100644 index 0000000..58395d9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/play_sound_at_entity_event.md @@ -0,0 +1,52 @@ +# PlaySoundAtEntityEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.PlaySoundAtEntityEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +void setCategory(net.minecraft.util.SoundCategory arg0) +``` + +```groovy +net.minecraft.util.SoundCategory getCategory() +``` + +```groovy +float getVolume() +``` + +```groovy +net.minecraft.util.SoundEvent getSound() +``` + +```groovy +float getPitch() +``` + +```groovy +void setPitch(float arg0) +``` + +```groovy +void setVolume(float arg0) +``` + +```groovy +float getDefaultPitch() +``` + +```groovy +void setSound(net.minecraft.util.SoundEvent arg0) +``` + +```groovy +float getDefaultVolume() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_brewed_potion_event.md b/docs/zh/groovyscript/minecraft/events/player_brewed_potion_event.md new file mode 100644 index 0000000..6dd7d1e --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_brewed_potion_event.md @@ -0,0 +1,16 @@ +# PlayerBrewedPotionEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.brewing.PlayerBrewedPotionEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.item.ItemStack getStack() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_container_event._close.md b/docs/zh/groovyscript/minecraft/events/player_container_event._close.md new file mode 100644 index 0000000..f7c02c2 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_container_event._close.md @@ -0,0 +1,12 @@ +# PlayerContainerEvent.Close + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerContainerEvent.Close +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerContainerEvent](player_container_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/player_container_event._open.md b/docs/zh/groovyscript/minecraft/events/player_container_event._open.md new file mode 100644 index 0000000..ae8fc04 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_container_event._open.md @@ -0,0 +1,12 @@ +# PlayerContainerEvent.Open + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerContainerEvent.Open +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerContainerEvent](player_container_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/player_container_event.md b/docs/zh/groovyscript/minecraft/events/player_container_event.md new file mode 100644 index 0000000..adcdad2 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_container_event.md @@ -0,0 +1,16 @@ +# PlayerContainerEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerContainerEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.inventory.Container getContainer() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_destroy_item_event.md b/docs/zh/groovyscript/minecraft/events/player_destroy_item_event.md new file mode 100644 index 0000000..54483fe --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_destroy_item_event.md @@ -0,0 +1,20 @@ +# PlayerDestroyItemEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerDestroyItemEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.EnumHand getHand() +``` + +```groovy +net.minecraft.item.ItemStack getOriginal() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_drops_event.md b/docs/zh/groovyscript/minecraft/events/player_drops_event.md new file mode 100644 index 0000000..38a4073 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_drops_event.md @@ -0,0 +1,16 @@ +# PlayerDropsEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerDropsEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingDropsEvent](living_drops_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getEntityPlayer() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._break_speed.md b/docs/zh/groovyscript/minecraft/events/player_event._break_speed.md new file mode 100644 index 0000000..3c2db83 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._break_speed.md @@ -0,0 +1,32 @@ +# PlayerEvent.BreakSpeed + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.BreakSpeed +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.block.state.IBlockState getState() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +float getNewSpeed() +``` + +```groovy +void setNewSpeed(float arg0) +``` + +```groovy +float getOriginalSpeed() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._clone.md b/docs/zh/groovyscript/minecraft/events/player_event._clone.md new file mode 100644 index 0000000..d16874a --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._clone.md @@ -0,0 +1,20 @@ +# PlayerEvent.Clone + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.Clone +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getOriginal() +``` + +```groovy +boolean isWasDeath() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._harvest_check.md b/docs/zh/groovyscript/minecraft/events/player_event._harvest_check.md new file mode 100644 index 0000000..45ad509 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._harvest_check.md @@ -0,0 +1,24 @@ +# PlayerEvent.HarvestCheck + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.HarvestCheck +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean canHarvest() +``` + +```groovy +net.minecraft.block.state.IBlockState getTargetBlock() +``` + +```groovy +void setCanHarvest(boolean arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._load_from_file.md b/docs/zh/groovyscript/minecraft/events/player_event._load_from_file.md new file mode 100644 index 0000000..b2e9c23 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._load_from_file.md @@ -0,0 +1,24 @@ +# PlayerEvent.LoadFromFile + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.LoadFromFile +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +java.io.File getPlayerDirectory() +``` + +```groovy +java.lang.String getPlayerUUID() +``` + +```groovy +java.io.File getPlayerFile(java.lang.String arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._name_format.md b/docs/zh/groovyscript/minecraft/events/player_event._name_format.md new file mode 100644 index 0000000..ca1411c --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._name_format.md @@ -0,0 +1,24 @@ +# PlayerEvent.NameFormat + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.NameFormat +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +java.lang.String getUsername() +``` + +```groovy +java.lang.String getDisplayname() +``` + +```groovy +void setDisplayname(java.lang.String arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._save_to_file.md b/docs/zh/groovyscript/minecraft/events/player_event._save_to_file.md new file mode 100644 index 0000000..6e81490 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._save_to_file.md @@ -0,0 +1,24 @@ +# PlayerEvent.SaveToFile + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.SaveToFile +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +java.io.File getPlayerDirectory() +``` + +```groovy +java.lang.String getPlayerUUID() +``` + +```groovy +java.io.File getPlayerFile(java.lang.String arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._start_tracking.md b/docs/zh/groovyscript/minecraft/events/player_event._start_tracking.md new file mode 100644 index 0000000..4942bd3 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._start_tracking.md @@ -0,0 +1,16 @@ +# PlayerEvent.StartTracking + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.StartTracking +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getTarget() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._stop_tracking.md b/docs/zh/groovyscript/minecraft/events/player_event._stop_tracking.md new file mode 100644 index 0000000..2d7fd96 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._stop_tracking.md @@ -0,0 +1,16 @@ +# PlayerEvent.StopTracking + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.StopTracking +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getTarget() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event._visibility.md b/docs/zh/groovyscript/minecraft/events/player_event._visibility.md new file mode 100644 index 0000000..2a0f2af --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event._visibility.md @@ -0,0 +1,20 @@ +# PlayerEvent.Visibility + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent.Visibility +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +double getVisibilityModifier() +``` + +```groovy +void modifyVisibility(double arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_event.md b/docs/zh/groovyscript/minecraft/events/player_event.md new file mode 100644 index 0000000..e800d25 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_event.md @@ -0,0 +1,16 @@ +# PlayerEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.player.EntityPlayer getEntityPlayer() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_flyable_fall_event.md b/docs/zh/groovyscript/minecraft/events/player_flyable_fall_event.md new file mode 100644 index 0000000..5cee069 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_flyable_fall_event.md @@ -0,0 +1,28 @@ +# PlayerFlyableFallEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerFlyableFallEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +float getMultiplier() +``` + +```groovy +void setMultiplier(float arg0) +``` + +```groovy +void setDistance(float arg0) +``` + +```groovy +float getDistance() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact.md b/docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact.md new file mode 100644 index 0000000..65d7f39 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact.md @@ -0,0 +1,16 @@ +# PlayerInteractEvent.EntityInteract + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent.EntityInteract +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerInteractEvent](player_interact_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getTarget() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md b/docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md new file mode 100644 index 0000000..7901ffe --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event._entity_interact_specific.md @@ -0,0 +1,20 @@ +# PlayerInteractEvent.EntityInteractSpecific + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent.EntityInteractSpecific +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerInteractEvent](player_interact_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.Entity getTarget() +``` + +```groovy +net.minecraft.util.math.Vec3d getLocalPos() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_block.md b/docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_block.md new file mode 100644 index 0000000..d0c9dc3 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_block.md @@ -0,0 +1,36 @@ +# PlayerInteractEvent.LeftClickBlock + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent.LeftClickBlock +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerInteractEvent](player_interact_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +void setCanceled(boolean arg0) +``` + +```groovy +net.minecraftforge.fml.common.eventhandler.Event$Result getUseItem() +``` + +```groovy +net.minecraft.util.math.Vec3d getHitVec() +``` + +```groovy +net.minecraftforge.fml.common.eventhandler.Event$Result getUseBlock() +``` + +```groovy +void setUseBlock(net.minecraftforge.fml.common.eventhandler.Event$Result arg0) +``` + +```groovy +void setUseItem(net.minecraftforge.fml.common.eventhandler.Event$Result arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_empty.md b/docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_empty.md new file mode 100644 index 0000000..dcb1fbc --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event._left_click_empty.md @@ -0,0 +1,12 @@ +# PlayerInteractEvent.LeftClickEmpty + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent.LeftClickEmpty +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerInteractEvent](player_interact_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_block.md b/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_block.md new file mode 100644 index 0000000..a7d0035 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_block.md @@ -0,0 +1,36 @@ +# PlayerInteractEvent.RightClickBlock + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent.RightClickBlock +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerInteractEvent](player_interact_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +void setCanceled(boolean arg0) +``` + +```groovy +net.minecraftforge.fml.common.eventhandler.Event$Result getUseItem() +``` + +```groovy +net.minecraft.util.math.Vec3d getHitVec() +``` + +```groovy +net.minecraftforge.fml.common.eventhandler.Event$Result getUseBlock() +``` + +```groovy +void setUseBlock(net.minecraftforge.fml.common.eventhandler.Event$Result arg0) +``` + +```groovy +void setUseItem(net.minecraftforge.fml.common.eventhandler.Event$Result arg0) +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_empty.md b/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_empty.md new file mode 100644 index 0000000..eda9821 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_empty.md @@ -0,0 +1,12 @@ +# PlayerInteractEvent.RightClickEmpty + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent.RightClickEmpty +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerInteractEvent](player_interact_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_item.md b/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_item.md new file mode 100644 index 0000000..6e17365 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event._right_click_item.md @@ -0,0 +1,12 @@ +# PlayerInteractEvent.RightClickItem + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent.RightClickItem +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerInteractEvent](player_interact_event.md), [PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/player_interact_event.md b/docs/zh/groovyscript/minecraft/events/player_interact_event.md new file mode 100644 index 0000000..c282b75 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_interact_event.md @@ -0,0 +1,44 @@ +# PlayerInteractEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerInteractEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraftforge.fml.relauncher.Side getSide() +``` + +```groovy +net.minecraft.util.EnumHand getHand() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +net.minecraft.util.EnumActionResult getCancellationResult() +``` + +```groovy +void setCancellationResult(net.minecraft.util.EnumActionResult arg0) +``` + +```groovy +net.minecraft.item.ItemStack getItemStack() +``` + +```groovy +net.minecraft.util.EnumFacing getFace() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_pickup_xp_event.md b/docs/zh/groovyscript/minecraft/events/player_pickup_xp_event.md new file mode 100644 index 0000000..58f5db7 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_pickup_xp_event.md @@ -0,0 +1,16 @@ +# PlayerPickupXpEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerPickupXpEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.item.EntityXPOrb getOrb() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_set_spawn_event.md b/docs/zh/groovyscript/minecraft/events/player_set_spawn_event.md new file mode 100644 index 0000000..6d81ca3 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_set_spawn_event.md @@ -0,0 +1,20 @@ +# PlayerSetSpawnEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerSetSpawnEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean isForced() +``` + +```groovy +net.minecraft.util.math.BlockPos getNewSpawn() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_sleep_in_bed_event.md b/docs/zh/groovyscript/minecraft/events/player_sleep_in_bed_event.md new file mode 100644 index 0000000..d896037 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_sleep_in_bed_event.md @@ -0,0 +1,24 @@ +# PlayerSleepInBedEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerSleepInBedEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +void setResult(net.minecraft.entity.player.EntityPlayer$SleepResult arg0) +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.entity.player.EntityPlayer$SleepResult getResultStatus() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/player_wake_up_event.md b/docs/zh/groovyscript/minecraft/events/player_wake_up_event.md new file mode 100644 index 0000000..086338b --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/player_wake_up_event.md @@ -0,0 +1,24 @@ +# PlayerWakeUpEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.PlayerWakeUpEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean wakeImmediately() +``` + +```groovy +boolean shouldSetSpawn() +``` + +```groovy +boolean updateWorld() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/populate_chunk_event._populate.md b/docs/zh/groovyscript/minecraft/events/populate_chunk_event._populate.md new file mode 100644 index 0000000..7048d00 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/populate_chunk_event._populate.md @@ -0,0 +1,20 @@ +# PopulateChunkEvent.Populate + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.PopulateChunkEvent.Populate +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PopulateChunkEvent](populate_chunk_event.md), [ChunkGeneratorEvent](chunk_generator_event.md) + +## Methods +```groovy +net.minecraftforge.event.terraingen.PopulateChunkEvent$Populate$EventType getType() +``` + +```groovy +boolean hasResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/populate_chunk_event.md b/docs/zh/groovyscript/minecraft/events/populate_chunk_event.md new file mode 100644 index 0000000..963a6b6 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/populate_chunk_event.md @@ -0,0 +1,56 @@ +# PopulateChunkEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.PopulateChunkEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ChunkGeneratorEvent](chunk_generator_event.md) + +## Methods +```groovy +boolean isHasVillageGenerated() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +int getChunkZ() +``` + +```groovy +int getChunkX() +``` + +```groovy +java.util.Random getRand() +``` + +# PopulateChunkEvent.Pre + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.PopulateChunkEvent.Pre +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PopulateChunkEvent](populate_chunk_event.md), [ChunkGeneratorEvent](chunk_generator_event.md) + +## Methods +# PopulateChunkEvent.Post + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.PopulateChunkEvent.Post +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PopulateChunkEvent](populate_chunk_event.md), [ChunkGeneratorEvent](chunk_generator_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/potion_brew_event.md b/docs/zh/groovyscript/minecraft/events/potion_brew_event.md new file mode 100644 index 0000000..8929ad0 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/potion_brew_event.md @@ -0,0 +1,44 @@ +# PotionBrewEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.brewing.PotionBrewEvent +``` + +## Methods +```groovy +int getLength() +``` + +```groovy +net.minecraft.item.ItemStack getItem(int arg0) +``` + +```groovy +void setItem(int arg0, net.minecraft.item.ItemStack arg1) +``` + +# PotionBrewEvent.Pre + +To use this event use the following import: +```groovy +import net.minecraftforge.event.brewing.PotionBrewEvent.Pre +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PotionBrewEvent](potion_brew_event.md) + +## Methods +# PotionBrewEvent.Post + +To use this event use the following import: +```groovy +import net.minecraftforge.event.brewing.PotionBrewEvent.Post +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PotionBrewEvent](potion_brew_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/potion_color_calculation_event.md b/docs/zh/groovyscript/minecraft/events/potion_color_calculation_event.md new file mode 100644 index 0000000..921c1bb --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/potion_color_calculation_event.md @@ -0,0 +1,32 @@ +# PotionColorCalculationEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.PotionColorCalculationEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +void setColor(int arg0) +``` + +```groovy +void shouldHideParticles(boolean arg0) +``` + +```groovy +boolean areParticlesHidden() +``` + +```groovy +int getColor() +``` + +```groovy +java.util.Collection getEffects() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/potion_event._potion_added_event.md b/docs/zh/groovyscript/minecraft/events/potion_event._potion_added_event.md new file mode 100644 index 0000000..836df33 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/potion_event._potion_added_event.md @@ -0,0 +1,20 @@ +# PotionEvent.PotionAddedEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.PotionEvent.PotionAddedEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PotionEvent](potion_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.potion.PotionEffect getOldPotionEffect() +``` + +```groovy +net.minecraft.potion.PotionEffect getPotionEffect() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/potion_event._potion_applicable_event.md b/docs/zh/groovyscript/minecraft/events/potion_event._potion_applicable_event.md new file mode 100644 index 0000000..f5a83d4 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/potion_event._potion_applicable_event.md @@ -0,0 +1,20 @@ +# PotionEvent.PotionApplicableEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.PotionEvent.PotionApplicableEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PotionEvent](potion_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.potion.PotionEffect getPotionEffect() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/potion_event._potion_expiry_event.md b/docs/zh/groovyscript/minecraft/events/potion_event._potion_expiry_event.md new file mode 100644 index 0000000..8758777 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/potion_event._potion_expiry_event.md @@ -0,0 +1,12 @@ +# PotionEvent.PotionExpiryEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.PotionEvent.PotionExpiryEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PotionEvent](potion_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/potion_event._potion_remove_event.md b/docs/zh/groovyscript/minecraft/events/potion_event._potion_remove_event.md new file mode 100644 index 0000000..f6e27d8 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/potion_event._potion_remove_event.md @@ -0,0 +1,20 @@ +# PotionEvent.PotionRemoveEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.PotionEvent.PotionRemoveEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PotionEvent](potion_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.potion.Potion getPotion() +``` + +```groovy +net.minecraft.potion.PotionEffect getPotionEffect() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/potion_event.md b/docs/zh/groovyscript/minecraft/events/potion_event.md new file mode 100644 index 0000000..d5fde97 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/potion_event.md @@ -0,0 +1,16 @@ +# PotionEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.PotionEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.potion.PotionEffect getPotionEffect() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/projectile_impact_event._arrow.md b/docs/zh/groovyscript/minecraft/events/projectile_impact_event._arrow.md new file mode 100644 index 0000000..a79fe20 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/projectile_impact_event._arrow.md @@ -0,0 +1,16 @@ +# ProjectileImpactEvent.Arrow + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.ProjectileImpactEvent.Arrow +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ProjectileImpactEvent](projectile_impact_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.projectile.EntityArrow getArrow() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/projectile_impact_event._fireball.md b/docs/zh/groovyscript/minecraft/events/projectile_impact_event._fireball.md new file mode 100644 index 0000000..a7b6982 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/projectile_impact_event._fireball.md @@ -0,0 +1,16 @@ +# ProjectileImpactEvent.Fireball + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.ProjectileImpactEvent.Fireball +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ProjectileImpactEvent](projectile_impact_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.projectile.EntityFireball getFireball() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/projectile_impact_event._throwable.md b/docs/zh/groovyscript/minecraft/events/projectile_impact_event._throwable.md new file mode 100644 index 0000000..9c5c299 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/projectile_impact_event._throwable.md @@ -0,0 +1,16 @@ +# ProjectileImpactEvent.Throwable + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.ProjectileImpactEvent.Throwable +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ProjectileImpactEvent](projectile_impact_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.projectile.EntityThrowable getThrowable() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/projectile_impact_event.md b/docs/zh/groovyscript/minecraft/events/projectile_impact_event.md new file mode 100644 index 0000000..4fa4ce2 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/projectile_impact_event.md @@ -0,0 +1,16 @@ +# ProjectileImpactEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.ProjectileImpactEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.util.math.RayTraceResult getRayTraceResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/registry_event._missing_mappings.md b/docs/zh/groovyscript/minecraft/events/registry_event._missing_mappings.md new file mode 100644 index 0000000..c4adfc3 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/registry_event._missing_mappings.md @@ -0,0 +1,32 @@ +# RegistryEvent.MissingMappings + +To use this event use the following import: +```groovy +import net.minecraftforge.event.RegistryEvent.MissingMappings +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[RegistryEvent](registry_event.md), [GenericEvent](generic_event.md) + +## Methods +```groovy +net.minecraft.util.ResourceLocation getName() +``` + +```groovy +net.minecraftforge.registries.IForgeRegistry getRegistry() +``` + +```groovy +void setModContainer(net.minecraftforge.fml.common.ModContainer arg0) +``` + +```groovy +com.google.common.collect.ImmutableList getAllMappings() +``` + +```groovy +com.google.common.collect.ImmutableList getMappings() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/registry_event._new_registry.md b/docs/zh/groovyscript/minecraft/events/registry_event._new_registry.md new file mode 100644 index 0000000..936a351 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/registry_event._new_registry.md @@ -0,0 +1,8 @@ +# RegistryEvent.NewRegistry + +To use this event use the following import: +```groovy +import net.minecraftforge.event.RegistryEvent.NewRegistry +``` + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/registry_event._register.md b/docs/zh/groovyscript/minecraft/events/registry_event._register.md new file mode 100644 index 0000000..e784dcc --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/registry_event._register.md @@ -0,0 +1,20 @@ +# RegistryEvent.Register + +To use this event use the following import: +```groovy +import net.minecraftforge.event.RegistryEvent.Register +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[RegistryEvent](registry_event.md), [GenericEvent](generic_event.md) + +## Methods +```groovy +net.minecraft.util.ResourceLocation getName() +``` + +```groovy +net.minecraftforge.registries.IForgeRegistry getRegistry() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/registry_event.md b/docs/zh/groovyscript/minecraft/events/registry_event.md new file mode 100644 index 0000000..eaf0c75 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/registry_event.md @@ -0,0 +1,12 @@ +# RegistryEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.RegistryEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[GenericEvent](generic_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/sapling_grow_tree_event.md b/docs/zh/groovyscript/minecraft/events/sapling_grow_tree_event.md new file mode 100644 index 0000000..765c35e --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/sapling_grow_tree_event.md @@ -0,0 +1,24 @@ +# SaplingGrowTreeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.SaplingGrowTreeEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +java.util.Random getRand() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/server_chat_event.md b/docs/zh/groovyscript/minecraft/events/server_chat_event.md new file mode 100644 index 0000000..43000ac --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/server_chat_event.md @@ -0,0 +1,28 @@ +# ServerChatEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.ServerChatEvent +``` + +## Methods +```groovy +java.lang.String getMessage() +``` + +```groovy +net.minecraft.util.text.ITextComponent getComponent() +``` + +```groovy +net.minecraft.entity.player.EntityPlayerMP getPlayer() +``` + +```groovy +void setComponent(net.minecraft.util.text.ITextComponent arg0) +``` + +```groovy +java.lang.String getUsername() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/sleeping_location_check_event.md b/docs/zh/groovyscript/minecraft/events/sleeping_location_check_event.md new file mode 100644 index 0000000..f914983 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/sleeping_location_check_event.md @@ -0,0 +1,20 @@ +# SleepingLocationCheckEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.SleepingLocationCheckEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.util.math.BlockPos getSleepingLocation() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/sleeping_time_check_event.md b/docs/zh/groovyscript/minecraft/events/sleeping_time_check_event.md new file mode 100644 index 0000000..edd2fac --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/sleeping_time_check_event.md @@ -0,0 +1,20 @@ +# SleepingTimeCheckEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.SleepingTimeCheckEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.util.math.BlockPos getSleepingLocation() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/throwable_impact_event.md b/docs/zh/groovyscript/minecraft/events/throwable_impact_event.md new file mode 100644 index 0000000..58d0651 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/throwable_impact_event.md @@ -0,0 +1,20 @@ +# ThrowableImpactEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.ThrowableImpactEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.projectile.EntityThrowable getEntityThrowable() +``` + +```groovy +net.minecraft.util.math.RayTraceResult getRayTraceResult() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/use_hoe_event.md b/docs/zh/groovyscript/minecraft/events/use_hoe_event.md new file mode 100644 index 0000000..ffd4f0f --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/use_hoe_event.md @@ -0,0 +1,28 @@ +# UseHoeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.player.UseHoeEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[PlayerEvent](player_event.md), [LivingEvent](living_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +boolean hasResult() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +net.minecraft.item.ItemStack getCurrent() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/village_siege_event.md b/docs/zh/groovyscript/minecraft/events/village_siege_event.md new file mode 100644 index 0000000..14686e9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/village_siege_event.md @@ -0,0 +1,28 @@ +# VillageSiegeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.village.VillageSiegeEvent +``` + +## Methods +```groovy +net.minecraft.village.Village getVillage() +``` + +```groovy +net.minecraft.village.VillageSiege getSiege() +``` + +```groovy +net.minecraft.util.math.Vec3d getAttemptedSpawnPos() +``` + +```groovy +net.minecraft.entity.player.EntityPlayer getPlayer() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/world_event._create_spawn_position.md b/docs/zh/groovyscript/minecraft/events/world_event._create_spawn_position.md new file mode 100644 index 0000000..1a5b1c9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_event._create_spawn_position.md @@ -0,0 +1,16 @@ +# WorldEvent.CreateSpawnPosition + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.WorldEvent.CreateSpawnPosition +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods +```groovy +net.minecraft.world.WorldSettings getSettings() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/world_event._load.md b/docs/zh/groovyscript/minecraft/events/world_event._load.md new file mode 100644 index 0000000..6853711 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_event._load.md @@ -0,0 +1,12 @@ +# WorldEvent.Load + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.WorldEvent.Load +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/world_event._potential_spawns.md b/docs/zh/groovyscript/minecraft/events/world_event._potential_spawns.md new file mode 100644 index 0000000..91218eb --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_event._potential_spawns.md @@ -0,0 +1,24 @@ +# WorldEvent.PotentialSpawns + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.WorldEvent.PotentialSpawns +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods +```groovy +net.minecraft.entity.EnumCreatureType getType() +``` + +```groovy +net.minecraft.util.math.BlockPos getPos() +``` + +```groovy +java.util.List getList() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/world_event._save.md b/docs/zh/groovyscript/minecraft/events/world_event._save.md new file mode 100644 index 0000000..928587d --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_event._save.md @@ -0,0 +1,12 @@ +# WorldEvent.Save + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.WorldEvent.Save +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/world_event._unload.md b/docs/zh/groovyscript/minecraft/events/world_event._unload.md new file mode 100644 index 0000000..77edbd2 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_event._unload.md @@ -0,0 +1,12 @@ +# WorldEvent.Unload + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.WorldEvent.Unload +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldEvent](world_event.md) + +## Methods diff --git a/docs/zh/groovyscript/minecraft/events/world_event.md b/docs/zh/groovyscript/minecraft/events/world_event.md new file mode 100644 index 0000000..2693107 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_event.md @@ -0,0 +1,12 @@ +# WorldEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.world.WorldEvent +``` + +## Methods +```groovy +net.minecraft.world.World getWorld() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/world_type_event._biome_size.md b/docs/zh/groovyscript/minecraft/events/world_type_event._biome_size.md new file mode 100644 index 0000000..fb04c12 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_type_event._biome_size.md @@ -0,0 +1,24 @@ +# WorldTypeEvent.BiomeSize + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.WorldTypeEvent.BiomeSize +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldTypeEvent](world_type_event.md) + +## Methods +```groovy +int getOriginalSize() +``` + +```groovy +void setNewSize(int arg0) +``` + +```groovy +int getNewSize() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/world_type_event._init_biome_gens.md b/docs/zh/groovyscript/minecraft/events/world_type_event._init_biome_gens.md new file mode 100644 index 0000000..e8a516a --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_type_event._init_biome_gens.md @@ -0,0 +1,28 @@ +# WorldTypeEvent.InitBiomeGens + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.WorldTypeEvent.InitBiomeGens +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[WorldTypeEvent](world_type_event.md) + +## Methods +```groovy +long getSeed() +``` + +```groovy +void setNewBiomeGens([Lnet.minecraft.world.gen.layer.GenLayer; arg0) +``` + +```groovy +[Lnet.minecraft.world.gen.layer.GenLayer; getNewBiomeGens() +``` + +```groovy +[Lnet.minecraft.world.gen.layer.GenLayer; getOriginalBiomeGens() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/world_type_event.md b/docs/zh/groovyscript/minecraft/events/world_type_event.md new file mode 100644 index 0000000..42d2c4c --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/world_type_event.md @@ -0,0 +1,12 @@ +# WorldTypeEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.terraingen.WorldTypeEvent +``` + +## Methods +```groovy +net.minecraft.world.WorldType getWorldType() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/zombie_event._summon_aid_event.md b/docs/zh/groovyscript/minecraft/events/zombie_event._summon_aid_event.md new file mode 100644 index 0000000..7325fb2 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/zombie_event._summon_aid_event.md @@ -0,0 +1,48 @@ +# ZombieEvent.SummonAidEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.ZombieEvent.SummonAidEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[ZombieEvent](zombie_event.md), [EntityEvent](entity_event.md) + +## Methods +```groovy +int getY() +``` + +```groovy +int getX() +``` + +```groovy +boolean hasResult() +``` + +```groovy +void setCustomSummonedAid(net.minecraft.entity.monster.EntityZombie arg0) +``` + +```groovy +net.minecraft.entity.monster.EntityZombie getCustomSummonedAid() +``` + +```groovy +int getZ() +``` + +```groovy +net.minecraft.world.World getWorld() +``` + +```groovy +double getSummonChance() +``` + +```groovy +net.minecraft.entity.EntityLivingBase getAttacker() +``` + diff --git a/docs/zh/groovyscript/minecraft/events/zombie_event.md b/docs/zh/groovyscript/minecraft/events/zombie_event.md new file mode 100644 index 0000000..d5a8de9 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/events/zombie_event.md @@ -0,0 +1,16 @@ +# ZombieEvent + +To use this event use the following import: +```groovy +import net.minecraftforge.event.entity.living.ZombieEvent +``` + +## Sub-Classes +This event extends the following events and can use all their methods and fields:
+[EntityEvent](entity_event.md) + +## Methods +```groovy +net.minecraft.entity.monster.EntityZombie getSummoner() +``` + diff --git a/docs/zh/groovyscript/minecraft/furnace.md b/docs/zh/groovyscript/minecraft/furnace.md new file mode 100644 index 0000000..a0d0cf1 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/furnace.md @@ -0,0 +1,26 @@ +# Minecraft Furnace + +## Adding Recipes +Unlike other recipe types, furnace smelting does not use a recipe builder. + +```groovy +furnace.add(IIngredient input, ItemStack output) // applies a default exp of 0.1 +furnace.add(IIngredient input, ItemStack output, float exp) +``` + +### Example +```groovy +// smelt 1 dirt to produce one cobblestone and 0.5 exp +furnace.add(item('minecraft:dirt'), item('minecraft:cobblestone'), 0.5f) +``` + +## Removing Recipes: +```groovy +furnace.removeByInput(ItemStack input) +``` + +### Example +```groovy +// removes all recipes that input iron ore +furnace.removeByInput(item('minecraft:iron_ore')) +``` diff --git a/docs/zh/groovyscript/minecraft/item.md b/docs/zh/groovyscript/minecraft/item.md new file mode 100644 index 0000000..b96975f --- /dev/null +++ b/docs/zh/groovyscript/minecraft/item.md @@ -0,0 +1,61 @@ +# Items +Item stacks can be obtained with the item bracket handler. +````groovy +def iron_ingot = item('minecraft:iron_ingot', 4) * 6 +```` + +The 4 inside the () is the metadata. Iron ingot doesn't have any sub items so it will result in an item that doesn't actually exist. +The `* 6` at the end marks the amount. The item id `'minecraft:iron_ingot'` is a string and can be replaced by anything that makes a string.
+The following also returns a iron ingot. +````groovy +def iron_ingot = 'iron_ingot' +item("minecraft:$iron_ingot") +```` + +## NBT +Nbt data is minecraft data format used for items and world saving. Adding a nbt tag is easy. +````groovy +itemStack.withNbt(Map map) +```` +Now this looks complicated, but it isn't. +````groovy +item('minecraft:iron_ingot').withNbt([Name: 'Epic Ingot']) +```` +### More +- `.withNbt(null)` removes the nbt tag +- `.withEmptyNbt()` adds an empty nbt tag + +## Match Conditions +This allows for dynamic item checking in recipes. +!!! Note + At this moment (ver. 0.3.1) only crafting and Draconic Evolution fusion crafting is supported. + +````groovy +itemStack.when(Closure condition) +```` +!!! Example + ````groovy + item('minecraft:iron_axe:*').when({stack -> stack.getDamage() < 50}) + ```` +Let's see what this does. First `item('minecraft:iron_axe:*')` matches an iron axe with any damage. +Then `.when({stack -> stack.getDamage() < 50})` only validates items that have taken less than 50 damage. + +## Transformer +This transforms an item ingredient to a new item on craft. For example a water bucket returns an empty bucket after crafting. +!!! Note + This only works for crafting. + +````groovy +itemStack.transform(Closure transformer) +```` +!!! Example + ````groovy + def transformer = { stack -> stack.copyWithDamage(stack.getDamage() + 1)} + item('minecraft:iron_axe:*').transform(transformer) + ```` +First we create a transformer closure, so we can easier see what's going on. It simply creates a new item with one more damage. +In the second line that transformer is applied to the item. So at the end when you craft a recipe with that iron axe it will get damaged by 1. + +### Default Transformer +- `.noreturn()` will not return anything. Useful when you want to consume a water bucket with the bucket for example. +- `.reuse()` will return itself. That means the item will not be consumed. \ No newline at end of file diff --git a/docs/zh/groovyscript/minecraft/ore_dictionary.md b/docs/zh/groovyscript/minecraft/ore_dictionary.md new file mode 100644 index 0000000..b20400a --- /dev/null +++ b/docs/zh/groovyscript/minecraft/ore_dictionary.md @@ -0,0 +1,53 @@ +# Ore Dictionary +!!! Note + Requires version 0.3.0+ + GroovyScript also allows you to remove and add ore dictionaries to items and reload them. + +## Adding ore dicts + +All three methods are do exactly the same thing. +```groovy +oreDict.add("amogus", item('minecraft:iron_ingot')) + +item('minecraft:iron_ingot').addOreDict(ore('amogus')) + +ore('amogus').add(item('minecraft:iron_ingot')) +``` + +## Removing ore dicts + +All three methods are do exactly the same thing. +````groovy +oreDict.remove("ingotIron", item('minecraft:iron_ingot')) + +item('minecraft:iron_ingot').removeOreDict(ore('ingotIron')) + +ore('ingotIron').remove(item('minecraft:iron_ingot')) +```` + +## Other +You can get all items from an ore dict. +Both ways do the same thing. +````groovy +oreDict.getItems('ingotIron') +oreDict['ingotIron'] +```` + +Checking if an item is in an ore dictionary +````groovy +item('minecraft:iron_ingot') in ore('ingotIron') // returns true +```` + +Getting the first item from an ore dictionary +````groovy +ore('ingotIron').first +ore('ingotIron')[0] +```` + +Iterating over all items in an ore dictionary +````groovy +for (def ironIngot : ore('ingotIron')) { + ... +} +```` + diff --git a/docs/zh/groovyscript/minecraft/tooltip.md b/docs/zh/groovyscript/minecraft/tooltip.md new file mode 100644 index 0000000..9eee775 --- /dev/null +++ b/docs/zh/groovyscript/minecraft/tooltip.md @@ -0,0 +1,23 @@ +# Item Tooltips + +There is not a simple way to add tooltips. However, you can use the event system to modify any tooltip in any way you +want.
+See [ItemTooltipEvent](events/item_tooltip_event.md). + +## Adding lines + +This is the simplest way to add tooltips to a specific item. Note that this would ignore nbt data. Also, you can add +tooltips for multiple items inside the event. You don't need to call listen for the same event multiple times. + +````groovy +import net.minecraftforge.event.entity.player.ItemTooltipEvent + +event_manager.listen { ItemTooltipEvent event -> + if (ItemStack.areItemsEqual(event.getItemStack(), item('minecraft:diamond'))) { + event.getToolTip().add('Epic diamond tooltip') + } +} +```` + +If your familiar with [lists](../../groovy/lists.md) you can modify the tooltip lines as you like +since `event.getToolTip()` returns a `List`. \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/bloodmagic/alchemy_array.md b/docs/zh/groovyscript/mods/bloodmagic/alchemy_array.md new file mode 100644 index 0000000..b8e5129 --- /dev/null +++ b/docs/zh/groovyscript/mods/bloodmagic/alchemy_array.md @@ -0,0 +1,104 @@ +# Blood Magic Alchemy Array + +Package: +```groovy +mods.bloodmagic.AlchemyArray +``` + +!!! Note + An Alchemy Array is created in-world via Right Clicking Arcane Ashes on the ground. + Right Clicking first the input and then the catalyst on the Arcane Ashes will cause an animation, ending with the item being spawned in-world. + +## Adding Recipes +Just like other recipe types, the Alchemy Array also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.bloodmagic.AlchemyArray.recipeBuilder() +``` + +Adding inputs: (requires exactly 1) +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Setting catalyst item: (required exactly 1) +```groovy +.catalyst(IIngredient) +``` + +Setting the texture location: (option (default WIP)) +```groovy +.texture(String) +.texture(ResourceLocation) +``` + +Adding output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Register recipe: (returns `WayofTime.bloodmagic.api.impl.recipe.RecipeAlchemyArray`) +```groovy +.register() +``` + +### Example +```groovy +mods.bloodmagic.AlchemyArray.recipeBuilder() + .input(item("minecraft:diamond")) + .catalyst(item("bloodmagic:slate:1")) + .output(item("minecraft:gold_ingot")) + .register() + +mods.bloodmagic.AlchemyArray.recipeBuilder() + .input(item("minecraft:clay")) + .catalyst(item("minecraft:gold_ingot")) + .output(item("minecraft:diamond")) + .texture("bloodmagic:textures/models/AlchemyArrays/LightSigil.png") + .register() +``` + +## Removing Recipes + +This removes ALL recipes that match the given input: +```groovy +mods.bloodmagic.AlchemyArray.removeByInput(IIngredient) +``` + +This removes ALL recipes that match the given catalyst: +```groovy +mods.bloodmagic.AlchemyArray.removeByCatalyst(IIngredient) +``` + +This removes ALL recipes that match both the given input and catalyst: +```groovy +mods.bloodmagic.AlchemyArray.removeByInputAndCatalyst(IIngredient input, IIngredient catalyst) +``` + +This removes ALL recipes that match the given output: +```groovy +mods.bloodmagic.AlchemyArray.removeByOutput(ItemStack) +``` + +Removes all registed Alchemy Array recipes: +```groovy +mods.bloodmagic.AlchemyArray.removeAll() +``` + +### Example +```groovy +// Removes all recipes that have an input of Haste Reagent. (1) +mods.bloodmagic.AlchemyArray.removeByInput(item("bloodmagic:component:13")) +// Removes all recipes that have the target catalyst item. (2) +mods.bloodmagic.AlchemyArray.removeByCatalyst(item("bloodmagic:slate:2")) +// Removes all recipes that have both the target input and catalyst items. (3) +mods.bloodmagic.AlchemyArray.removeByInputAndCatalyst(item("bloodmagic:component:7"), item("bloodmagic:slate:1")) +// Removes all recipes that output the Sigil of the Void. +mods.bloodmagic.AlchemyArray.removeByOutput(item("bloodmagic:sigil_void")) +``` + +1. This would remove the recipe for the Sigil of Haste. +2. This would remove the recipe for the Sigil of the Claw, Elemental Affinity, Magnetism, Blood Lamp, and Holding. +3. This would remove the recipe for the Seer's Sigil. diff --git a/docs/zh/groovyscript/mods/bloodmagic/alchemy_table.md b/docs/zh/groovyscript/mods/bloodmagic/alchemy_table.md new file mode 100644 index 0000000..968bb21 --- /dev/null +++ b/docs/zh/groovyscript/mods/bloodmagic/alchemy_table.md @@ -0,0 +1,105 @@ +# Blood Magic Alchemy Table + +Package: +```groovy +mods.bloodmagic.AlchemyTable +``` + +!!! Note + The Alchemy Table requires a Blood Orb linked to a player inside it to function. + It consumes Life Essence from the bound player's Life Network to craft. + !!! Danger "" + Tier 6 must be enabled in the config to use a Blood Orb of that tier. + +## Adding Recipes +Just like other recipe types, the Alchemy Table also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.bloodmagic.AlchemyTable.recipeBuilder() +``` + +Adding inputs: (requires 1-6) +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Setting cost in Life Essence taken from the owner of the orb: (optional (default is 0)) +```groovy +.syphon(int) +.drain(int) +``` + +Setting the time in ticks the recipe takes: (required) +```groovy +.ticks(int) +.time(int) +``` + +Setting the minimum tier of Blood Orb: (required) +```groovy +.minimumTier(int) +.tier(int) +``` + +Adding output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Register recipe: (returns `WayofTime.bloodmagic.api.impl.recipe.RecipeAlchemyTable`) +```groovy +.register() +``` + +### Example +```groovy +mods.bloodmagic.AlchemyTable.recipeBuilder() + .input(item("minecraft:diamond"), item("minecraft:diamond")) + .output(item("minecraft:clay")) + .ticks(100) + .minimumTier(2) + .syphon(500) + .register() + +mods.bloodmagic.AlchemyTable.recipeBuilder() + .input(item("minecraft:diamond"), item("minecraft:diamond"), item("minecraft:gold_ingot"), + item("minecraft:gold_ingot"), item("bloodmagic:slate"), item("bloodmagic:slate")) + .output(item("minecraft:clay")) + .time(2000) + .tier(5) + .drain(25000) + .register() +``` + +## Removing Recipes + +This removes ALL recipes which have all input ingredients[^1]: +```groovy +mods.bloodmagic.AlchemyTable.removeByInput(NonNullList) +mods.bloodmagic.AlchemyTable.removeByInput(IIngredient...) +``` + +This removes ALL recipes that match the given output: +```groovy +mods.bloodmagic.AlchemyTable.removeByOutput(ItemStack) +``` + +Removes all registed Alchemy Table recipes: +```groovy +mods.bloodmagic.AlchemyTable.removeAll() +``` + +### Example +```groovy +// Removes all recipes that have inputs including both Nether Wart and Gunpowder. (1) +mods.bloodmagic.AlchemyTable.removeByInput(item("minecraft:nether_wart"), item("minecraft:gunpowder")) +// Removes all recipes that output Sand. +mods.bloodmagic.AlchemyTable.removeByOutput(item("minecraft:sand")) +``` + +1. This would remove the recipes for both Simple Power Catalyst and Simple Lengthening Catalysts. + + +[^1]: Note that a recipe with inputs "ABCD" would match with a target containing only "AB". diff --git a/docs/zh/groovyscript/mods/bloodmagic/blood_altar.md b/docs/zh/groovyscript/mods/bloodmagic/blood_altar.md new file mode 100644 index 0000000..17e6247 --- /dev/null +++ b/docs/zh/groovyscript/mods/bloodmagic/blood_altar.md @@ -0,0 +1,105 @@ +# Blood Magic Blood Altar + +Package: +```groovy +mods.bloodmagic.BloodAltar +``` + +!!! Note + The Blood Altar consumes Life Essence from its internal tank to convert the input item into the output item. + Each tier requires a larger multiblock, which may contain Runes that modify the Blood Altar's functionality. + !!! Danger "" + Tier 6 must be enabled in the config to use a Blood Altar of that tier. + +## Adding Recipes +Just like other recipe types, the Blood Altar also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.bloodmagic.BloodAltar.recipeBuilder() +``` + +Adding inputs: (requires exactly 1) +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Setting the minimum tier required: (optional (default is 0)) +```groovy +.minimumTier(int) +.tier(int) +``` + +Setting the required amount of Life Essence: (optional (default is 0)) +```groovy +.syphon(int) +``` + +Setting the base rate the craft consumes Life Essence from the Blood Altar: (optional (default is 0)) +```groovy +.consumeRate(int) +``` + +Setting the base rate the craft loses progress when the Blood Altar does not have enough Life Essence: (optional (default is 0)) +```groovy +.drainRate(int) +``` + +Adding output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Register recipe: (returns `WayofTime.bloodmagic.api.impl.recipe.RecipeBloodAltar`) +```groovy +.register() +``` + +### Example +```groovy +mods.bloodmagic.BloodAltar.recipeBuilder() + .input(item("minecraft:clay")) + .output(item("minecraft:gold_ingot")) + .tier(0) + .drainRate(5) + .syphon(10) + .consumeRate(5) + .register() + +mods.bloodmagic.BloodAltar.recipeBuilder() + .input(item("minecraft:gold_ingot")) + .output(item("minecraft:diamond")) + .minimumTier(3) + .drainRate(100) + .syphon(50000) + .consumeRate(500) + .register() +``` + +## Removing Recipes + +This removes ALL recipes that match the given input: +```groovy +mods.bloodmagic.BloodAltar.removeByInput(IIngredient) +``` + +This removes ALL recipes that match the given output: +```groovy +mods.bloodmagic.BloodAltar.removeByOutput(ItemStack) +``` + +Removes all registed Blood Altar recipes: +```groovy +mods.bloodmagic.BloodAltar.removeAll() +``` + +### Example +```groovy +// Removes all recipes that have have Ender Pearl as their input. (1) +mods.bloodmagic.BloodAltar.removeByInput(item("minecraft:ender_pearl")) +// Removes all recipes that output Ethereal Slates. +mods.bloodmagic.BloodAltar.removeByOutput(item("bloodmagic:slate:4")) +``` + +1. This would remove the recipe for the Teleposition Focus. diff --git a/docs/zh/groovyscript/mods/bloodmagic/meteor.md b/docs/zh/groovyscript/mods/bloodmagic/meteor.md new file mode 100644 index 0000000..e561a92 --- /dev/null +++ b/docs/zh/groovyscript/mods/bloodmagic/meteor.md @@ -0,0 +1,93 @@ +# Blood Magic Meteor Ritual + +Package: +```groovy +mods.bloodmagic.Meteor +``` + +!!! Note + Meteors are created via activating a `Mark of the Falling Tower` Ritual, tossing a catalyst item onto the Master + Ritual Stone, and having enough Life Essence within the activator's Blood Network to pay the cost. + + +## Adding Meteors +Just like other recipe types, the Meteor also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.bloodmagic.Meteor.recipeBuilder() +``` + +Adding the catalyst: (requires exactly 1) +```groovy +.catalystStack(ItemStack) +.catalyst(ItemStack) +``` + +Adding meteor components: (requires one or more) +```groovy +.component(int weight, String ore) // The string name of the oredict. +.component(String ore, int weight) // weight and ore can be in either order. +.component(int weight, OreDictIngredient ore) +.component(OreDictIngredient ore, int weight) +``` + +Setting Explosion Strength: (optional (default is 0)) +```groovy +.explosionStrength(float) +``` + +Setting Life Essence cost: (optional (default is 1000000)) +```groovy +.cost(int) +``` + +Setting radius: (requires a radius greater than 0) +```groovy +.radius(int) +``` + +Register the meteor: (returns `WayofTime.bloodmagic.meteor.Meteor`) +```groovy +.register() +``` + +### Example +```groovy +mods.bloodmagic.Meteor.recipeBuilder() + .catalyst(item("minecraft:gold_ingot")) + .component(ore("oreIron"), 20) // 10% iron ore + .component(ore("oreDiamond"), 10) // 10% diamond ore + .component(ore("stone"), 70) // 70% stone + .radius(7) + .explosionStrength(10) + .cost(1000) + .register() + +mods.bloodmagic.Meteor.recipeBuilder() + .catalyst(item("minecraft:clay")) + .component("blockClay", 10) // (1) + .radius(20) + .explosionStrength(20) + .register() // Has the default Life Essence cost of 1000000 +``` + +1. Since there is only one component, it will be 100% clay blocks regardless of weight. + +## Removing Meteors +Removes the Meteor that matches the given catalyst item: +```groovy +mods.bloodmagic.Meteor.remove(ItemStack) +mods.bloodmagic.Meteor.removeByInput(ItemStack) +mods.bloodmagic.Meteor.removeByCatalyst(ItemStack) +``` + +Removes all registed Meteors: +```groovy +mods.bloodmagic.Meteor.removeAll() +``` + +### Example +```groovy +// Removes the default Meteor with a catalyst of an Diamond Block. +mods.bloodmagic.Meteor.remove(item("minecraft:diamond_block")) +``` diff --git a/docs/zh/groovyscript/mods/bloodmagic/sacrificial.md b/docs/zh/groovyscript/mods/bloodmagic/sacrificial.md new file mode 100644 index 0000000..03d3917 --- /dev/null +++ b/docs/zh/groovyscript/mods/bloodmagic/sacrificial.md @@ -0,0 +1,66 @@ +# Blood Magic Entity Sacrifice Amount + +Package: +```groovy +mods.bloodmagic.Sacrificial +``` + +!!! Note + Affects the value of Entities sacrificed to the Blood Altar via Sacrificial Dagger or Well of Suffering. + Amount gained is `value * HP`. If not set, the default value of `25` is used for the Sacrificial Dagger, + and configurable via config with a default value of `25` for the Well of Suffering Ritual. + +## Setting the Sacrificial value of Entities +Just like other recipe types, Sacrificial also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.bloodmagic.Sacrificial.recipeBuilder() +``` + +Set the target Entity. +```groovy +.entity(String) +.entity(ResourceLocation) +.entity(Entity) +``` + +Set the Blood amount per HP when Sacrificed: +```groovy +.value(int) +``` + +Register recipe: +```groovy +.register() +``` + +### Example +```groovy +mods.bloodmagic.Sacrificial.recipeBuilder() + .entity("minecraft:enderman") // If the Entity is already registered, overrides the prior value. + .value(1000) + .register() +``` + +## Removing Recipes +!!! Danger "Warning" + Some Entities are set to 0 by default to prevent exploits - for example, Vanilla's Armor Stand. + Removing these Sacrificial values may introduce unintentional exploits. + +Removes the recipe that matches the given catalyst item: +```groovy +mods.bloodmagic.Sacrificial.remove(String) +mods.bloodmagic.Sacrificial.remove(ResourceLocation) +mods.bloodmagic.Sacrificial.remove(Entity) +``` + +Removes all registed Entities, resetting them to the default value: +```groovy +mods.bloodmagic.Sacrificial.removeAll() +``` + +### Example +```groovy +// Removes the default Sacrificial value of a Villager. +mods.bloodmagic.Sacrificial.remove("minecraft:villager") +``` diff --git a/docs/zh/groovyscript/mods/bloodmagic/tartaric_forge.md b/docs/zh/groovyscript/mods/bloodmagic/tartaric_forge.md new file mode 100644 index 0000000..5d9e8e9 --- /dev/null +++ b/docs/zh/groovyscript/mods/bloodmagic/tartaric_forge.md @@ -0,0 +1,96 @@ +# Blood Magic Tartaric Forge + +Package: +```groovy +mods.bloodmagic.TartaricForge +``` + +!!! Note + The Tartaric Forge requires a Tartaric Gem to provide Demonic Will to the recipe. Only Raw Will can be used. + Each recipe requires a minimum amount of Will inside the Gem to start, and consumes a smaller amount of Will on completion. + +## Adding Recipes +Just like other recipe types, the Tartaric Forge also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.bloodmagic.TartaricForge.recipeBuilder() +``` + +Adding inputs: (requires 1-4) +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Setting the amount of souls removed from the Tartaic Gem: (required) +```groovy +.drain(int) +.soulDrain(int) +``` + +Setting the amount of souls required in the Tartaric Gem: (required (if less than the amount removed, set to the amount removed)) +```groovy +.minimumSouls(int) +``` + +Adding output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Register recipe: (returns `WayofTime.bloodmagic.api.impl.recipe.RecipeTartaricForge`) +```groovy +.register() +``` + +### Example +```groovy +mods.bloodmagic.TartaricForge.recipeBuilder() + .input(item("minecraft:clay"), item("minecraft:clay"), item("minecraft:clay"), item("minecraft:clay")) + .output(item("minecraft:gold_ingot")) + .drain(5) + .minimumSouls(10) + .register() + +mods.bloodmagic.TartaricForge.recipeBuilder() + .input(item("minecraft:gold_ingot"), item("minecraft:clay")) + .output(item("minecraft:diamond")) + .soulDrain(200) + .minimumSouls(500) + .register() +``` + +## Removing Recipes + +This removes ALL recipes which have all input ingredients[^1]: +```groovy +mods.bloodmagic.TartaricForge.removeByInput(NonNullList) +mods.bloodmagic.TartaricForge.removeByInput(IIngredient...) +``` + +This removes ALL recipes that match the given output: +```groovy +mods.bloodmagic.TartaricForge.removeByOutput(ItemStack) +``` + +Removes all registed Tartaric Forge recipes: +```groovy +mods.bloodmagic.TartaricForge.removeAll() +``` + +### Example +```groovy +// Removes all recipes that have inputs Cauldron, Stone, Lapis, and Diamond. (1) +mods.bloodmagic.TartaricForge.removeByInput(item("minecraft:cauldron"), item("minecraft:stone"), item("minecraft:dye:4"), item("minecraft:diamond")) +// Removes all recipes that have inputs including both Gunpowder and Redstone. (2) +mods.bloodmagic.TartaricForge.removeByInput(item("minecraft:gunpowder"), item("minecraft:redstone")) +// Removes all recipes that output Blood Magic's Demon Crystal. +mods.bloodmagic.TartaricForge.removeByOutput(item("bloodmagic:demon_crystal")) +``` + +1. This would remove the recipe for the Demon Crucible. +2. This would the remove recipes for both Arcane Ashes and Binding Reagent. + + +[^1]: Note that a recipe with inputs "ABCD" would match with a target containing only "AB". diff --git a/docs/zh/groovyscript/mods/bloodmagic/tranquility.md b/docs/zh/groovyscript/mods/bloodmagic/tranquility.md new file mode 100644 index 0000000..665b463 --- /dev/null +++ b/docs/zh/groovyscript/mods/bloodmagic/tranquility.md @@ -0,0 +1,91 @@ +# Blood Magic Tranquility Amount + +Package: +```groovy +mods.bloodmagic.Tranquility +``` + +!!! Note + Tranquility is used to improve the effect of an Incense Altar, which increases the amount of Life Essenced gained when using a Dagger of Self-Sacrifice. + The Incense Altar recives diminishing effects from additional sources of a type. + + +## Adding Tranquility to blocks +Just like other recipe types, Tranquility also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.bloodmagic.Tranquility.recipeBuilder() +``` + +Setting the target block: (set either the exact blockstate, or all blockstates of a block) +```groovy +.blockstate(IBlockState) +.block(Block) +``` + +Tranquility types are one of the following: PLANT, CROP, TREE, EARTHEN, WATER, FIRE, LAVA. + +Set the Tranquility type: +```groovy +.tranquility(EnumTranquilityType) +.tranquility(String/*(1)!*/) +``` + +1. Must be one of the following: PLANT, CROP, TREE, EARTHEN, WATER, FIRE, LAVA. + + +Set value provided to the given Tranquility type: +```groovy +.value(double) +``` + +Register recipe: +```groovy +.register() +``` + +### Example +```groovy +mods.bloodmagic.tranquility.recipeBuilder() + .block(blockstate("minecraft:obsidian").getBlock()) + .tranquility("LAVA") + .value(10) + .register() + +mods.bloodmagic.tranquility.recipeBuilder() + .block(blockstate("minecraft:obsidian").getBlock()) + .tranquility("WATER") + .value(10) + .register() + +mods.bloodmagic.tranquility.recipeBuilder() + .blockstate(blockstate("minecraft:obsidian")) + .tranquility("LAVA") + .value(500) + .register() +``` + +## Removing Recipes +Removes the given Blockstate or all blockstates of a given Block from the target Tranquility type: +```groovy +mods.bloodmagic.Tranquility.remove(Block, String/*(1)!*/) +mods.bloodmagic.Tranquility.remove(IBlockState, String/*(2)!*/) +mods.bloodmagic.Tranquility.remove(Block, EnumTranquilityType) +mods.bloodmagic.Tranquility.remove(IBlockState, EnumTranquilityType) +``` + +1. Must be one of the following: PLANT, CROP, TREE, EARTHEN, WATER, FIRE, LAVA. +2. Must be one of the following: PLANT, CROP, TREE, EARTHEN, WATER, FIRE, LAVA. + +Removes all registed Tranquility blockstates: +```groovy +mods.bloodmagic.Tranquility.removeAll() +``` + +### Example +```groovy +// Removes the target blockstate of netherrack from the FIRE Tranquility type. +mods.bloodmagic.tranquility.remove(blockstate("minecraft:netherrack"), "FIRE") +// Removes all blockstates of dirt from the EARTHEN Tranquility type. +mods.bloodmagic.tranquility.remove(blockstate("minecraft:dirt").getBlock(), "EARTHEN") +``` diff --git a/docs/zh/groovyscript/mods/enderio/alloy_smelter.md b/docs/zh/groovyscript/mods/enderio/alloy_smelter.md new file mode 100644 index 0000000..4093db5 --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/alloy_smelter.md @@ -0,0 +1,66 @@ +# EnderIO Alloy Smelter + +## Adding Recipes +Just like other recipe types, the Alloy Smelter also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.enderio.AlloySmelter.recipeBuilder() +``` + +Adding inputs: (requires 1-3) +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Adding output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Set required machine tier: (optional) +```groovy +.tierAny() // Default: Allows any tier +.tierSimple() +.tierNormal() +.tierEnhanced() +``` + +Set required total energy: (optional (default is 5000)) +```groovy +.energy(int) +``` + +Set xp chance: (optional (default is 0)) +````groovy +.xp(float) // 0.0 = 0% / 1.0 = 100% +```` + +Register recipe: (returns nothing) +````groovy +.register() +```` + +### Example +````groovy +mods.enderio.AlloySmelter.recipeBuilder() + .input(item('minecraft:iron_ingot'), ore('ingotGold'), item('minecraft:clay_ball') * 64) + .output(item('minecraft:nether_star')) + .tierNormal() // recipes requires normal or enhanced tier + .energy(6000) + .xpChance(0.5f) + .register() +```` + +## Removing Recipes +This removes ALL recipes that match the given output: +````groovy +mods.enderio.AlloySmelter.remove(ItemStack output) +```` + +### Example +````groovy +// removes Vibrant Alloy from Alloy Smelter +mods.enderio.AlloySmelter.remove(item('enderio:item_alloy_ingot:2')) +```` diff --git a/docs/zh/groovyscript/mods/enderio/combustion_gen.md b/docs/zh/groovyscript/mods/enderio/combustion_gen.md new file mode 100644 index 0000000..bdcd078 --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/combustion_gen.md @@ -0,0 +1,40 @@ +# EnderIO Combustion Generator +GroovyScript allows you to add and remove custom fuels and coolants for the Combustion Generator. + +## Adding fuels + +````groovy +mods.enderio.CombustionGen.addFuel(FluidStack fuel, int rfPerCycle, int burnTime) +```` +Example +````groovy +mods.enderio.CombustionGen.addFuel(fluid('water'), 100, 100) +```` + +## Removing fuels +````groovy +mods.enderio.CombustionGen.removeFuel(FluidStack fuel) +```` +Example +````groovy +mods.enderio.CombustionGen.removeFuel(fluid('rocket_fuel')) +```` + +## Adding coolants + +````groovy +mods.enderio.CombustionGen.addCoolant(FluidStack fuel, float degreesCoolingPerMb) +```` +Example +````groovy +mods.enderio.CombustionGen.addCoolant(fluid('lava'), 20f) +```` + +## Removing coolants +````groovy +mods.enderio.CombustionGen.removeCoolant(FluidStack fuel) +```` +Example +````groovy +mods.enderio.CombustionGen.removeCoolant(fluid('ender_distillation')) +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/enderio/enchanter.md b/docs/zh/groovyscript/mods/enderio/enchanter.md new file mode 100644 index 0000000..952bb59 --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/enchanter.md @@ -0,0 +1,68 @@ +# EnderIO Enchanter +GroovyScript allows you to add and remove recipes for enchantments in the enchanter with custom book and lapis items. +EnderIO automatically calculates costs and adds recipes for each level of the enchantment. + +## Adding Recipes +Just like other recipe types, the Enchanter also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.enderio.Enchanter.recipeBuilder() +``` + +Set input: (required) +```groovy +.input(IIngredient) +``` + +Set enchantment: (required) +```groovy +.enchantment(Enchantment) +``` + +Set input amount per level: (optional (default is amount of input ingredient)) +````groovy +.amountPerLevel(int) +```` + +Set xp multiplier: (optional (default is 1)) +````groovy +.xpCostMulitplier(double) +```` + +Set custom book item: (optional (default is Book and Quill)) +```groovy +.customBook(IIngredient) +``` + +Set custom lapis item: (optional (default is Lapis Lazuli)) +```groovy +.customLapis(IIngredient) +``` + +Register recipe: (returns a `crazypants.enderio.base.recipe.enchanter.EnchanterRecipe` instance if successful) +````groovy +.register() +```` + +### Example +````groovy +mods.enderio.Enchanter.recipeBuilder() + .enchantment(enchantment('efficiency')) + .input(item('minecraft:nether_star') * 2) + .xpCostMultiplier(3f) + .customBook(item('enderio:item_dark_steel_upgrade:0')) + .customLapis(item('minecraft:poisonous_potato')) + .register() +```` + +## Removing Recipes +This removes a recipe that match the given input: +````groovy +mods.enderio.Enchantment.remove(Enchantment) +```` + +### Example +````groovy +// removes all efficiency enchantment recipes +mods.enderio.Enchantment.remove(enchantment('efficiency')) +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/enderio/sag_mill.md b/docs/zh/groovyscript/mods/enderio/sag_mill.md new file mode 100644 index 0000000..781a54b --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/sag_mill.md @@ -0,0 +1,73 @@ +# EnderIO SAG Mill + +## Adding Recipes +Just like other recipe types, the SAG Mill also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.enderio.SagMill.recipeBuilder() +``` + +Adding inputs: (requires exactly 1) +```groovy +.input(IIngredient) +``` + +Adding output: (requires 1 - 4) +```groovy +.output(ItemStack) +.output(ItemStack...) +.output(Collection) +``` + +Adding output with chance: (counts as output) +```groovy +.output(ItemStack itemStack, float chance) +``` + +Set required machine tier: (optional) +```groovy +.tierAny() // Default: Allows any tier +.tierSimple() +.tierNormal() +.tierEnhanced() +``` + +Set required total energy: (optional (default is 5000)) +```groovy +.energy(int) +``` + +Set recipe bonus type: (unknown behaviour) TODO +````groovy +.bonusTypeNone() // Default +.bonusTypeMultiply() +.bonusTypeChance() +```` + +Register recipe: (returns a `crazypants.enderio.base.recipe.Recipe` instance if successful) +````groovy +.register() +```` + +### Example +````groovy +mods.enderio.SagMill.recipeBuilder() + .input(item('minecraft:nether_star')) + .output(item('minecraft:diamond')) // guaranteed diamond + .output(item('minecraft:nether_star'), 0.05f) // 5% chance to get nether star back + .tierNormal() // recipes requires normal or enhanced tier + .energy(6000) + .register() +```` + +## Removing Recipes +This removes a recipe that match the given input: +````groovy +mods.enderio.SagMill.removeByInput(ItemStack input) +```` + +### Example +````groovy +// removes wheat milling in Sag Mill +mods.enderio.SagMill.removeByInput(item('minecraft:wheat')) +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/enderio/slice_n_splice.md b/docs/zh/groovyscript/mods/enderio/slice_n_splice.md new file mode 100644 index 0000000..4b6729b --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/slice_n_splice.md @@ -0,0 +1,63 @@ +# EnderIO Slice'n'Splice + +## Adding Recipes +Just like other recipe types, the Soul Binder also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.enderio.SliceNSplce.recipeBuilder() +``` + +Adding inputs: (requires 1 - 6)
+Here the order of inputs is important. The slot order is from left to right and top to bottom. +All Slice'n'Splice recipes are "shaped". Meaning all inputs must go in their specified slot. Empty ingredients aka. `null` are allowed. +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Adding output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Set xp chance: (optional (default is 0))
// needs to be tested and confirmed +````groovy +.xp(float) // 0.0 = 0% / 1.0 = 100% +```` + +Set required total energy: (optional (default is 5000)) +```groovy +.energy(int) +``` + +Register recipe: (returns a `crazypants.enderio.base.recipe.Recipe` instance if successful) +````groovy +.register() +```` + +### Example +Here the inputs are split into two `input()` calls. This helps to visualize the recipe. +````groovy +mods.enderio.SliceNSplice.recipeBuilder() + .input(item('minecraft:diamond'), item('minecraft:gold_ingot'), item('minecraft:diamond')) + .input(item('minecraft:clay_ball'), item('minecraft:nether_star'), item('minecraft:clay_ball')) + .output(item('minecraft:totem_of_undying')) + .energy(9999) + .register() +```` +The example results in the following recipe: + +![slice_n_splice_recipe](../../../assets/images/slice_n_splice_recipe.png) + +## Removing Recipes +This removes a recipe that match the given input: +````groovy +mods.enderio.SliceNSplice.remove(ItemStack output) +```` + +### Example +````groovy +// removes slice n splice for tormented enderman head +mods.enderio.SliceNSplice.remove(item('enderio:block_enderman_skull:2')) +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/enderio/soul_binder.md b/docs/zh/groovyscript/mods/enderio/soul_binder.md new file mode 100644 index 0000000..6d223ef --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/soul_binder.md @@ -0,0 +1,64 @@ +# EnderIO Soul Binder + +## Adding Recipes +Just like other recipe types, the Soul Binder also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.enderio.SoulBinder.recipeBuilder() +``` + +Adding inputs: (requires exactly 1) +```groovy +.input(IIngredient) +``` + +Adding output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Adding soul vial inputs:
+Adds entity souls in form of soul vials to the input +````groovy +.entitySoul(String entityName) +.entitySoul(String... entityNames) +.entitySoul(Collection entityNames) +```` + +Set input xp levels: (optional (default is 2)) +````groovy +.xp(int) +```` + +Set required total energy: (optional (default is 5000)) +```groovy +.energy(int) +``` + +Register recipe: (returns a `crazypants.enderio.base.recipe.Recipe` instance if successful) +````groovy +.register() +```` + +### Example +````groovy +mods.enderio.SoulBinder.recipeBuilder() + .input(item('minecraft:diamond')) + .entitySoul('minecraft:zombie') // zombie in a soul vial + .output(item('minecraft:nether_star')) + .xp(10) // requires 10 xp levels + .energy(6000) + .register() +```` + +## Removing Recipes +This removes a recipe that match the given input: +````groovy +mods.enderio.SoulBinder.remove(ItemStack output) +```` + +### Example +````groovy +// removes soul binding for enticing crystal +mods.enderio.SoulBinder.remove(item('enderio:item_material:17')) +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/enderio/tank.md b/docs/zh/groovyscript/mods/enderio/tank.md new file mode 100644 index 0000000..cf7d399 --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/tank.md @@ -0,0 +1,31 @@ +# EnderIO Tank +EnderIO Tanks can not only store fluids but also empty and fill fluid containers. +You can add custom fill/drain recipes to get custom behaviour. For example you can add a `water + sponge = wet sponge` recipe. + +## Adding Recipes + +### Filling +Adds a recipe that will fill the input `IIngredient` with the input `FluidStack` and results in the output `ItemStack`. +````groovy +mods.enderio.Tank.addFill(IIngredient input, FluidStack inputFluid, ItemStack output) +```` + +### Draining +Adds a recipe that will drain the output `FluidStack` from the input `IIngredient` and results in the output `ItemStack`. +````groovy +mods.enderio.Tank.addDrain(IIngredient input, FluidStack outputFluid, ItemStack output) +```` + +## Removing Recipes + +### Filling +Removes a filling recipe: +````groovy +mods.enderio.Tank.removeFill(FluidStack inputFluid, ItemStack output) +```` + +### Draining +Removes a filling recipe: +````groovy +mods.enderio.Tank.removeDrain(FluidStack outputFluid, ItemStack output) +```` diff --git a/docs/zh/groovyscript/mods/enderio/vat.md b/docs/zh/groovyscript/mods/enderio/vat.md new file mode 100644 index 0000000..20dd2bf --- /dev/null +++ b/docs/zh/groovyscript/mods/enderio/vat.md @@ -0,0 +1,74 @@ +# EnderIO Vat + +## Adding Recipes +Just like other recipe types, the Vat also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.enderio.Vat.recipeBuilder() +``` + +Adding input: (requires exactly 1) +```groovy +.input(FluidStack) +``` + +Adding output: (requires exactly 1) +```groovy +.output(FluidStack) +``` + +Set base multiplier: (optional (default is 1)) +````groovy +.baseMultiplier(float) +```` + +Adding left item input: (optional) +````groovy +.itemInputLeft(ItemStack item, float multiplier) +```` + +Adding right item input: (optional) +````groovy +.itemInputRight(ItemStack item, float multiplier) +```` + +Set required machine tier: (optional (default is any)) +```groovy +.tierAny() // Default: Allows any tier +.tierNormal() +.tierEnhanced() +``` + +Set required total energy: (optional (default is 5000)) +```groovy +.energy(int) +``` + +Register recipe: (returns nothing) +````groovy +.register() +```` + +### Example +````groovy +mods.enderio.Vat.recipeBuilder() + .input(fluid('water') * 500) + .output(fluid('lava') * 500) + .itemInputLeft(item('minecraft:diamond'), 1.5) + .itemInputRight(item('minecraft:iron_ingot'), 0.7) + .itemInputRight(item('minecraft:gold_ingot'), 7) + .baseMultiplier(1) + .register() +```` + +## Removing Recipes +This removes ALL recipes that match the given output: +````groovy +mods.enderio.Vat.remove(ItemStack output) +```` + +### Example +````groovy +// removes Nutrient Distillation recipe from the Vat +mods.enderio.Vat.remove(fluid('nutrient_distillation')) +```` diff --git a/docs/zh/groovyscript/mods/gtceu/heating_coils.md b/docs/zh/groovyscript/mods/gtceu/heating_coils.md new file mode 100644 index 0000000..0e3d959 --- /dev/null +++ b/docs/zh/groovyscript/mods/gtceu/heating_coils.md @@ -0,0 +1 @@ +[WIP] \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/gtceu/material.md b/docs/zh/groovyscript/mods/gtceu/material.md new file mode 100644 index 0000000..c84f5e8 --- /dev/null +++ b/docs/zh/groovyscript/mods/gtceu/material.md @@ -0,0 +1,929 @@ +# Materials + +First of all, the best docs is the source +itself: [Source](https://github.com/GregTechCEu/GregTech/blob/master/src/main/java/gregtech/api/unification/material/Material.java) + +!!! Note +This docs goes of, of GroovyScript version 0.4.0 and GTCEu 2.5.4 + +## Introduction + +### Firstly, you should know what a **Material** actually is. + +Material is the basis of CEu. It defines a substance and its properties. It usually takes the form of an **element** ( +i.e. Oxygen) or a **compound** (i.e. Water), but it can also take the form of something weird like the **Eye of Ender**. + +### Which Properties are defined? + +The **Material** specifies whether it has a **Fluid** property, **plasma** property, **dust** property, **gem** property +or **ingot** property. When it has a specific property, GTCEu will register the corresponding item or fluid +automatically. Some properties will require others, like **Ingot** requiring **Dust**. + +### What else does it define? + +You can additionally define **Colors**, **Flags** (indicators for specific attributes), **MaterialIconSet** (textures), +**CableProperties**, **Element**, **Formula** (tooltips), **Components** and more. Don't worry, they are not +complicated, and will be introduced in detail below. + +*** + +### Retrieving Existing Materials + +There are two good ways to do this: the simple way and the not simple way. + +#### The Simple Way + +This method requires the Material to first exist. This method goes off of the material's **Unlocalized Name**, which is +the name used before it is translated in a lang file. You can use the `/gs hand` command to retrieve the material of +items. + +```groovy +// assigns the variable my_material to a Material called Steel. +def my_material = material('steel') +``` + +#### The Not Simple Way + +This method also works exactly the same as before, but the former is much easier and more convenient. It is **strongly** +recommended to use the **Simple Way**. + +```groovy +// import the Material class to use Materials +import gregtech.api.unification.material.Materials + +// assigns the variable my_material to a Material called Steel. +var my_material = Materials.Steel +``` + +*** + +## Creating a New Material + +GregTech materials must be created in the `preInit` loader. Additionaly they need to be registered (or modified) inside +an event. + +```groovy +// import the material event +import gregtech.api.GregTechAPI.MaterialEvent + +// register an event listener +event_manager.listen { MaterialEvent event -> + // create materials here +} +``` + +Note that when the event runs GregTech materials are already created, but addon materials might not. To modify addon +materials (but don't register) use `PostMaterialEvent` instead of `MaterialEvent`. + +Materials are created using a system called `MaterialBuilder`. If you've used GregTech CE and CEu's system for adding +machine recipes, this will feel very similar. + +All Materials need a number `id` and a `name`. The `id` must be from 0-32767, however, Ids 32000+ are reserved for pack +makers. No add-on developer is supposed to use ids in that range, so there should be no worry about conflicts. 700+ +materials is more than all of CEu uses by itself too! The `name` must be all lowercase, contain no spaces, and not have +special characters (@, %, etc). + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material + +// import the Material class for making new materials + +event_manager.listen { MaterialEvent event -> + /* + * This does not do much on its own. + * It assigns a variable to a new MaterialBuilder, with an id of 32000, and a name of "my_material". + */ + def my_material_builder = new Material.Builder(32000, "my_material") +} +``` + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material + +event_manager.listen { MaterialEvent event -> + /* + * This will not work quite yet. Read on to learn what else this needs! + * It would assign a variable to a new Material, with an id of 32001, and a name of "my_real_material". + * + * Use .build() to finish building a material. This is what actually creates it. + */ + def my_material = new Material.Builder(32001, "my_real_material").build() +} +``` + +### Adding Material Properties. + +This is where materials really start to take shape. All of the following methods are called on +a `new Material.Builder()`. +Scroll down to the first example to see how to do this. Each method can be chained together, one after the other, until +the desired material is all specified. It is then built and the end and returns a finished Material. + +**fluid**: _`fluid(@Optional String type, @Optional boolean hasBlock)`_ + +Adds a `FluidProperty` to this Material, which generates a fluid. +The following two parameters are optional. If you want to modify a later optional parameter, you must specify a value +for every preceding one. Note that you do not need to specify anything when using `fluid()`. + +* `@Optional type` - The Material.FluidType of this Material, either `"fluid"` or `"gas"`. +* `@Optional hasBlock` - If `true`, create a Fluid Block for this Material, which can be placed in the world. + +**plasma**: _`plasma()`_ + +Adds a `PlasmaProperty` to this Material, which generates a plasma. +It does not require a `FluidProperty`, but can be used in conjunction with it. + +**dust**: _`dust(@Optional int harvestLevel, @Optional int burnTime)`_ + +Adds a `DustProperty` to this Material, which generates a Dust, Small Dust, and Tiny Dust. +**Is automatically applied by `IngotProperty` and `GemProperty`**. + +* `@Optional harvestLevel` - The Harvest Level of the Material's block when mining it. If the Material also has + a `ToolProperty`, this value will also be used to determine the tool's Mining Level. +* `@Optional burnTime` - The Burn Time (in ticks) of this Material as a Furnace Fuel. If not specified, the material * + *cannot** be used as a furnace fuel. + +**ingot**: _`ingot(@Optional int harvestLevel, @Optional int burnTime)`_ + +Adds an `IngotProperty` to this Material, which generates an Ingot. It automatically adds a `DustProperty`. **This is +INCOMPATIBLE with `GemProperty`.** + +* `@Optional harvestLevel` - The Harvest Level of the Material's block when mining it. If the Material also has + a `ToolProperty`, this value will also be used to determine the tool's Mining Level. If this Material already had a + Harvest Level defined, it will be overridden. +* `@Optional burnTime` - The Burn Time (in ticks) of this Material as a Furnace Fuel. If not specified, the material * + *cannot** be used as a furnace fuel. If this Material already had a Burn Time defined, it will be overridden. + +**gem**: _`gem(@Optional int harvestLevel, @Optional int burnTime)`_ + +Adds a `GemProperty` to this Material, which generates all types of GregTech Gems. It automatically adds +a `DustProperty`. **This is INCOMPATIBLE with `IngotProperty`.** + +* `@Optional harvestLevel` - The Harvest Level of the Material's block when mining it. If the Material also has + a `ToolProperty`, this value will also be used to determine the tool's Mining Level. If this Material already had a + Harvest Level defined, it will be overridden. +* `@Optional burnTime` - The Burn Time (in ticks) of this Material as a Furnace Fuel. If not specified, the material * + *cannot** be used as a furnace fuel. If this Material already had a Burn Time defined, it will be overridden. + +**polymer**: _`polymer(@Optional int harvestLevel)`_ + +Adds a `PolymerProperty` to this material, which determines if special lang entries should be used for its items: such +as "Sheet" instead of "Plate." This requires a `FluidProperty`. + +* `@Optional harvestLevel` - The Harvest Level of the Material's block when mining it. If the Material also has + a `ToolProperty`, this value will also be used to determine the tool's Mining Level. If this Material already had a + Harvest Level defined, it will be overridden. + +**color**: _`color(int color)`_ + +Set the Color of this Material. Defaults to 0xFFFFFF unless `colorAverage()` is used. Colors can be supplied in either +of the following formats: the integer value, such as `16777215` or as `0xFFFFFF`. This is RGB, with no alpha channel. + +* `color` - The RGB color to use for the Material. + +**colorAverage**: _`colorAverage()`_ + +The Material's Color will be a weighted average of all of the Components' colors in the Material. + +**rotorStats**: _`rotorStats(float speed, float damage, int durability)`_ + +Set the stats for turbine rotors which are made from this Material. Speed and Damage are used according to a formula, +and do not reflect those two user-facing properties directly. + +* `speed` - Speed of the rotor. +* `damage` - Damage of the rotor. +* `durability` - Durability of the rotor. + +**blastTemp**: +_`blastTemp(int temp, @Optional String gasTier, @Optional int eutOverride, @Optional int durationOverride)`_ + +Sets the Blast Furnace Temperature of this Material. If below 1000 Kelvin, Primitive Blast Furnace recipes will be also +added. If above 1750 Kelvin, a Hot Ingot and its appropriate Vacuum Freezer recipe will be also added. If a Material +with this Property has a Fluid, its temperature will be set to this if it is currently using the default Fluid +temperature. + +* `temp` - Blast Furnace Temperature in Kelvin required to heat up the material. Just like in real life, this value * + *cannot** be less than `0`. +* `@Optional gasTier` - The tier of gas used to smelt in the Electric Blast Furnace. Available options + are: `"LOW"`, `"MID"`, `"HIGH"`, `"HIGHER"`, `"HIGHEST`. +* `@Optional eutOverride` - Sets the EU/t of autogenerated Electric Blast Furnace recipes to the specified value. +* `@Optional durationOverride` - Sets the base duration in ticks of autogenerated Electric Blast Furnace recipes to the + specified value. + +**ore**: _`ore(@Optional int oreMultiplier, @Optional int byproductMultiplier, @Optional boolean emissive)`_ + +Adds Ore Blocks, Crushed, Crushed Purified, Crushed Centrifuged, Impure Dust, and Purified Dust for this Material. + +* `@Optional oreMultiplier` - Crushed Ore output amount multiplier for Ore -> Crushed Ore Maceration. Default: 1 (no + multiplier). +* `@Optional byproductMultiplier` - Byproduct output amount multiplier for Crushed Ore processing of any kind. Default: + 1 (no multiplier). +* `@Optional emissive` - Should ore block use emissive texturing (see below image). Default: false. + +![](https://user-images.githubusercontent.com/18493855/143446969-80de6354-ad12-4170-81f5-071d6c0bb7cd.png) + +**washedIn**: _`washedIn(Material material, @Optional int washedAmount)`_ + +Sets what the material's crushed ore is washed in using the Chemical Bath. Requires `OreProperty` to be set. + +* `material` - The Material in which this material is to be washed. The parameter's Material requires `FluidProperty` to + be set. +* `@Optional washedAmount` - The amount of fluid the crushed ore will be washed in. Default: 100mB. + +**separatedInto**: _`separatedInto(Material... materials)`_ + +Sets the products of processing this Material's Purified Dust in an Electromagnetic Separator. Requires `OreProperty` to +be set. + +* `materials` - An array of materials which is output in the magnetic separator. This already includes the Material + itself automatically. + +**addOreByproducts**: _`addOreByproducts(Material... materials)`_ + +Sets the Ore Byproducts of this Material. Requires `OreProperty` to be set. + +* `materials` - An array of materials which are used for various ore processing byproduct outputs. + +**oreSmeltInto**: _`oreSmeltInto(Material material)`_ + +Sets the Direct Smelting product in a vanilla furnace of this Material's ore related forms. Requires `OreProperty` to be +set. + +* `material` - The material to output in the furnace. Can have `IngotProperty`, `GemProperty`, or `DustProperty`. + +**polarizesInto**: _`polarizesInto(Material material)`_ + +Sets the Polarizer product of this Material. Requires `IngotProperty` to be set. + +* `material` - The material to output when polarized. + +**arcSmeltInto**: _`arcSmeltInto(Material material)`_ + +Sets the Arc Furnace product of this Material. Requires `IngotProperty` to be set. + +* `material` - The material to output when arc furnaced. By default, the material will output itself. + +**macerateInto**: _`macerateInto(Material material)`_ + +Sets the Macerator product of this Material. Requires `IngotProperty` to be set. + +* `material` - The material to output when macerated. By default, the material will output itself. + +**fluidTemp**: _`fluidTemp(int temp)`_ + +Sets the temperature of the fluid of this Material. Requires `FluidProperty` to be set. + +* `temp` - The temperature in Kelvin to set. Like in real life, this value **cannot** be less than `0`. + +**cableProperties**: _`cableProperties(long voltage, int amperage, int loss, @Optional boolean isSuperCon)`_ + +Adds cables and wires of this Material. Requires `IngotProperty` to be set. + +* `voltage` - The voltage amount a 1x wire/cable can transfer. +* `amperage` - The amperage amount a 1x wire/cable can handle. +* `loss` - The loss per block a 1x **wire** will have. Cables have this value divided by 2, but will never be lossless + unless set to `0`. +* `@Optional isSuperCon` - Whether this is a superconductor. This will prevent cables from generating, and have a loss + of `0`. + +**fluidPipeProperties**: _`fluidPipeProperties(int maxTemp, int throughput, boolean gasProof)`_ + +Adds Fluid Pipes of this Material. Requires `IngotProperty` to be set. + +* `maxTemp` - Sets the maximum allowed fluid temperature in the pipe. Pipes burn/vanish when fluid is too hot. +* `throughput` - Sets the maximum flowrate through the pipes. This value multiplied by `20` is the maximum rate for the + Tiny Pipe. Each subsequent pipe is further multiplied by `2` over the previous. +* `gasProof` - If `true`, the pipe is able to transfer fluids with the Gas state. Else, they will vaporize. + +**fluidPipeProperties**: +_`fluidPipeProperties(int maxTemp, int throughput, boolean gasProof, boolean acidProof, boolean cryoProof, boolean plasmaProof)`_ + +Adds Fluid Pipes of this Material. Requires `IngotProperty` to be set. + +* `maxTemp` - Sets the maximum allowed fluid temperature in the pipe. Pipes burn/vanish when fluid is too hot. +* `throughput` - Sets the maximum flowrate through the pipes. This value multiplied by `20` is the maximum rate for the + Tiny Pipe. Each subsequent pipe is further multiplied by `2` over the previous. +* `gasProof` - If `true`, the pipe is able to transfer fluids with the Gas state. Else, they will vaporize. +* `acidProof` - If `true`, the pipe is able to transfer fluids with the Acidic attribute. Else, they will destroy the + pipe. +* `cryoProof` - If `true`, the pipe is able to transfer fluids with the Cryogenic attribute. Else, they will vaporize. +* `plasmaProof` - If `true`, the pipe is able to transfer fluids with the Plasma state, regardless of the fluid pipe's + maximum temperature. Else, they will destroy the pipe. + +**itemPipeProperties**: _`itemPipeProperties(int priority, float stacksPerSec)`_ + +Adds item pipes of this Material. Requires `IngotProperty` to be set. + +* `priority` - Sets the priority for the pipe. Items will take the path with the lowest priority. This value is used for + the Normal Pipe. The Small Pipe has this value multiplied by `1.5`, and the Large Pipe has this value multiplied + by `0.75`. +* `stacksPerSec` - Sets the maximum transfer rate in stacks of 64 items per second. This value is used for the Normal + Pipe. Small Pipes have this value multiplied by `0.5`. Large Pipes have this value multiplied by `2`. + +#### Tool stats +Tool stats are slightly more complicated than in CT, but also more configurable.
+**toolStats**: _`toolStats(ToolProperty property)`_
+As you can see there is only one method which accepts a ToolProperty. You can create it like this: +````groovy +import gregtech.api.unification.material.properties.ToolProperty + +ToolProperty property = ToolProperty.Builder.of(float speed, float damage, int durability, int harvestLevel).build() +```` +Before calling `build()` at the end you can call several other methods to further customize your tool stats +````groovy +ToolProperty property = ToolProperty.Builder.of(float speed, float damage, int durability, int harvestLevel) + .attackSpeed(float attackSpeed) // self explanatory + .ignoreCraftingTools() /*(1)*/ + .unbreakable() // self explanatory + .enchantment(Enchantment enchantment, int level) /*(2)*/ + .magnetic() /*(3)*/ + .durabilityMultiplier(int multiplier) /*(4)*/ + .build() +```` + +1. There won't be any crafting tools like hammer, saw and wrench +2. Default enchantment that every tool with this material has. `Enchantment` can be obtained with the `enchantment(String name)` method. +3. All mined block will go straight to the players inventory. +4. A multiplier for the property durability. + +Set the stats for tools which are made from this Material. + +* `speed` - Mining Speed of the tools. +* `damage` - Attack Damage dealt by the tools. +* `durability` - Durability of the tools. +* `harvestLevel` - Harvest Level of the tools. + + +#### **Example Thus Far** + +This is example of a material using everything mentioned so far. + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material + +event_manager.listen { MaterialEvent event -> + def specialSteel = new Material.Builder(32002, "special_steel") // name + .fluid("gas", false) // gas without block + .ingot() // has ingot (and therefore dust) + .color(0x0000FF) // pure blue + .toolStats(10, 3, 256, 21) // tool stats + .blastTemp(2900) // EBF temperature + .ore() // has ore blocks + .addOreByproducts(material('gold'), material('copper')) // add byproducts + .cableProperties(128, 2, 4, false) // add cables + .build() // build the actual material +} +``` + +### Changing Material Appearances. + +You may have noticed from testing the above example that the material's textures looks like the same style as many +others. This is called the `MaterialIconSet`. This entire next section is dedicated to explaining this system and how to +use it. + +Available **MaterialIconsets** and existing material examples which use them. + +| MaterialIconset | Example | +|--------------------|-----------------| +| `"DULL"` | Aluminium | +| `"METALLIC"` | Steel | +| `"MAGNETIC"` | Magnetic Steel | +| `"SHINY"` | Copper | +| `"BRIGHT"` | Annealed Copper | +| `"DIAMOND"` | Apatite | +| `"EMERALD"` | Cinnabar | +| `"GEM_HORIZONTAL"` | Blue Topaz | +| `"GEM_VERTICAL"` | Sapphire | +| `"RUBY"` | Ruby | +| `"OPAL"` | Opal | +| `"GLASS"` | Glass | +| `"NETHERSTAR"` | Nether Star | +| `"FINE"` | Rock Salt | +| `"SAND"` | Glauconite Sand | +| `"WOOD"` | Wood | +| `"ROUGH"` | Pyrite | +| `"FLINT"` | Flint | +| `"LIGNITE"` | Coal Coke | +| `"QUARTZ"` | Quartzite | +| `"CERTUS"` | Certus Quartz | +| `"LAPIS"` | Lazurite | +| `"FLUID"` | Nitric Acid | +| `"GAS"` | Argon | + +For example, the following image shows the appearance of ores with different MaterialIconSets. +![](https://user-images.githubusercontent.com/18493855/143435701-058dcfea-ea35-4976-a7ba-7901fa791e36.png) + +The MaterialIconSet of a material, which determines all of its textures, is set with a single method. + +`iconSet`: _`iconSet(String iconSet)`_ + +Sets the `MaterialIconSet` of this Material. Defaults vary depending on if the Material has: + +* `GemProperty` - defaults to `"GEM_VERTICAL"` +* `IngotProperty` or `DustProperty` - defaults to `"DULL"` +* `FluidProperty` - defaults to either `"FLUID"` or `"GAS"`, depending on the `FluidType` +* `PlasmaProperty` - defaults to `"FLUID"`, but will receive a special plasma texture regardless. + +The default will be determined by the property found first in this order. + +#### Example with a MaterialIconSet: + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material + +event_manager.listen { MaterialEvent event -> + def specialSteelTextured = new Material.Builder(32003, "special_steel_textured") // name + .fluid("gas", false) // gas without block + .ingot() // has ingot (and therefore dust) + .color(0x0000FF) // pure blue + .iconSet("shiny") // iconset to the shiny type + .toolStats(10, 3, 256, 21) // tool stats + .blastTemp(2900) // EBF temperature + .ore() // has ore blocks + .addOreByproducts(material('gold'), material('copper')) // add byproducts + .cableProperties(128, 2, 4, false) // add cables + .build() // build the actual material +} +``` + +### Components + +**Components** refers to composition of the Material. + +For example, the components of TungstenSteel is `1 Tungsten (W)` and `1 Steel (Fe)`. That makes its chemical formula: +![Screenshot_20211213_191326](https://user-images.githubusercontent.com/37029404/145909670-cfd0e024-ed32-4f4d-9c72-aee5c2e3b064.png) + +#### MaterialStack + +Components are determined using something called a `MaterialStack`. This is the Material version of an ItemStack which +is an Item with a Count. In our case, MaterialStack is a Material with a Count. + +```groovy +// creates a MaterialStack of Material Tin with a Count of 3. +def my_material_stack = material('tin') * 3 +``` + +Simple, isn't it? + +#### Setting the Components + +**components**: _`components(MaterialStack[] components)`_ + +Sets the components of the material. + +* `components` - an array of `MaterialStacks` representing the components of this Material. + +#### The Next Example + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material + +event_manager.listen { MaterialEvent event -> + def cursed_chemistry_material = new Material.Builder(32004, "cursed_chemistry_material") + .fluid() + .color(0x00FF00) // pure red + .components([material('silver') * 3, material('nitrogen') * 6, material('carbon') * 2]) // set the components + .build() // build the actual material +} +``` + +### Material Flags + +`MaterialFlags` refers to additional mini-attributes about the material. There are a ton of them. + +Available MaterialFlags for Every Material: + +* `"no_unification"`: Add to material to disable it's unification fully (this means no autogenerated recipes). +* `"decomposition_requires_hydrogen"`: Decomposition recipe requires hydrogen as additional input. Amount is equal to + input amount. Sets the electrolyzer voltage to EV. +* `"decomposition_by_electrolyzing"`: Enables electrolyzer decomposition recipe generation. +* `"decomposition_by_centrifuging"`: Enables centrifuge decomposition recipe generation. +* `"disable_decomposition"`: Disables decomposition recipe generation for this material and all materials that has it as + component. +* `"explosive"`: Add to material if it is some kind of explosive. +* `"flammable"`: Add to material if it is some kind of flammable. +* `"generate_plate"`: + +Available MaterialFlags for Materials with `DustProperty`: + +* `"generate_plate"`: Generate a plate for this material. If it only has a `DustProperty`, a dust compressor recipe will + be added. If it has an `IngotProperty`, bending machine recipes will be added. If a block is found, cutting machine + recipes will be generated. +* `"generate_rod"`: Generate a rod for this material. +* `"generate_frame"`: Generate a frame for this material. Requires `"generate_rod"`. +* `"generate_gear"`: Generate a gear for this material. Requires `"generate_plate"` and `"generate_rod"`. +* `"generate_long_rod"`: Generate a long rod for this material. Requires `"generate_rod"`. +* `"exclude_block_crafting_recipes"`: Prevent creating shapeless recipes for dust to block and vice versa. Prevents + extruding and alloy smelting via the Block Shape/Mold. +* `"exclude_plate_compressor_recipe"`: Prevent creating plates in the compressor from dust. Requires `"generate_plate"`. +* `"exclude_block_crafting_by_hand_recipes"`: Prevent creating shapeless recipes for dust to block and vice versa. +* `"mortar_grindable"`: All the material to be ground into dust when crafting with a mortar. + +Available MaterialFlags for Materials with `IngotProperty`: + +* `"no_working"`: Add if it cannot be worked by any means other than smashing or smelting. This is used for coated + Materials. +* `"no_smashing"`: Add to material if it cannot be used for regular Metal working techniques since it is not possible to + bend it. +* `"no_smelting"`: Add to material if it's impossible to smelt it. +* `"blast_furnace_calcite_double"`: Add this to your Material if you want to have its Ore Calcite heated in a Blast + Furnace for 2x output. +* `"blast_furnace_calcite_triple"`: Add this to your Material if you want to have its Ore Calcite heated in a Blast + Furnace for 3x output. +* `"generate_foil"`: Generate a foil for this material. Requires `"generate_plate"`. +* `"generate_bolt_screw"`: Generate a bolt and screw for this material. Requires `"generate_rod"`. +* `"generate_ring"`: Generate a ring for this material. Requires `"generate_rod"`. +* `"generate_spring"`: Generate a spring for this material. Requires `"generate_long_rod"`. +* `"generate_spring_small"`: Generate a small spring for this material. Requires `"generate_rod"`. +* `"generate_small_gear"`: Generate a small gear for this material. Requires `"generate_plate"` and `"generate_rod"`. +* `"generate_fine_wire"`: Generate a fine wire for this material. Requires `"generate_foil"`. +* `"generate_rotor"`: Generate a rotor for this material. Requires `"generate_bolt_screw"`, `"generate_ring"`, + and `"generate_plate"`. +* `"generate_dense"`: Generate a dense plate for this material. Requires `"generate_plate"`. +* `"generate_round"`: Generate a dense plate for this material. + +Available MaterialFlags for Materials with `GemProperty`: + +* `"crystallizable"`: If this material can be crystallized in an autoclave. +* `"generate_lens"`: Generate a lens for this material. Requires `"generate_plate"`. + +Available MaterialFlags for Materials with `OreProperty`: + +* `"high_sifter_output"`: If this material has a higher output when the Crushed Purified Ore is processed in the Sifter. + +#### Adding Flags to a Material + +`flags`: _`flags(string[] names)`_ +Add MaterialFlags to this Material. + +* `names` - a string array of the names of specific MaterialFlags. + +#### Example: + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material + +event_manager.listen { MaterialEvent event -> + def specialSteelFlagged = new Material.Builder(32004, "special_steel_flagged") // name + .fluid("gas", false) // gas without block + .ingot() // has ingot (and therefore dust) + .color(0x0000FF) // pure blue + .iconSet("shiny") // iconset to the shiny type + .flags(["generate_plate", "generate_foil"]) // add flags + .toolStats(10, 3, 256, 21) // tool stats + .blastTemp(2900) // EBF temperature + .ore() // has ore blocks + .addOreByproducts(material('gold'), material('copper')) // add byproducts + .cableProperties(128, 2, 4, false) // add cables + .build() // build the actual material +} +``` + +### Elements + +`Element` is used to specify a material as element. CEu has the periodic table, so you probably won't need it much. + +`Elements.add`: +_`Elements.add(long protons, long neutrons, long halfLifeSeconds, String decayTo, String name, String symbol, boolean isIsotope)`_ +Add a new element. + +* `protons` - Amount of Protons +* `neutrons` - Amount of Neutrons +* `halfLifeSeconds` - Amount of Half Life this Material has in Seconds. `-1` for stable Materials +* `decayTo` - String representing the Elements it decays to. Separated by an '&' character +* `name` - Name of the Element +* `symbol` - Symbol of the Element + +`Elements.get`: _`Elements.get(String name)`_ + +* `name` - the name of the element + Get the element by name. + + protons | netrons | halfLifeSeconds | decayTo | name | symbol | isIsotope +---------|---------|-----------------|---------|--------------------|----------|----------- + 1 | 0 | -1 | null | "Hydrogen" | "H" | false + 1 | 1 | -1 | "H" | "Deuterium" | "D" | true + 1 | 2 | -1 | "D" | "Tritium" | "T" | true + 2 | 2 | -1 | null | "Helium" | "He" | false + 2 | 1 | -1 | "H&D" | "Helium-3" | "He-3" | true + 3 | 4 | -1 | null | "Lithium" | "Li" | false + 4 | 5 | -1 | null | "Beryllium" | "Be" | false + 5 | 5 | -1 | null | "Boron" | "B" | false + 6 | 6 | -1 | null | "Carbon" | "C" | false + 7 | 7 | -1 | null | "Nitrogen" | "N" | false + 8 | 8 | -1 | null | "Oxygen" | "O" | false + 9 | 9 | -1 | null | "Fluorine" | "F" | false + 10 | 10 | -1 | null | "Neon" | "Ne" | false + 11 | 11 | -1 | null | "Sodium" | "Na" | false + 12 | 12 | -1 | null | "Magnesium" | "Mg" | false + 13 | 13 | -1 | null | "Aluminium" | "Al" | false + 14 | 14 | -1 | null | "Silicon" | "Si" | false + 15 | 15 | -1 | null | "Phosphorus" | "P" | false + 16 | 16 | -1 | null | "Sulfur" | "S" | false + 17 | 18 | -1 | null | "Chlorine" | "Cl" | false + 18 | 22 | -1 | null | "Argon" | "Ar" | false + 19 | 20 | -1 | null | "Potassium" | "K" | false + 20 | 20 | -1 | null | "Calcium" | "Ca" | false + 21 | 24 | -1 | null | "Scandium" | "Sc" | false + 22 | 26 | -1 | null | "Titanium" | "Ti" | false + 23 | 28 | -1 | null | "Vanadium" | "V" | false + 24 | 28 | -1 | null | "Chrome" | "Cr" | false + 25 | 30 | -1 | null | "Manganese" | "Mn" | false + 26 | 30 | -1 | null | "Iron" | "Fe" | false + 27 | 32 | -1 | null | "Cobalt" | "Co" | false + 28 | 30 | -1 | null | "Nickel" | "Ni" | false + 29 | 34 | -1 | null | "Copper" | "Cu" | false + 30 | 35 | -1 | null | "Zinc" | "Zn" | false + 31 | 39 | -1 | null | "Gallium" | "Ga" | false + 32 | 40 | -1 | null | "Germanium" | "Ge" | false + 33 | 42 | -1 | null | "Arsenic" | "As" | false + 34 | 45 | -1 | null | "Selenium" | "Se" | false + 35 | 45 | -1 | null | "Bromine" | "Br" | false + 36 | 48 | -1 | null | "Krypton" | "Kr" | false + 37 | 48 | -1 | null | "Rubidium" | "Rb" | false + 38 | 49 | -1 | null | "Strontium" | "Sr" | false + 39 | 50 | -1 | null | "Yttrium" | "Y" | false + 40 | 51 | -1 | null | "Zirconium" | "Zr" | false + 41 | 53 | -1 | null | "Niobium" | "Nb" | false + 42 | 53 | -1 | null | "Molybdenum" | "Mo" | false + 43 | 55 | -1 | null | "Technetium" | "Tc" | false + 44 | 57 | -1 | null | "Ruthenium" | "Ru" | false + 45 | 58 | -1 | null | "Rhodium" | "Rh" | false + 46 | 60 | -1 | null | "Palladium" | "Pd" | false + 47 | 60 | -1 | null | "Silver" | "Ag" | false + 48 | 64 | -1 | null | "Cadmium" | "Cd" | false + 49 | 65 | -1 | null | "Indium" | "In" | false + 50 | 68 | -1 | null | "Tin" | "Sn" | false + 51 | 70 | -1 | null | "Antimony" | "Sb" | false + 52 | 75 | -1 | null | "Tellurium" | "Te" | false + 53 | 74 | -1 | null | "Iodine" | "I" | false + 54 | 77 | -1 | null | "Xenon" | "Xe" | false + 55 | 77 | -1 | null | "Caesium" | "Cs" | false + 56 | 81 | -1 | null | "Barium" | "Ba" | false + 57 | 81 | -1 | null | "Lanthanum" | "La" | false + 58 | 82 | -1 | null | "Cerium" | "Ce" | false + 59 | 81 | -1 | null | "Praseodymium" | "Pr" | false + 60 | 84 | -1 | null | "Neodymium" | "Nd" | false + 61 | 83 | -1 | null | "Promethium" | "Pm" | false + 62 | 88 | -1 | null | "Samarium" | "Sm" | false + 63 | 88 | -1 | null | "Europium" | "Eu" | false + 64 | 93 | -1 | null | "Gadolinium" | "Gd" | false + 65 | 93 | -1 | null | "Terbium" | "Tb" | false + 66 | 96 | -1 | null | "Dysprosium" | "Dy" | false + 67 | 97 | -1 | null | "Holmium" | "Ho" | false + 68 | 99 | -1 | null | "Erbium" | "Er" | false + 69 | 99 | -1 | null | "Thulium" | "Tm" | false + 70 | 103 | -1 | null | "Ytterbium" | "Yb" | false + 71 | 103 | -1 | null | "Lutetium" | "Lu" | false + 72 | 106 | -1 | null | "Hafnium" | "Hf" | false + 73 | 107 | -1 | null | "Tantalum" | "Ta" | false + 74 | 109 | -1 | null | "Tungsten" | "W" | false + 75 | 111 | -1 | null | "Rhenium" | "Re" | false + 76 | 114 | -1 | null | "Osmium" | "Os" | false + 77 | 115 | -1 | null | "Iridium" | "Ir" | false + 78 | 117 | -1 | null | "Platinum" | "Pt" | false + 79 | 117 | -1 | null | "Gold" | "Au" | false + 80 | 120 | -1 | null | "Mercury" | "Hg" | false + 81 | 123 | -1 | null | "Thallium" | "Tl" | false + 82 | 125 | -1 | null | "Lead" | "Pb" | false + 83 | 125 | -1 | null | "Bismuth" | "Bi" | false + 84 | 124 | -1 | null | "Polonium" | "Po" | false + 85 | 124 | -1 | null | "Astatine" | "At" | false + 86 | 134 | -1 | null | "Radon" | "Rn" | false + 87 | 134 | -1 | null | "Francium" | "Fr" | false + 88 | 136 | -1 | null | "Radium" | "Ra" | false + 89 | 136 | -1 | null | "Actinium" | "Ac" | false + 90 | 140 | -1 | null | "Thorium" | "Th" | false + 91 | 138 | -1 | null | "Protactinium" | "Pa" | false + 92 | 146 | -1 | null | "Uranium" | "U" | false + 92 | 146 | -1 | null | "Uranium-238" | "U-238" | false + 92 | 143 | -1 | null | "Uranium-235" | "U-235" | true + 93 | 144 | -1 | null | "Neptunium" | "Np" | false + 94 | 152 | -1 | null | "Plutonium" | "Pu" | false + 94 | 145 | -1 | null | "Plutonium-239" | "Pu-239" | false + 94 | 149 | -1 | null | "Plutonium-241" | "Pu-241" | true + 95 | 150 | -1 | null | "Americium" | "Am" | false + 96 | 153 | -1 | null | "Curium" | "Cm" | false + 97 | 152 | -1 | null | "Berkelium" | "Bk" | false + 98 | 153 | -1 | null | "Californium" | "Cf" | false + 99 | 153 | -1 | null | "Einsteinium" | "Es" | false + 100 | 157 | -1 | null | "Fermium" | "Fm" | false + 101 | 157 | -1 | null | "Mendelevium" | "Md" | false + 102 | 157 | -1 | null | "Nobelium" | "No" | false + 103 | 159 | -1 | null | "Lawrencium" | "Lr" | false + 104 | 161 | -1 | null | "Rutherfordium" | "Rf" | false + 105 | 163 | -1 | null | "Dubnium" | "Db" | false + 106 | 165 | -1 | null | "Seaborgium" | "Sg" | false + 107 | 163 | -1 | null | "Bohrium" | "Bh" | false + 108 | 169 | -1 | null | "Hassium" | "Hs" | false + 109 | 167 | -1 | null | "Meitnerium" | "Mt" | false + 110 | 171 | -1 | null | "Darmstadtium" | "Ds" | false + 111 | 169 | -1 | null | "Roentgenium" | "Rg" | false + 112 | 173 | -1 | null | "Copernicium" | "Cn" | false + 113 | 171 | -1 | null | "Nihonium" | "Nh" | false + 114 | 175 | -1 | null | "Flerovium" | "Fl" | false + 115 | 173 | -1 | null | "Moscovium" | "Mc" | false + 116 | 177 | -1 | null | "Livermorium" | "Lv" | false + 117 | 177 | -1 | null | "Tennessine" | "Ts" | false + 118 | 176 | -1 | null | "Oganesson" | "Og" | false + 119 | 178 | -1 | null | "Tritanium" | "Tr" | false + 120 | 180 | -1 | null | "Duranium" | "Dr" | false + 125 | 198 | -1 | null | "Trinium" | "Ke" | false + 174 | 352 | 140 | null | "Naquadah" | "Nq" | true + 174 | 354 | 140 | null | "NaquadahEnriched" | "Nq+" | true + 174 | 348 | 140 | null | "Naquadria" | "Nq" | true + 0 | 1000 | -1 | null | "Neutronium" | "Nt" | false + 750 | 1000 | -1 | null | "Adamantium" | "Ad" | false + 850 | 900 | -1 | null | "Vibranium" | "Vb" | false + 550 | 670 | -1 | null | "Taranium" | "Tn" | false + +#### Elemental Material Example + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material +import gregtech.api.unification.Elements + +// elements can be created outside the event +def CEu = Elements.add(999, 999, -1, null, "GTCEu", "CEu", false) // create a new element. + +event_manager.listen { MaterialEvent event -> + def element_material = new Material.Builder(32006, "element_material").element("GTCEu").build() + + def Au = Elements.get("Gold") // get an existing element. + + def element_material = new Material.Builder(32007, "element_material").element("Gold").build() +} +``` + +*** + +## Material Creation Full Examples + +```groovy +import gregtech.api.GregTechAPI.MaterialEvent +import gregtech.api.unification.material.Material + +event_manager.listen { MaterialEvent event -> + + new Material.Builder(32000, "red_iron") + .ingot().fluid() + .color(0xF7B29B) + .flags(["generate_plate", "generate_rod", "generate_gear", "decomposition_by_centrifuging"]) + .components([material('iron') * 1, material('redstone') * 1]) + .cableProperties(32, 2, 1) + .build() + + new Material.Builder(32001, "glowing_redstone") + .dust() + .color(0x774D05).iconSet("bright") + .flags(["decomposition_by_centrifuging"]) + .components([material('glowstone') * 1, material('redstone') * 1]) + .build() + + new Material.Builder(32002, "rare_iron") + .ingot().fluid() + .color(0x6AE26E).iconSet("bright") + .flags(["generate_plate", "generate_rod", "generate_gear", "disable_decomposition"]) + .components([material('iron') * 1, material('rare_earth') * 1]) + .cableProperties(8, 2, 1) + .build() + + new Material.Builder(32003, "obsidian_steel") + .ingot().fluid() + .color(0x414751).iconSet("metallic") + .flags(["generate_plate", "generate_rod", "disable_decomposition"]) + .components([material('steel') * 1, material('obsidian') * 1]) + .build() + + new Material.Builder(32004, "silicon_steel") + .ingot().fluid() + .color(0xB2C0C1).iconSet("shiny") + .flags(["generate_plate", "generate_rod", "generate_gear", "decomposition_by_centrifuging"]) + .components([material('steel') * 1, material('silicon') * 1]) + .build() + + new Material.Builder(32005, "rare_gold") + .ingot().fluid() + .color(0x755C40) + .flags(["generate_plate", "disable_decomposition"]) + .components([material('gold') * 1, material('rare_earth') * 1]) + .build() +} +``` + +## Modifying existing Materials. + +See the **Retrieving Existing Materials** section for information on retrieving existing materials. + +The material registry can do more than just get materials. + +_`MaterialRegistry.get(String materialName)`_ + +* `materialName` - get a `Material` by its unlocalized name. + +_`MaterialRegistry.getAllMaterials()`_ get + +* get a list of every material registered + +Materials also have more methods and fields. + +**Getters:** + +_`getChemicalFormula()`_ + +* returns a string representation of the internal chemical formula (i.e. "H2O") + +_`materialRGB`_ get default materialRGB. + +* returns the in color of the material + +_`radioactive`_ + +* returns whether the material is radioactive + +_`protons`_ + +* returns the number of protons in the material + +_`neutrons`_ + +* returns the number of neutrons in the material + +_`mass`_ + +* returns the total amount of mass in the material + +_`averageProtons`_ + +* returns the amount of protons divided by total amount of components in the material + +_`averageNeutrons`_ + +* returns the amount of neutrons divided by total amount of components in the material + +_`averageMass`_ + +* returns the amount of mass divided by total amount of components in the material + +_`blastTemperature`_ + +* returns the material's blast furnace temperature + +_`camelCaseName`_ get default camelCaseName. + +* returns the string camelCase form of the material's unlocalized name. I.e. a name of "my_material" returns " + myMaterial" + +_`unlocalizedName`_ + +* returns the string of the material's unlocalized name + +_`localizedName`_ + +* returns the string of the material's localized (translated) name + +_`name`_ + +* returns toString() used on the material internally + +**Setters:** + +_`setFormula(String formula, @Optional boolean withFormatting)`_ + +Sets the internal formula and thus tooltip of this Material. + +* `formula` - the string to set the formula to +* `@Optional withFormatting` - whether to apply number formatting (subscripts, etc) to the formula and tooltip + +_`addFlags(String[] names)`_ + +Adds additional flags to this Material. + +* `names` - a string array of flags to add + +_`setMaterialRGB(int materialRGB)`_ + +Sets the color of this Material. + +* `materialRGB` - the int color to set. Accepts the raw int value or values in the `0x` format. + +### Example + +```groovy +import gregtech.api.GregTechAPI.PostMaterialEvent + +event_manager.listen { PostMaterialEvent event -> + def gold = material('gold') + def name = gold.toString() // "gold" + def color = gold.getMaterialRGB() // 0xFFE650 + gold.setFormula("(Au)2Au", true) // set formula + def formula = gold.getChemicalFormula() // "(Au)2Au" + gold.addFlags("generate_long_rod", "generate_gear") // add gold long rod, add gold gear +} +``` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/gtceu/multiblock.md b/docs/zh/groovyscript/mods/gtceu/multiblock.md new file mode 100644 index 0000000..4ec8fe5 --- /dev/null +++ b/docs/zh/groovyscript/mods/gtceu/multiblock.md @@ -0,0 +1,100 @@ +# GregTech Multiblocks + +First of all, there is no special compat for multiblocks. We are simple doing it the java way in groovy, which makes it +complicated, but also highly customizable. + +First we need to decide what kind of multiblock we want. For example do you want a multiblock with custom behaviour like +the tesla tower from MechTech or do you want a multiblock which can run recipes. Here we will only focus on the later. + +## Making a multiblock class +Let's take the vacuum freezer for example: +````groovy +import gregtech.api.metatileentity.MetaTileEntity +import gregtech.api.metatileentity.interfaces.IGregTechTileEntity +import gregtech.api.metatileentity.multiblock.IMultiblockPart +import gregtech.api.metatileentity.multiblock.RecipeMapMultiblockController +import gregtech.api.pattern.BlockPattern +import gregtech.api.pattern.FactoryBlockPattern +import gregtech.api.recipes.RecipeMaps +import gregtech.client.renderer.ICubeRenderer +import gregtech.client.renderer.texture.Textures +import gregtech.common.blocks.BlockMetalCasing.MetalCasingType +import gregtech.common.blocks.MetaBlocks + +class MetaTileEntityVacuumFreezer extends RecipeMapMultiblockController { + + /*(1)*/ + MetaTileEntityVacuumFreezer(ResourceLocation metaTileEntityId) { + super(metaTileEntityId, RecipeMaps.VACUUM_RECIPES) /*(2)*/ + } + + @Override + MetaTileEntity createMetaTileEntity(IGregTechTileEntity tileEntity) { + return new MetaTileEntityVacuumFreezer(metaTileEntityId) /*(3)*/ + } + + @Override + protected BlockPattern createStructurePattern() { + return FactoryBlockPattern.start() /*(4)*/ + .aisle("XXX", "XXX", "XXX") + .aisle("XXX", "X#X", "XXX") + .aisle("XXX", "XSX", "XXX") + .where('S', selfPredicate()) + .where('X', states(getCasingState()).setMinGlobalLimited(14).or(autoAbilities())) + .where('#', air()) + .build() + } + + @Override + ICubeRenderer getBaseTexture(IMultiblockPart sourcePart) { + return Textures.FROST_PROOF_CASING /*(5)*/ + } + + /*(6)*/ + protected IBlockState getCasingState() { + return MetaBlocks.METAL_CASING.getState(MetalCasingType.ALUMINIUM_FROSTPROOF) + } + + /*(7)*/ + @Override + protected ICubeRenderer getFrontOverlay() { + return Textures.VACUUM_FREEZER_OVERLAY + } +} +```` + +1. This is the constructor. +2. Pass the id and a recipe map to the super constructor. +3. In this method you need to create a new copy of the controller. +4. Here the structure is defined. This part is similar to mbt. +5. This defines what texture busses and hatches will have when the structure is formed. +6. This is a helper method to make the structure code look cleaner. +7. The overlay texture of the controller. + +## Registering the multiblock +Now we have a defined a multiblock, but we need to also register it. I recommend to do this in preInit + +````groovy +import gregtech.common.metatileentities.MetaTileEntities + +MetaTileEntities.register(int id, MetaTileEntity mte) // id is the meta value of the controller. We recommend the range from 32000 - 32766 +```` +This is how register any `MetaTileEntity`. Yes, our multiblock controller is also a `MetaTileEntity`. Therefore, we can do +````groovy +import gregtech.common.metatileentities.MetaTileEntities + +MetaTileEntities.register(32000, new MetaTileEntityVacuumFreezer(new ResourceLocation("gregtech", "vacuum_freezer"))) +```` +To create the controller we simply call its constructor, which needs a `ResourceLocation`. +If you want to create a recipe for the controller you can get the item form like this +````groovy +metaitem("vacuum_freezer") +```` +If the domain of the resource location is not `gregtech`, but for example `nomifactory`, then it will be +````groovy +metaitem("nomifactory:vacuum_freezer") +```` +See [resource location](../../rl.md) + +## More examples +[WIP] \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/gtceu/recipes.md b/docs/zh/groovyscript/mods/gtceu/recipes.md new file mode 100644 index 0000000..3c3395f --- /dev/null +++ b/docs/zh/groovyscript/mods/gtceu/recipes.md @@ -0,0 +1,68 @@ +# Recipes + +GTCEu has a great recipe structure. Adding and removing is pretty much the same for each machine. +Recipes for a machine are stored in a `RecipeMap`. +You can get a recipe map like this: +````groovy +def recipeMap = mods.gregtech.recipe_map_name +// this works also: +def recipeMap2 = recipemap('recipe_map_name') +```` +You can find a list of all machines [here](https://github.com/GregTechCEu/GregTech/wiki/CraftTweaker-for-Machines).
+Let's use `alloy_smelter` as an example here. +With the recipe map you can create a recipe builder. +````groovy +mods.gregtech.alloy_smelter.recipeBuilder() +```` +You don't know what a builder is? Check [this](../../../groovy/builder.md) out. + +## Builder functions +GregTechs recipe builder has tons of helper functions. We'll only focus on the important ones. + +### Adding inputs +Works for fluid and items +````groovy +inputs(IIngredient ingredient) +inputs(IIngredient... ingredients) +inputs(Collection ingredients) +notConsumable(IIngredient ingredient) // this will not be consumed +```` + +### Adding outputs +````groovy +outputs(ItemStack) +outputs(ItemStack...) +outputs(Collection) +chancedOutput(ItemStack, int chance, int tierChanceBoost) // this will not be consumed + +fluidOutputs(FluidStack) +fluidOutputs(FluidStack...) +fluidOutputs(Collection) +```` + +### Other +````groovy +duration(int duration) // base recipe duration int ticks (20 ticks = 1 sec) +EUt(int EUt) +hidden() // hides recipe in jei + +cleanroom(CleanroomType) // makes the recipe require cleanroom +```` + +### Register recipe +````groovy +buildAndRegister() +```` + +## Example +````groovy +import gregtech.api.metatileentity.multiblock.CleanroomType // needed when you want to use cleanroom + +mods.gregtech.alloy_smelter.recipeBuilder() + .inputs(item('minecraft:dirt'), ore('stone')) + .outputs(item('minecraft:nether_star') * 2) + .cleanroom(CleanroomType.CLEANROOM) // CLEANROOM and STERILE_CLEANROOM are valid + .duration(200) // 10 seconds + .EUt(512) // HV recipe + .buildAndRegister() +```` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/gtceu/terminal.md b/docs/zh/groovyscript/mods/gtceu/terminal.md new file mode 100644 index 0000000..d4d396c --- /dev/null +++ b/docs/zh/groovyscript/mods/gtceu/terminal.md @@ -0,0 +1,2 @@ +# Terminal +[WIP] \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/jei.md b/docs/zh/groovyscript/mods/jei.md new file mode 100644 index 0000000..35aeeb6 --- /dev/null +++ b/docs/zh/groovyscript/mods/jei.md @@ -0,0 +1,35 @@ +# Just Enough Items + +!!! Note + Requires GroovyScript 0.3.1+ + +In all methods you can replace `jei` with `hei`. + +## Hiding +````groovy +mods.jei.hide(IIngredient) +```` + +## Remove and Hiding +````groovy +mods.jei.removeAndHide(IIngredient) +// is exactly the same but with a cooler name +mods.jei.yeet(IIngredient) +```` + +## Hiding categories +A list of categories can be obtained by running /gs jeiCategories in game. +````groovy +mods.jei.hideCategory(String) +```` + +## Examples +````groovy +// hides nether star in jei +mods.jei.hide(item('minecraft:nether_star')) +// hides and removes all iron ingots and its crafting recipes +mods.jei.removeAndHide(ore('ingotIron')) +// hides all smelting recipes +mods.jei.hideCategory('minecraft.smelting') +```` + diff --git a/docs/zh/groovyscript/mods/mekanism/crusher.md b/docs/zh/groovyscript/mods/mekanism/crusher.md new file mode 100644 index 0000000..458fbbc --- /dev/null +++ b/docs/zh/groovyscript/mods/mekanism/crusher.md @@ -0,0 +1,16 @@ +# Mekanism Crusher + +Add recipe +```groovy +mods.mekanism.crusher.add(IIngredient input, ItemStack output) +``` + +!!! example + ```groovy + mods.mekanism.crusher.add(ore('ingotIron'), item('minecraft:nether_star')) + ``` + +Remove recipe +```groovy +mods.mekanism.crusher.remove(ItemStack output) +``` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/thaumcraft/ArcaneWorkbench.md b/docs/zh/groovyscript/mods/thaumcraft/ArcaneWorkbench.md new file mode 100644 index 0000000..a3785db --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/ArcaneWorkbench.md @@ -0,0 +1,182 @@ +# Arcane Workbench + +The recipe builder for the Arcane Workbench works very similar to the vanilla [Crafting Table](../../minecraft/crafting_builders.md). Except that you can add a required Research, Vis and Aspects. + +### Adding Shapeless Recipes + +Just like other recipe types, the Arcane Workbench also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out + +```groovy +mods.thaumcraft.ArcaneWorkbench.shapelessBuilder() +``` + +Adding inputs: (requires 1-9) + +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Adding outputs: (requires exactly 1) + +```groovy +.output(ItemStack) +``` + +Adding research requirement: (optional (default is "")) + +```groovy +.researchKey(String/*(1)!*/) +``` + +1. Please see the examples below to better understand how this works + +Adding aspects: (optional) + +```groovy +.aspect(AspectStack/*(1)!*/) +``` + +1. Must be a primal aspect: Ignis, Terra, Aer, Ordo, Aqua, or Perditio + +Adding vis requirement: (optional (default is 0)) + +```groovy +.vis(int/*(1)!*/) +``` + +1. Amount of vis required to craft, must be >= 0. + +Register recipe: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.ArcaneWorkbench.shapelessBuilder() + .researchKey('UNLOCKALCHEMY@3') + .input(item('minecraft:pumpkin')) + .input(item('minecraft:stick')) + .input(item('minecraft:stick')) + .output(item('thaumcraft:void_hoe')) + .vis(0) + .register() +``` + +### Adding Shaped Recipes + +```groovy +mods.thaumcraft.ArcaneWorkbench.shapedBuilder() +``` + +Creating the recipe's layout (required): + +```groovy +row(String/*(1)!*/) + +matrix(String... matrix/*(2)!*/) +shape(String... matrix) // does the same thing as matrix() + +// to input a matrix in the style of non-builder shaped addition +matrix(List> matrix) +shape(List> matrix) +``` + +1. Must be called exactly 3 times, requires a String of length 3 characters. For empty slots use ` ` (space). See examples. +1. Matrix must be an array of 3 Strings, each of length 3 characters. For empty slots use ` ` (space). See examples. + +Matching ingredients to the recipe layout (required): + +```groovy +.key(Char, IIngredient)/*(1)!*/ +``` + +1. Char is the ASCII character which represents the slot(s) in the recipe IIngredient will occupy. + +Adding outputs: (requires exactly 1) + +```groovy +.output(ItemStack) +``` + +Adding research requirement: (optional (default is "")) + +```groovy +.researchKey(String/*(1)!*/) +``` + +1. The Research Key is the required research to craft the item, research is unlocked via the Thaumonomicon. Obtain a list of all research keys by doing `/tc research list`. + +Adding aspects: (optional) + +```groovy +.aspect(AspectStack/*(1)!*/) +``` + +1. Must be a primal aspect: Ignis, Terra, Aer, Ordo, Aqua, or Perditio + +Adding vis requirement: (optional (default is 0)) + +```groovy +.vis(int/*(1)!*/) +``` + +1. Amount of vis required to craft, must be >= 0. + +Allow mirroring: (optional) + +```groovy +.mirrored()/*(1)!*/ +``` + +1. If called, the resultant recipe inputs can be mirrored along the x and y axis (see vanilla Axe recipes). + +Register recipe: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.ArcaneWorkbench.shapedBuilder() + .researchKey('UNLOCKALCHEMY@3') + .output(item('minecraft:pumpkin')) + .row('SS ') + .row(' ') + .row(' ') + .key('S', item('minecraft:pumpkin_seeds')) + .aspect(aspect('terra')) + .vis(5) + .register() + +mods.thaumcraft.ArcaneWorkbench.shapedBuilder() + .researchKey('UNLOCKALCHEMY@3') + .output(item('minecraft:pumpkin')) + .matrix('SS ', + ' ', + ' ') + .key('S', item('minecraft:pumpkin_seeds')) + .aspect(aspect('terra')) + .vis(5) + .register() +``` + +### Removing Recipes + +This removes ALL recipes that match the given output: + +```groovy +mods.thaumcraft.ArcaneWorkbench.removeByOutput(IIngredient) +``` + +!!! example + ```groovy + mods.thaumcraft.ArcaneWorkbench.removeByOutput(item('thaumcraft:mechanism_simple')) + ``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/Aspects.md b/docs/zh/groovyscript/mods/thaumcraft/Aspects.md new file mode 100644 index 0000000..271434c --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/Aspects.md @@ -0,0 +1,138 @@ +# Aspects + +### GroovyScript syntax + +To help with aspects in Thaumcraft the following bracket handlers have been added:
+ +- `aspect('') * ` returns `AspectStack` (a vis - amount pairing) +- `crystal('')` returns ItemStack containing vis crystal of the specified aspect + +`aspect('')` when no `` is specified the default value is 1 + +### AspectStack + +An Aspect wrapper with the following methods:
+ +- `AspectStack#getCrystal()` same as `crystal('')` +- `AspectStack#getPhial()` returns ItemStack containing a phial of the specified aspect + +### Creating Aspects + +The following builder is for creating new Aspects.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out + +```groovy +mods.thaumcraft.Aspect.aspectBuilder() +``` + +Adding name: (required) + +```groovy +.tag(String/*(1)!*/) +``` + +1. Name of the new aspect. + +Adding component aspects: (requires exactly 0 or exactly 2) + +```groovy +.component(AspectStack/*(1)!*/) +``` + +1. Aspects which make up the new aspect. + +Adding sprite image: (required)
+This is a [resource location](../../rl.md). +```groovy +.image(String)/*(1)!*/ +.image(String mod, String path)/*(2)!*/ +``` + +1. Path to the new aspect's target sprite in the Thaumcraft assets folder. +2. Path to the new aspect's target sprite in the "mod" assets folder. + +Adding chat color: (required) + +```groovy +.chatColor(int/*(1)!*/) +``` + +1. int should be in hexadecimal RGB format (example: 0x00FF00). + +Register aspect: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.Aspect.aspectBuilder() + .tag('humor') + .chatColor(0xD5D4EC) + .component(aspect('cognito')) + .component(aspect('perditio')) + .image('textures/aspects/humor.png') + .register() +``` + +### Item/Entity Aspects + +```groovy +mods.thaumcraft.AspectHelper.aspectBuilder() +``` + +Set target item: (required, item only) + +```groovy +.object(IIngredient) // if object() is called entity() may not be +``` + +Set target entity: (required, entity only) + +```groovy +.entity(EntityEntry) // if entity() is called object() may not be +``` + +Clear existing aspects: (optional) + +```groovy +.stripAspects() +``` + +Add new aspect: (optional) + +```groovy +.aspect(AspectStack) +``` + +Register aspects: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +// How to remove all aspects for an item +mods.thaumcraft.AspectHelper.aspectBuilder() + .object(item('minecraft:dirt')) + .stripAspects() + .register() + +// Set chickens to have 20 Bestia Essentia +mods.thaumcraft.AspectHelper.aspectBuilder() + .entity(entity('minecraft:chicken')) + .stripAspects() + .aspect(aspect('bestia') * 20) + .register() + +// Set Stone blocks to have 20 Ignis Essentia +mods.thaumcraft.AspectHelper.aspectBuilder() + .object(ore('stone')) + .stripAspects() + .aspect(aspect('ignis') * 20) + .register() +``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/Crucible.md b/docs/zh/groovyscript/mods/thaumcraft/Crucible.md new file mode 100644 index 0000000..33fd9d0 --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/Crucible.md @@ -0,0 +1,64 @@ +# Crucible + +### Adding Recipes + +Just like other recipe types, the Crucible also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out + +```groovy +mods.thaumcraft.Crucible.recipeBuilder() +``` + +Adding catalyst: (requires exactly 1) + +```groovy +.catalyst(IIngredient) +``` + +Adding outputs: (requires exactly 1) + +```groovy +.output(ItemStack) +``` + +Adding research requirement: (optional (default is "")) + +```groovy +.researchKey(String/*(1)!*/) +``` + +1. The Research Key is the required research to craft the item, research is unlocked via the Thaumonomicon. Obtain a list of all research keys by doing `/tc research list`. + +Adding aspects: (requires at least 1) + +```groovy +.aspect(AspectStack) +``` + +Register recipe: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.Crucible.recipeBuilder() + .researchKey('UNLOCKALCHEMY@3') + .catalyst(item('minecraft:rotten_flesh')) + .output(item('minecraft:gold_ingot')) + .aspect(aspect('metallum') * 10) + .register() +``` + +### Removing Recipes + +```groovy +mods.thaumcraft.Crucible.removeByOutput(IIngredient) +``` + +!!! example + ```groovy + mods.thaumcraft.Crucible.removeByOutput(item('minecraft:gunpowder')) + ``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/DustTrigger.md b/docs/zh/groovyscript/mods/thaumcraft/DustTrigger.md new file mode 100644 index 0000000..fdf2d41 --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/DustTrigger.md @@ -0,0 +1,58 @@ +# Dust Trigger (Salis Mundus) + +The following builder is for creating new Dust Triggers.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out + +### Add a trigger + +```groovy +mods.thaumcraft.DustTrigger.triggerBuilder() +``` + +Adding target: (requires exactly 1) + +```groovy +.target(Block) +.target(String) // for oreDict triggers +``` + +Adding outputs: (requires exactly 1) + +```groovy +.output(ItemStack) +``` + +Adding research requirement: (optional (default is "")) + +```groovy +.researchKey(String/*(1)!*/) +``` + +1. The Research Key is the required research to craft the item, research is unlocked via the Thaumonomicon. Obtain a list of all research keys by doing `/tc research list`. + +Register recipe: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.DustTrigger.triggerBuilder() + .researchKey('UNLOCKALCHEMY@3') + .target(block('minecraft:obsidian')) + .output(item('minecraft:enchanting_table')) + .register() +``` + +### Remove a trigger + +```groovy +mods.thaumcraft.DustTrigger.removeByOutput(ItemStack) +``` + +!!! example + ```groovy + mods.thaumcraft.DustTrigger.removeByOutput(item('thaumcraft:arcane_workbench')) + ``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/Infusion.md b/docs/zh/groovyscript/mods/thaumcraft/Infusion.md new file mode 100644 index 0000000..9307d4d --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/Infusion.md @@ -0,0 +1,85 @@ +# Infusion Crafting + +### Add a recipe + +Just like other recipe types, Infusion Crafting also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out + +```groovy +mods.thaumcraft.InfusionCrafting.recipeBuilder() +``` + +Adding center pedestal item: (requires exactly 1) + +```groovy +.mainInput(IIngredient) +``` + +Adding input: (requires at least 1) + +```groovy +.input(IIngredient) +.input(IIngredient...) +.input(Collection) +``` + +Adding outputs: (requires exactly 1) + +```groovy +.output(ItemStack) +``` + +Adding aspects: (requires at least 1) + +```groovy +.aspect(AspectStack) +``` + +Adding research requirement: (optional (default is "")) + +```groovy +.researchKey(String/*(1)!*/) +``` + +1. The Research Key is the required research to craft the item, research is unlocked via the Thaumonomicon. Obtain a list of all research keys by doing `/tc research list`. + +Adding instability: (required) + +```groovy +.instability(int) +``` + +Register recipe: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.InfusionCrafting.recipeBuilder() + .researchKey('UNLOCKALCHEMY@3') + .mainInput(item('minecraft:gunpowder')) + .output(item('minecraft:gold_ingot')) + .aspect(aspect('terra') * 20) + .aspect(aspect('ignis') * 30) + .input(crystal('aer')) + .input(crystal('ignis')) + .input(crystal('aqua')) + .input(crystal('terra')) + .input(crystal('ordo')) + .instability(10) + .register() +``` + +### Remove a recipe + +```groovy +mods.thaumcraft.InfusionCrafting.removeByOutput(IIngredient) +``` + +!!! example + ```groovy + mods.thaumcraft.InfusionCrafting.removeByOutput(item('thaumcraft:crystal_terra')) + ``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/Lootbag.md b/docs/zh/groovyscript/mods/thaumcraft/Lootbag.md new file mode 100644 index 0000000..739ac29 --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/Lootbag.md @@ -0,0 +1,55 @@ +# Lootbag + +## Rarity + +Each lootbag modification is rarity specific. Rarities can be specified using the following methods. + +```groovy +mods.thaumcraft.LootBag.getRare() +mods.thaumcraft.LootBag.getUncommon() +mods.thaumcraft.LootBag.getCommon() +``` + +### Remove All + +Removes all items from the specified rarity of lootbag. + +```groovy +.removeAll() +``` + +!!! example + ```groovy + mods.thaumcraft.LootBag.getCommon().removeAll() + ``` + +!!! Bug + Armor chances are hard coded into randomized loot function, and are not currently removable. + +### Remove + +Removes chance for an item from the specified rarity of lootbag. + +```groovy +.removeItem(ItemStack) +``` + +!!! example + ```groovy + mods.thaumcraft.LootBag.getRare().removeItem(item('minecraft:ender_pearl')) + ``` + +### Add + +Adds chance for an item in the given rarity of lootbag. + +```groovy +.addItem(ItemStack, int/*(1)!*/) +``` + +1. a non-negative weight (higher number = more likely) + +!!! example + ```groovy + mods.thaumcraft.LootBag.getRare().addItem(item('minecraft:diamond_block'), 10) + ``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/Research.md b/docs/zh/groovyscript/mods/thaumcraft/Research.md new file mode 100644 index 0000000..a980186 --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/Research.md @@ -0,0 +1,180 @@ +# Research + +### Thaumometer Scanning + +The following methods allow for scanning a specified Object with a Thaumometer to discover the Object's component aspects. + +```groovy +mods.thaumcraft.Research.addScannable(Block) +mods.thaumcraft.Research.addScannable(Enchantment) +mods.thaumcraft.Research.addScannable(Material) +mods.thaumcraft.Research.addScannable(Potion) +``` + +The following methods specify the research key unlocked by scanning a specified Object, with a Thaumometer. + +```groovy +mods.thaumcraft.Research.addScannable(String, Block) +mods.thaumcraft.Research.addScannable(String, ItemStack) +mods.thaumcraft.Research.addScannable(String, Material) +``` + +!!! example + ```groovy + mods.thaumcraft.Research.addScannable('UNLOCKAUROMANCY', item('minecraft:pumpkin')) + ``` + + +## Modifying The Thaumonomicon + +### New Category (research tab) + +The following builder is for creating new Research Categories (research tab).
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out + +```groovy +mods.thaumcraft.Research.researchCategoryBuilder() +``` + +Adding category name: (required) + +```groovy +.key(String) +``` + +Adding research requirement: (optional (default is "")) + +```groovy +.researchKey(String/*(1)!*/) +``` + +1. The Research Key is the required research to craft the item, research is unlocked via the Thaumonomicon. Obtain a list of all research keys by doing `/tc research list`. + +Adding required aspects: (optional) + +```groovy +.formulaAspect(AspectStack)/*(1)!*/ +``` + +1. Aspects specified here must be discovered before the category is revealed in the Thaumonomicon. May be called multiple times. + +Adding tab icon: (required)
+This is a [resource location](../../rl.md). +```groovy +.icon(String)/*(1)!*/ +.icon(String mod, String path)/*(2)!*/ +``` + +1. Path to the new tab's icon in the Thaumcraft assets folder. +2. Path to the new tab's icon in the "mod" assets folder. + +Adding background: (required)
+This is a [resource location](../../rl.md). +```groovy +.background(String)/*(1)!*/ +.background(String mod, String path)/*(2)!*/ +``` + +1. Path to the new tab's background in the Thaumcraft assets folder. +2. Path to the new tab's background in the "mod" assets folder. + +Adding background overlay: (optional)
+This is a [resource location](../../rl.md). +```groovy +.background2(String)/*(1)!*/ +.background2(String mod, String path)/*(2)!*/ +``` + +1. Path to the new tab's background overlay in the Thaumcraft assets folder. +2. Path to the new tab's background overlay in the "mod" assets folder. + +Register recipe: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.Research.researchCategoryBuilder() + .key('BASICS2') + .researchKey('UNLOCKAUROMANCY') + .formulaAspect(aspect('herba') * 5) + .formulaAspect(aspect('ordo') * 5) + .formulaAspect(aspect('perditio') * 5) + .formulaAspect(aspect('aer') * 5) + .formulaAspect(aspect('ignis') * 5) + .formulaAspect(aspect('terra') * 5) + .formulaAspect(aspect('aqua') * 5) + .icon('textures/aspects/humor.png') + .background('textures/gui/gui_research_back_1.jpg') + .background2('textures/gui/gui_research_back_over.png') + .register() +``` + +### Remove Category (research tab) + +```groovy +mods.thaumcraft.Research.removeCategory(String/*(1)!*/) +``` + +1. Target tab name. + +!!! example + ```groovy + mods.thaumcraft.Research.removeCategory('BASICS') + ``` + +### New research entries + +[WIP] + +A research builder has yet to be created, for now this method takes in a json representation of the Thaumonomicon tab's research. + +```groovy +mods.thaumcraft.Research.addResearchLocation(String)/*(1)!*/ +mods.thaumcraft.Research.addResearchLocation(String mod, String path)/*(2)!*/ +``` + +1. Path to the additional research JSON in the Thaumcraft assets folder. +2. Path to the additional research JSON in the "mod" assets folder. + +!!! example + ```groovy + mods.thaumcraft.Research.addResearchLocation('thaumcraft', 'research/new.json') + ``` + ```json + { + "entries" :[ + { + "key": "FIRSTSTEPS", + "name": "research.FIRSTSTEPS.title", + "icons": [ "thaumcraft:textures/items/thaumonomicon.png" ], + "category": "BASICS", + "location": [ 0,0 ], + "parents": [ "!gotthaumonomicon" ], + "siblings": [ "KNOWLEDGETYPES", "!gotdream" ], + "meta": [ "ROUND","SPIKY" ], + "stages": [ + { + "text": "research.FIRSTSTEPS.stage.1", + "required_craft":["thaumcraft:arcane_workbench"], + "recipes": ["thaumcraft:salismundusfake"] + }, + { + "text": "research.FIRSTSTEPS.stage.2", + "required_craft":["thaumcraft:thaumometer"], + "required_knowledge":["OBSERVATION;BASICS;1"], + "recipes": ["thaumcraft:thaumometer","thaumcraft:salismundusfake"] + }, + { + "text": "research.FIRSTSTEPS.stage.3", + "recipes": ["thaumcraft:thaumometer","thaumcraft:salismundusfake","thaumcraft:StoneArcane","thaumcraft:BrickArcane"] + } + ] + }, + { ... } + ] + } + ``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/SmeltingBonus.md b/docs/zh/groovyscript/mods/thaumcraft/SmeltingBonus.md new file mode 100644 index 0000000..d84c10f --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/SmeltingBonus.md @@ -0,0 +1,61 @@ +# Smelting Bonus + +Add or remove bonus outputs from the Infernal Furnace. + +### Adding Bonus + +The following builder is for creating new Smelting Bonuses.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out + +```groovy +mods.thaumcraft.SmeltingBonus.recipeBuilder() +``` + +Adding input: (requires exactly 1) + +```groovy +.input(IIngredient/*(1)!*/) +``` + +1. Must be a valid furnace input. + +Adding outputs: (requires exactly 1) + +```groovy +.output(ItemStack) +``` + +Set bonus chance: (optional (default is 33%)) + +```groovy +.chance(float/*(1)!*/) +``` + +1. 0.0 = 0% / 1.0 = 100% + +Register recipe: (returns nothing) + +```groovy +.register() +``` + +### Example + +```groovy +mods.thaumcraft.SmeltingBonus.recipeBuilder() + .input(item('minecraft:cobblestone')) + .output(item('minecraft:stone_button')) + .chance(0.2F) + .register() +``` + +### Removing Bonus + +```groovy +mods.thaumcraft.SmeltingBonus.removeByOutput(ItemStack) +``` + +!!! example + ```groovy + mods.thaumcraft.SmeltingBonus.removeByOutput(item('minecraft:gold_nugget')) + ``` diff --git a/docs/zh/groovyscript/mods/thaumcraft/Warp.md b/docs/zh/groovyscript/mods/thaumcraft/Warp.md new file mode 100644 index 0000000..15e4a42 --- /dev/null +++ b/docs/zh/groovyscript/mods/thaumcraft/Warp.md @@ -0,0 +1,23 @@ +# Warp + +### Adding Warp + +```groovy +mods.thaumcraft.Warp.addWarp(ItemStack, int) // int must be non-negative +``` + +!!! example + ```groovy + mods.thaumcraft.Warp.addWarp(item('minecraft:pumpkin'), 3) + ``` + +### Removing Warp + +```groovy +mods.thaumcraft.Warp.removeWarp(ItemStack) +``` + +!!! example + ```groovy + mods.thaumcraft.Warp.removeWarp(item('thaumcraft:void_hoe')) + ``` \ No newline at end of file diff --git a/docs/zh/groovyscript/mods/thermal/pulverizer.md b/docs/zh/groovyscript/mods/thermal/pulverizer.md new file mode 100644 index 0000000..a500d5e --- /dev/null +++ b/docs/zh/groovyscript/mods/thermal/pulverizer.md @@ -0,0 +1,57 @@ +# Thermal Expansion Pulverizer + +## Adding Recipes +Just like other recipe types, the Pulverizer also uses a recipe builder.
+You don't know what a builder is? Check [this](https://groovyscript-docs.readthedocs.io/en/latest/groovy/builder/) out +```groovy +mods.thermalexpansion.Pulverizer.recipeBuilder() +``` + +Set input: (requires exactly 1) +```groovy +.input(IIngredient) +``` + +Set output: (requires exactly 1) +```groovy +.output(ItemStack) +``` + +Set secondary Output: (optional) +````groovy +.secondaryOutput(ItemStack) // default chance is 100% +.secondaryOutput(ItemStack, int chance) // chance is a number from 0 to 100 where 100 is 100% +```` + +Set required total energy: (optional (default is 3000)) +```groovy +.energy(int) +``` + +Register recipe: (returns `cofh.thermalexpansion.util.managers.machine.PulverizerManager.PulverizerRecipe`) +````groovy +.register() +```` + +### Example +This creates a recipe where bookshelf turns into a diamond with an extra 1% chance for an extra diamond. +````groovy +mods.thermalexpansion.Pulverizer.recipeBuilder() + .input(item('minecraft:bookshelf')) + .output(item('minecraft:diamond')) + .secondaryOutput(item('minecraft:diamond'), 1) + .energy(2000) + .register() +```` + +## Removing Recipes +This removes a recipe that match the given input: +````groovy +mods.thermalexpansion.Pulverizer.removeByInput(ItemStack input) +```` + +### Example +````groovy +// removes recipe with Iron Ingot as input from Pulverizer +mods.thermalexpansion.Pulverizer.removeByInput(item('minecraft:iron_ingot')) +```` diff --git a/docs/zh/groovyscript/rl.md b/docs/zh/groovyscript/rl.md new file mode 100644 index 0000000..74a7d50 --- /dev/null +++ b/docs/zh/groovyscript/rl.md @@ -0,0 +1,71 @@ +# Resource Location for Dummies + +Minecraft's resource location consists of two strings which usually marks the location of a file. For example model json +files.
+The minecraft class's name is `net.minecraft.util.ResourceLocation`. It is auto imported to any groovy script (version +0.4.0+). +Let's look at how it works.
+As mentioned before it consists of two strings, a domain and a path. The domain is usually a mod id. If the domain is +not specified it defaults to `minecraft`. +A resource location can be written as: + +- `new ResourceLocation("modid:path")` +- `new ResourceLocation("modid", "path")` + +Both are equal. In GroovyScript there usually exist overrides where you can directly insert mod id and path without +creating a `ResourceLocation`.
+To clarify: `new ResourceLocation("thaumcraft", "research/SOME_RESEARCH.json")` is the same +as `new ResourceLocation("thaumcraft:research/SOME_RESEARCH.json")`. +In the following examples we would write `thaumcraft:research/SOME_RESEARCH.json` to keep it short. + +## Converting to file path + +In the following `.../.minecraft/` is the instance folder.
+`.minecraft/resources/` is the root resource folder (requires Resource Loader mod). Resources can be in any valid path +as long as minecraft knows about it. +Since version 0.4.0 the root folder may also be `.minecraft/groovy/assets/`. Resource packs are also a valid way to load +resources.
+The whole path is composed of + +- the root path +- the domain (mod id) +- the path (of the resource location) + +Formatted: `rootPath/domain/path` + +## Examples + +We use `.minecraft/resources` as the root here. + +| Resource Location | refers to File path | +|------------------------------------------|---------------------------------------------------------------| +| `minecraft:textures/gui/button.png` | `.minecraft/resources/minecraft/textures/gui/button.png` | +| `textures/gui/button.png` | `.minecraft/resources/minecraft/textures/gui/button.png` | +| `thaumcraft:research/SOME_RESEARCH.json` | `.minecraft/resources/thaumcraft/research/SOME_RESEARCH.json` | + +## Model files + +In model or blockstate json files you may also find resource locations. Lets +take `assets/minecraft/models/block/andesite.json` for example (`assets` being the root folder). In there you will find + +````json +{ + "parent": "block/cube_all", + "textures": { + "all": "blocks/stone_andesite" + } +} +```` + +Here `"block/cube_all"` and `"blocks/stone_andesite"` are both resource locations. So you might think the texture is +located in `assets/minecraft/blocks/stone_andesite`, but that is not the case. +The real path is `assets/minecraft/textures/blocks/stone_andesite.png`. The reason for that is that +minecraft knows it should point to a texture and prepends `textures/` and appends `.png` to the path. +It's similar for `"parent": "block/cube_all"` except it points to another model. + +## Other uses +Resource locations are also used as identifiers for game registry entries for example items.
+When you use the item bracket handler you do something like `item('minecraft:iron_ingot')`. Yes `'minecraft:iron_ingot'` is a resource location, except it doesn't point to a resource. +For game objects like items the resource location is also referred to as the registry name. +!!! Note + Note that you can't use `item('iron_ingot')`. This is disabled by GroovyScript. You must always input the full registry name. diff --git a/docs/zh/stylesheets/extra.css b/docs/zh/stylesheets/extra.css new file mode 100644 index 0000000..2bf3d7c --- /dev/null +++ b/docs/zh/stylesheets/extra.css @@ -0,0 +1,3 @@ +[data-md-color-scheme="slate"] { + --md-typeset-a-color: #7087E0; +} From ea1d44d44fb8b8ab2e5a99c1c43405fd7992d775 Mon Sep 17 00:00:00 2001 From: Oganesson897 <101081378+Darknight123MC@users.noreply.github.com> Date: Sat, 18 Mar 2023 18:09:49 +0900 Subject: [PATCH 10/11] Update getting_started.md --- docs/zh/getting_started.md | 54 ++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 28 deletions(-) diff --git a/docs/zh/getting_started.md b/docs/zh/getting_started.md index e9dd6ef..b38606d 100644 --- a/docs/zh/getting_started.md +++ b/docs/zh/getting_started.md @@ -1,34 +1,32 @@ -# Getting started - -Programming knowledge is not necessarily required, but it will help you a lot.
-As text editor you can use [Notepad++](https://notepad-plus-plus.org/downloads/) just fine. (We will work on a better -alternative in the future) - -1. Download Minecraft Forge 1.12.2 and install it -2. Download the latest version of GroovyScript [here](https://www.curseforge.com/minecraft/mc-mods/groovyscript/files) - and drop it into the mods folder -3. Also install [MixinBooter](https://www.curseforge.com/minecraft/mc-mods/mixin-booter/files) since GroovyScript - depends on it -4. Launch minecraft without adding any files -5. GroovyScript will create several files - - groovy.log (refer to [Groovy Log](#groovy-log)) - - groovy/runConfig.json (refer to [Groovy Log](#run-config)) - - groovy/postInit/main.groovy (default script file) +# 让我们开始 -## Groovy log +哦不不, 读懂这不一定需要太多的编程知识, 但会对你有很大的帮助. +作为文本文件(.groovy), 你可以使用[VSCode](https://code.visualstudio.com/)来打开并且编写Groovy文件, 或者是一个更像样的IDE. (我们将在未来开发一个更好的替代品) + +1. 下载 Minecraft和Forge 1.12.2并且安装它. (我想你的启动器应该可以) +2. 下载最新版的GroovyScript([点这里](https://www.curseforge.com/minecraft/mc-mods/groovyscript/files)) + 并且丢到你的mods文件夹里去. (HMCL等主流启动器支持直接从CurseForge下载模组) +3. 另外, 你还需要安装一个[MixinBooter](https://www.curseforge.com/minecraft/mc-mods/mixin-booter/files), 因为GroovyScript依赖于它. +4. 启动游戏, 并且往groovy文件夹里丢一些脚本. +5. 第一次启动时, GroovyScript将生成以下文件 + - groovy.log (即[Groovy Log](#groovy-log)) + - groovy/runConfig.json (即[Groovy运行配置](#run-config)) + - groovy/postInit/main.groovy (默认提供的脚本实例文件) -Everything groovy related has its own log, and it generates its own file. If you run into issues with your script you -should look here first. -The files directory is always `[Minecraft instance path]/groovy.log` +## Groovy log -## Run config +所有与groovy有关的东西都有自己的日志, 而且会生成自己的文件. +如果你的脚本写出了问题, 你应该先看看Log. 文件位于[Minecraft实例路径]/groovy.log -This file defines how each script file should be executed. It can also store some general info about the mod pack. The -file will be generated if it doesn't exist. -If you don't understand what this is or how it works you can skip this. All you need to know is that you put your -scripts with recipes in `groovy/postInit`. -Scripts with stuff like Item Creation go in `groovy/preInit`.
-Let's see what the file can look like. +## 运行配置 +这个文件定义了每个脚本文件应该如何执行, 在哪个加载阶段执行. +它也可以存储一些关于MOD包的一般信息. +如果该文件无法被查找到或不存在, 将重新生成一份. +如果你不明白这是什么或 "它是如何工作的" , 你可以跳过配置. +你所需要知道的是, 你把你的配方脚本放在groovy/postInit中. +诸如 "自定义物品" 之类的脚本则放在groovy/preInit中. +(类似KubeJS的start_scripts-preInit和server_scripts-postInit) +让我们看看这个文件是什么样子的. ````json { @@ -106,4 +104,4 @@ The pack id is very important. It must only consist of lower case letters and `_ 1. Groovy scripts must end in `.groovy` 2. Groovy scripts must be defined somehow in the [run config](#run-config) to be executed 3. The scripts and folders can have any name -4. All scripts and the [run config](#run-config) must be located in `[Minecraft instance path]/groovy/` \ No newline at end of file +4. All scripts and the [run config](#run-config) must be located in `[Minecraft instance path]/groovy/` From efc47d7f2b9e5e29a438b38dd3143aaab7703ef1 Mon Sep 17 00:00:00 2001 From: Lonelyxiya <83713575+Lonelyxiya@users.noreply.github.com> Date: Sat, 25 Mar 2023 14:18:03 +0800 Subject: [PATCH 11/11] Modify README.md Modify README.md --- README.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c68014e..f34a5c0 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,5 @@ -# GroovyScript Docs -This is the official repository for the GroovyScript Documentation using Read the Docs and MkDocs\ -Docs are hosted [here](https://groovyscript-docs.readthedocs.io/en/latest/) +# GroovyScript Docs Localization +Being localized ......If you want to see the English wiki tutorial, [please](https://groovyscript-docs.readthedocs.io/en/latest/) ## Test locally Run the following from a terminal @@ -10,4 +9,4 @@ pip install -r requirements.txt mkdocs serve ``` `pip install` installs the required dependencies and `mkdocs serve` builds and runs the doc on a local server.\ -After that simply open [http://127.0.0.1:8000/](http://127.0.0.1:8000/) in a browser. It automatically refreshes when you save files. \ No newline at end of file +After that simply open [http://127.0.0.1:8000/](http://127.0.0.1:8000/) in a browser. It automatically refreshes when you save files.