Lot of stuff
|
@ -27,14 +27,13 @@ You can convert MTS files and generate preview images for them from a script wit
|
|||
Interactive Mode
|
||||
----------------
|
||||
|
||||
Actually the editor has two independent components. One is running outside of the game. In case of a GUI, a picture can tell more
|
||||
than thousand words. Read the editor's [User Manual](https://gitlab.com/bztsrc/mtsedit/blob/master/docs/usage.md) for more details.
|
||||
Actually the editor consist of two independent components. One is running outside of the game, and since it's a GUI application,
|
||||
I think a picture can tell more than thousand words. Read the editor's [User Manual](https://gitlab.com/bztsrc/mtsedit/blob/master/docs/usage.md)
|
||||
for more details.
|
||||
|
||||
<img src="https://gitlab.com/bztsrc/mtsedit/raw/master/docs/mtsedit.png">
|
||||
|
||||
The User Interface is translatable. It should detect your computer's language automatically, but if not, set the `LANG`
|
||||
environment variable. Supported languages: "en" English, "hu" Magyar, "es" Español, "fr" Français, "de" Deutch, "pl" Polski,
|
||||
"ru" русский. Note that block names are user provided, there's no translation for those.
|
||||
The User Interface is translatable. Supported languages: English, Magyar, Español, Français, Deutch, Polski and русский.
|
||||
|
||||
The other component is a Minetest mod, under the [mt-mod](https://gitlab.com/bztsrc/mtsedit/tree/master/mt-mod) directory. This
|
||||
small Lua script runs inside the game, and can import your edited MTS files into the game's world. It can also save MTS files
|
||||
|
|
After Width: | Height: | Size: 748 B |
1333
data/blocks.csv
|
@ -0,0 +1,659 @@
|
|||
Acacia_Bark=Akazienrinde
|
||||
Acacia_Bark_Slab=Akazienrindenplatte
|
||||
Acacia_Bark_Stair=Akazienrindentreppe
|
||||
Acacia_Button=Akazien-Knopf
|
||||
Acacia_Fence=Akazien-Zaun
|
||||
Acacia_Fence_Gate=Akazienzaun Tor
|
||||
Acacia_Leaves=Akazienblätter
|
||||
Acacia=Akazie
|
||||
Acacia_Plank=Acacia Plank
|
||||
Acacia_Pressure_Plate=Akazien-Druckplatte
|
||||
Acacia_Sapling_Flower_Pot=Akazien-Bäumchen-Blumentopf
|
||||
Acacia_Sapling=Akazien-Bäumchen
|
||||
Acacia_Slab=Akazienplatte
|
||||
Acacia_Stair=Akazien-Treppe
|
||||
Acacia_Trapdoor=Akazien-Falltür
|
||||
Activator_Rail=Aktivierungsschiene
|
||||
Allium_Flower_Pot=Allium Blumentopf
|
||||
Allium=Lauch
|
||||
Andesite=Andesit
|
||||
Andesite_Slab=Andesitplatte
|
||||
Andesite_Stair=Andesit Treppe
|
||||
Andesite_Wall=Andesite Wand
|
||||
Anvil=Amboss
|
||||
Azure_Bluet_Flower_Pot=Azure Bluet Blumentopf
|
||||
Azure_Bluet=Azure Bluet
|
||||
Barrier=Barriere
|
||||
Bed_Red=Bett rot
|
||||
Bedrock=Grundgestein
|
||||
Bell=Glocke
|
||||
Birch_Bark=Birkenrinde
|
||||
Birch_Bark_Slab=Birkenrindenplatte
|
||||
Birch_Bark_Stair=Birkenrindentreppe
|
||||
Birch_Button=Birken-Knopf
|
||||
Birch_Door=Birkentür
|
||||
Birch_Fence=Birkenzaun
|
||||
Birch_Fence_Gate=Birkenzaun Tor
|
||||
Birch_Leaves=Birkenblätter
|
||||
Birch=Birke
|
||||
Birch_Plank=Birkenbrett
|
||||
Birch_Pressure_Plate=Birkendruckplatte
|
||||
Birch_Sapling_Flower_Pot=Birkenschössling Blumentopf
|
||||
Birch_Sapling=Birkenschössling
|
||||
Birch_Slab=Birkenplatte
|
||||
Birch_Stair=Birkentreppe
|
||||
Birch_Trapdoor=Birken-Falltür
|
||||
Black_Bed=Schwarzes Bett
|
||||
Black_Carpet=Schwarzer Teppich
|
||||
Black_Concrete=Schwarzer Beton
|
||||
Black_Concrete_Powder=Schwarzbetonpulver
|
||||
Black_Concrete_Slab=Schwarze Betonplatte
|
||||
Black_Concrete_Stair=Schwarze Betontreppe
|
||||
Black_Glazed_Terracotta=Schwarz glasierte Terrakotta
|
||||
Black_Shulker_Box=Schwarze Shulker Box
|
||||
Black_Stained_Glass=Schwarzes Buntglas
|
||||
Black_Stained_Glass_Pane=Schwarze Buntglasscheibe
|
||||
Black_Terracotta=Schwarzer Terrakotta
|
||||
Black_Wool=Schwarze Wolle
|
||||
Blue_Bed=Blaues Bett
|
||||
Blue_Carpet=Blauer Teppich
|
||||
Blue_Concrete=Blauer Beton
|
||||
Blue_Concrete_Powder=Blaues konkretes Pulver
|
||||
Blue_Concrete_Slab=Blaue Betonplatte
|
||||
Blue_Concrete_Stair=Blaue Betontreppe
|
||||
Blue_Glazed_Terracotta=Blau glasierte Terrakotta
|
||||
Blue_Orchid_Flower_Pot=Blumentopf der blauen Orchidee
|
||||
Blue_Orchid=Blaue orchidee
|
||||
Blue_Shulker_Box=Blaue Shulker Box
|
||||
Blue_Stained_Glass=Blaues Buntglas
|
||||
Blue_Stained_Glass_Pane=Blaue Buntglasscheibe
|
||||
Blue_Terracotta=Blaue Terrakotta
|
||||
Blue_Wool=Blaue Wolle
|
||||
Bone_Block=Knochenblock
|
||||
Bookshelf=Bücherregal
|
||||
Brewing_Stand=Brau Stand
|
||||
Brick_Block=Ziegelsteinblock
|
||||
Brick_Slab=Ziegelplatte
|
||||
Brick_Stair=Ziegelsteintreppe
|
||||
Brick_Wall=Ziegelwand
|
||||
Brown_Bed=Braunes Bett
|
||||
Brown_Carpet=Brauner Teppich
|
||||
Brown_Concrete=Brauner Beton
|
||||
Brown_Concrete_Powder=Braunes Betonpulver
|
||||
Brown_Concrete_Slab=Braune Betonplatte
|
||||
Brown_Concrete_Stair=Braune Betontreppe
|
||||
Brown_Glazed_Terracotta=Braun glasierte Terrakotta
|
||||
Brown_Mushroom=Brauner Pilz
|
||||
Brown_Mushroom_Flower_Pot=Brauner Pilz Blumentopf
|
||||
Brown_Shulker_Box=Brown Shulker Box
|
||||
Brown_Stained_Glass=Braunes Buntglas
|
||||
Brown_Stained_Glass_Pane=Brown-Buntglasscheibe
|
||||
Brown_Terracotta=Braune Terrakotta
|
||||
Brown_Wool=Braune Wolle
|
||||
Burning_Furnace=Brennofen
|
||||
Cactus=Kaktus
|
||||
Cactus_Flower_Pot=Kaktus-Blumentopf
|
||||
Cake=Kuchen
|
||||
Cauldron=Kessel
|
||||
Chest=Brust
|
||||
Chiseled_Quartz_Block=Gemeißelter Quarzblock
|
||||
Chiseled_Red_Sandstone=Gemeißelter roter Sandstein
|
||||
Chorus_Flower=Chor Blume
|
||||
Chorus_Plant_Stem=Chorus Pflanzenstamm
|
||||
Clay=Lehm
|
||||
Coal_Block=Kohleblock
|
||||
Coal_Ore=Kohlenerz
|
||||
Coarse_Dirt=Grobschmutz
|
||||
Cobblestone=Kopfsteinpflaster
|
||||
Cobblestone_Slab=Kopfsteinpflaster
|
||||
Cobblestone_Stair=Kopfsteintreppe
|
||||
Cobblestone_Wall=Kopfsteinpflaster
|
||||
Cobweb=Spinnennetz
|
||||
Command_Block=Kommandoblock
|
||||
Cracked_Stone_Brick_Slab=Gebrochene Steinziegelsteinplatte
|
||||
Cracked_Stone_Brick_Stair=Gebrochene Steinziegelsteintreppe
|
||||
Crafting_Table=Basteltisch
|
||||
Creeper_Head=Creeper Head
|
||||
Cut_Red_Sandstone=Schneiden Sie roten Sandstein
|
||||
Cyan_Bed=Cyan Bett
|
||||
Cyan_Carpet=Cyan Teppich
|
||||
Cyan_Concrete=Cyan Beton
|
||||
Cyan_Concrete_Powder=Cyan-blaues Betonpulver
|
||||
Cyan_Concrete_Slab=Cyan Betonplatte
|
||||
Cyan_Concrete_Stair=Cyan-blaue Betontreppe
|
||||
Cyan_Glazed_Terracotta=Cyan glasierte Terrakotta
|
||||
Cyan_Shulker_Box=Cyan Shulker Box
|
||||
Cyan_Stained_Glass=Cyan Glasmalerei
|
||||
Cyan_Stained_Glass_Pane=Cyan-blaue Buntglasscheibe
|
||||
Cyan_Terracotta=Cyan Terrakotta
|
||||
Cyan_Wool=Cyan Wolle
|
||||
Dandelion=Löwenzahn
|
||||
Dandelion_Flower_Pot=Löwenzahn Blumentopf
|
||||
Dark_Oak=Dunkle Eiche
|
||||
Dark_Oak_Bark=Dunkle Eichenrinde
|
||||
Dark_Oak_Bark_Slab=Dunkle Eichenrindenplatte
|
||||
Dark_Oak_Bark_Stair=Dunkle Eichenrindentreppe
|
||||
Dark_Oak_Button=Dunkle Eiche Button
|
||||
Dark_Oak_Fence=Dunkle Eiche Zaun
|
||||
Dark_Oak_Fence_Gate=Dunkle Eiche Zaun Tor
|
||||
Dark_Oak_Leaves=Dunkle Eichenblätter
|
||||
Dark_Oak_Plank=Dark Oak Plank
|
||||
Dark_Oak_Pressure_Plate=Druckplatte aus dunkler Eiche
|
||||
Dark_Oak_Sapling_Flower_Pot=Dunkle Eiche Bäumchen Blumentopf
|
||||
Dark_Oak_Sapling=Schössling aus dunkler Eiche
|
||||
Dark_Oak_Slab=Dunkle Eichenplatte
|
||||
Dark_Oak_Stair=Dunkle Eichentreppe
|
||||
Dark_Oak_Trapdoor=Dunkle Eiche Falltür
|
||||
Dark_Prismarine_Slab=Dunkle Prisma-Platte
|
||||
Dark_Prismarine_Stair=Dunkle Prismatreppe
|
||||
Daylight_Sensor=Tageslicht-Sensor
|
||||
Dead_Bush=Toter Busch
|
||||
Dead_Bush_Flower_Pot=Toter Busch Blumentopf
|
||||
Dead_Chorus_Flower=Tote Chorblume
|
||||
Detector_Rail=Detektorschiene
|
||||
Diamond_Block=Diamant-Block
|
||||
Diamond_Ore=Diamant-Erz
|
||||
Diorite=Diorit
|
||||
Diorite_Slab=Diorit-Platte
|
||||
Diorite_Stair=Dioritentreppe
|
||||
Diorite_Wall=Diorit Wand
|
||||
Dirt=Schmutz
|
||||
Disabled_Hopper=Behinderter Hopper
|
||||
Disabled_Side_Hopper=Behindertenseitenbehälter
|
||||
Dispenser=Spender
|
||||
Double_Acacia_Bark_Slab=Doppelakazienrindenplatte
|
||||
Double_Acacia_Slab=Doppelakazienplatte
|
||||
Double_Andesite_Slab=Doppelte Andesitplatte
|
||||
Double_Birch_Bark_Slab=Doppelte Birkenrindenplatte
|
||||
Double_Birch_Slab=Doppelte Birkenplatte
|
||||
Double_Black_Concrete_Slab=Doppelte schwarze Betonplatte
|
||||
Double_Blue_Concrete_Slab=Doppelte blaue Betonplatte
|
||||
Double_Brick_Slab=Doppelte Backsteinplatte
|
||||
Double_Brown_Concrete_Slab=Doppelte braune Betonplatte
|
||||
Double_Cobblestone_Slab=Doppelte Kopfsteinpflasterplatte
|
||||
Double_Cracked_Stone_Brick_Slab=Doppelte gebrochene Steinziegelstein-Platte
|
||||
Double_Cyan_Concrete_Slab=Doppelte cyan-blaue Betonplatte
|
||||
Double_Dark_Oak_Bark_Slab=Doppelte dunkle Eichenrindenplatte
|
||||
Double_Dark_Oak_Slab=Doppelte dunkle Eiche Platte
|
||||
Double_Dark_Prismarine_Slab=Doppelte dunkle Prisma-Platte
|
||||
Double_Diorite_Slab=Doppelte Dioritplatte
|
||||
Double_End_Stone_Brick_Slab=Double End Stone Brick Platte
|
||||
Double_Gold_Block_Slab=Doppelte Goldblockplatte
|
||||
Double_Granite_Slab=Doppelte Granitplatte
|
||||
Double_Green_Concrete_Slab=Doppelte grüne Betonplatte
|
||||
Double_Grey_Concrete_Slab=Doppelte graue Betonplatte
|
||||
Double_Iron_Block_Slab=Doppelte Eisenblockplatte
|
||||
Double_Jungle_Bark_Slab=Doppelte Dschungelrindenplatte
|
||||
Double_Jungle_Slab=Doppelte Dschungelplatte
|
||||
Double_Lapis_Lazuli_Slab=Doppelte Lapislazuli-Platte
|
||||
Double_Light_Blue_Concrete_Slab=Doppelte hellblaue Betonplatte
|
||||
Double_Light_Grey_Concrete_Slab=Doppelte hellgraue Betonplatte
|
||||
Double_Lime_Concrete_Slab=Doppelte Kalk-Betonplatte
|
||||
Double_Magenta_Concrete_Slab=Doppelte magentarote Betonplatte
|
||||
Double_Mossy_Stone_Brick_Slab=Doppelte moosige Steinziegelsteinplatte
|
||||
Double_Mossy_Stone_Slab=Doppelte moosige Steinplatte
|
||||
Double_Nether_Brick_Slab=Doppelte Nether-Ziegelplatte
|
||||
Double_Oak_Bark_Slab=Doppelte Eichenrindenplatte
|
||||
Double_Oak_Slab=Doppelte Eichenplatte
|
||||
Double_Orange_Concrete_Slab=Doppelte orange Betonplatte
|
||||
Double_Pink_Concrete_Slab=Doppelte rosa Betonplatte
|
||||
Double_Polished_Andesite_Slab=Doppelpolierte Andesitplatte
|
||||
Double_Polished_Diorite_Slab=Doppelt polierte Dioritplatte
|
||||
Double_Polished_Granite_Slab=Doppelpolierte Granitplatte
|
||||
Double_Polished_Stone_Slab=Doppelte polierte Steinplatte
|
||||
Double_Prismarine_Brick_Slab=Doppelte Prisma-Ziegelplatte
|
||||
Double_Prismarine_Slab=Doppelte Prisma-Platte
|
||||
Double_Purple_Concrete_Slab=Doppelte lila Betonplatte
|
||||
Double_Purpur_Slab=Doppelte Purpur-Platte
|
||||
Double_Quartz_Slab=Doppelte Quarzplatte
|
||||
Double_Red_Concrete_Slab=Doppelte rote Betonplatte
|
||||
Double_Red_Nether_Brick_Slab=Doppelte rote Nether-Ziegelsteinplatte
|
||||
Double_Red_Sandstone_Slab=Doppelte rote Sandsteinplatte
|
||||
Double_Sandstone_Slab=Doppelte Sandsteinplatte
|
||||
Double_Smooth_Quartz_Slab=Doppelte glatte Quarzplatte
|
||||
Double_Smooth_Red_Sandstone_Slab=Doppelte glatte rote Sandsteinplatte
|
||||
Double_Smooth_Sandstone_Slab=Doppelte glatte Sandsteinplatte
|
||||
Double_Spruce_Bark_Slab=Doppelte Fichtenrindenplatte
|
||||
Double_Spruce_Slab=Doppelte Fichtenplatte
|
||||
Double_Stone_Brick_Slab=Doppelte Steinplatte
|
||||
Double_Stone_Slab=Doppelte Steinplatte
|
||||
Double_Tallgrass=Doppeltes hohes Gras
|
||||
Double_White_Concrete_Slab=Doppelte weiße Betonplatte
|
||||
Double_Yellow_Concrete_Slab=Doppelte gelbe Betonplatte
|
||||
Dragon_Egg=Drachenei
|
||||
Dropper=Tropfer
|
||||
Emerald_Block=Smaragdblock
|
||||
Emerald_Ore=Smaragderz
|
||||
Enchanting_Table=Bezaubernde Tabelle
|
||||
Ender_Chest=Ender Kiste
|
||||
End_Portal=Portal beenden
|
||||
End_Portal_Frame=End Portal Frame
|
||||
End_Portal_Frame_with_Eye_of_Ender=End Portal Frame mit Eye of Ender
|
||||
End_Rod=Endstange
|
||||
End_Stone=End Stone
|
||||
End_Stone_Brick=Ende Stein Ziegel
|
||||
End_Stone_Brick_Slab=Ende Stein Ziegelplatte
|
||||
End_Stone_Brick_Stair=Ende Stein Ziegel Treppe
|
||||
End_Stone_Brick_Wall=Ende Steinmauer
|
||||
Eternal_Fire=Ewiges Feuer
|
||||
Faceless_Pumpkin=Gesichtsloser Kürbis
|
||||
Farmland=Ackerland
|
||||
Fence=Zaun
|
||||
Fern_Flower_Pot=Farn Blumentopf
|
||||
Fern=Farn
|
||||
Fire=Feuer
|
||||
Flower_Pot=Blumentopf
|
||||
Flowing_Lava=Fließende Lava
|
||||
Flowing_Nether_Lava=Fließende Lava
|
||||
Flowing_River_Water=Fließendes Flusswasser
|
||||
Flowing_Water=Fließendes Wasser
|
||||
Frosted_Ice=Gefrostetes Eis
|
||||
Furnace=Ofen
|
||||
Glass=Glas
|
||||
Glass_Pane=Glasscheibe
|
||||
Glowstone=Leuchtstein
|
||||
Gold_Block=Goldblock
|
||||
Gold_Block_Slab=Goldblock-Platte
|
||||
Gold_Block_Stair=Goldblock Treppe
|
||||
Gold_Ore=Golderz
|
||||
Granite=Granit
|
||||
Granite_Slab=Granitplatte
|
||||
Granite_Stair=Granittreppe
|
||||
Granite_Wall=Granitwand
|
||||
Grass=Gras
|
||||
Grass_Block=Grass Block
|
||||
Grass_Dry=Gras trocken
|
||||
Grass_Path=Grasweg
|
||||
Gravel=Kies
|
||||
Green_Bed=Grünes Bett
|
||||
Green_Carpet=Grüner Teppich
|
||||
Green_Concrete=Grüner Beton
|
||||
Green_Concrete_Powder=Grünbetonpulver
|
||||
Green_Concrete_Slab=Grüne Betonplatte
|
||||
Green_Concrete_Stair=Grüne Betontreppe
|
||||
Green_Glazed_Terracotta=Grün glasierte Terrakotta
|
||||
Green_Shulker_Box=Grüne Shulker Box
|
||||
Green_Stained_Glass=Grünes Buntglas
|
||||
Green_Stained_Glass_Pane=Grüne Buntglasscheibe
|
||||
Green_Terracotta=Grüne Terrakotta
|
||||
Green_Wool=Grüne Wolle
|
||||
Grey_Bed=Graues Bett
|
||||
Grey_Carpet=Grauer Teppich
|
||||
Grey_Concrete=Grauer Beton
|
||||
Grey_Concrete_Powder=Graues Betonpulver
|
||||
Grey_Concrete_Slab=Graue Betonplatte
|
||||
Grey_Concrete_Stair=Graue Betontreppe
|
||||
Grey_Glazed_Terracotta=Grau glasierte Terrakotta
|
||||
Grey_Shulker_Box=Graue Shulker Box
|
||||
Grey_Stained_Glass=Graues Buntglas
|
||||
Grey_Stained_Glass_Pane=Graue Buntglasscheibe
|
||||
Grey_Terracotta=Grauer Terrakotta
|
||||
Grey_Wool=Graue Wolle
|
||||
Hay_Bale=Hay Bale
|
||||
Hopper=Trichter
|
||||
Huge_Brown_Mushroom_All-Faces_Stem=Riesige braune Pilz All-Faces Stem
|
||||
Huge_Brown_Mushroom_Block=Enormer brauner Pilz-Block
|
||||
Huge_Brown_Mushroom_Stem=Riesiger brauner Pilzstamm
|
||||
Huge_Red_Mushroom_All-Faces_Stem=Riesige rote Pilz All-Faces Stem
|
||||
Huge_Red_Mushroom_Block=Sehr großer roter Pilz-Block
|
||||
Huge_Red_Mushroom_Stem=Riesiger roter Pilzstamm
|
||||
Human_Head=Menschlicher Kopf
|
||||
Hydrated_Farmland=Hydriertes Ackerland
|
||||
Ice=Eis
|
||||
Ice_Slab=Eisplatte
|
||||
Ice_Stair=Eistreppe
|
||||
Infested_Chiseled_Stone_Brick=Befallener gemeißelter Steinziegelstein
|
||||
Infested_Cobblestone=Befallener Kopfsteinpflasterstein
|
||||
Infested_Cracked_Stone_Brick=Befallener gebrochener Steinziegelstein
|
||||
Infested_Mossy_Stone_Brick=Befallener moosiger Steinziegelstein
|
||||
Infested_Stone=Befallener Stein
|
||||
Infested_Stone_Brick=Befallener Steinziegelstein
|
||||
Inverted_Daylight_Sensor=Invertierter Tageslichtsensor
|
||||
Iron_Bar=Eisenstange
|
||||
Iron_Block=Eisenblock
|
||||
Iron_Block_Slab=Eisenblockplatte
|
||||
Iron_Block_Stair=Eiserne Blocktreppe
|
||||
Iron_Door=Eiserne Tür
|
||||
Iron_Ore=Eisenerz
|
||||
Iron_Trapdoor=Eiserne Falltür
|
||||
Item_Frame=Artikel Rahmen
|
||||
Jack_o_Lantern=Jack o Laterne
|
||||
Jungle_Bark=Dschungel-Barke
|
||||
Jungle_Bark_Slab=Dschungelrindenplatte
|
||||
Jungle_Bark_Stair=Dschungel-Borkentreppe
|
||||
Jungle_Button=Dschungel-Knopf
|
||||
Jungle_Fence=Dschungel-Zaun
|
||||
Jungle_Fence_Gate=Dschungelzauntor
|
||||
Jungle_Leaves=Dschungel-Blätter
|
||||
Jungle=Urwald
|
||||
Jungle_Plank=Dschungel-Planke
|
||||
Jungle_Pressure_Plate=Dschungel-Druckplatte
|
||||
Jungle_Sapling_Flower_Pot=Dschungel Bäumchen Blumentopf
|
||||
Jungle_Sapling=Dschungel-Bäumchen
|
||||
Jungle_Slab=Dschungel-Platte
|
||||
Jungle_Stair=Dschungeltreppe
|
||||
Jungle_Trapdoor=Dschungel-Falltür
|
||||
Ladder=Leiter
|
||||
Lapis_Lazuli_Block=Lapislazuli-Block
|
||||
Lapis_Lazuli_Ore=Lapislazuli Erz
|
||||
Lapis_Lazuli_Slab=Lapislazuli-Platte
|
||||
Lapis_Lazuli_Stair=Lapislazuli-Treppe
|
||||
Large_Fern=Großer Farn
|
||||
Lava_Source=Lavaquelle
|
||||
Leaves=Blätter
|
||||
Lever=Hebel
|
||||
Light_Blue_Bed=Hellblaues Bett
|
||||
Light_Blue_Carpet=Hellblauer Teppich
|
||||
Light_Blue_Concrete=Hellblauer Beton
|
||||
Light_Blue_Concrete_Powder=Hellblaues Betonpulver
|
||||
Light_Blue_Concrete_Slab=Hellblaue Betonplatte
|
||||
Light_Blue_Concrete_Stair=Hellblaue Betontreppe
|
||||
Light_Blue_Glazed_Terracotta=Hellblau glasierte Terrakotta
|
||||
Light_Blue_Shulker_Box=Leichte blaue Shulker Box
|
||||
Light_Blue_Stained_Glass=Hellblaues Buntglas
|
||||
Light_Blue_Stained_Glass_Pane=Hellblaue Buntglasscheibe
|
||||
Light_Blue_Terracotta=Hellblaue Terrakotta
|
||||
Light_Blue_Wool=Hellblaue Wolle
|
||||
Light_Grey_Bed=Hellgraues Bett
|
||||
Light_Grey_Carpet=Hellgrauer Teppich
|
||||
Light_Grey_Concrete=Hellgrauer Beton
|
||||
Light_Grey_Concrete_Powder=Hellgraues Betonpulver
|
||||
Light_Grey_Concrete_Slab=Hellgraue Betonplatte
|
||||
Light_Grey_Concrete_Stair=Hellgraue Betontreppe
|
||||
Light_Grey_Glazed_Terracotta=Hellgrau glasierte Terrakotta
|
||||
Light_Grey_Shulker_Box=Hellgraue Shulker Box
|
||||
Light_Grey_Stained_Glass=Hellgraues Buntglas
|
||||
Light_Grey_Stained_Glass_Pane=Hellgraue Buntglasscheibe
|
||||
Light_Grey_Terracotta=Hellgrauer Terrakotta
|
||||
Light_Grey_Wool=Hellgraue Wolle
|
||||
Lilac=Lila
|
||||
Lime_Bed=Kalk-Bett
|
||||
Lime_Carpet=Kalk Teppich
|
||||
Lime_Concrete=Kalk Beton
|
||||
Lime_Concrete_Powder=Kalk-Betonpulver
|
||||
Lime_Concrete_Slab=Kalk-Betonplatte
|
||||
Lime_Concrete_Stair=Kalkbetontreppe
|
||||
Lime_Glazed_Terracotta=Kalk glasierte Terrakotta
|
||||
Lime_Shulker_Box=Kalk Shulker Box
|
||||
Lime_Stained_Glass=Kalk Glasmalerei
|
||||
Lime_Stained_Glass_Pane=Kalk-Buntglasscheibe
|
||||
Lime_Terracotta=Kalk-Terrakotta
|
||||
Lime_Wool=Kalk Wolle
|
||||
Lit_Redstone_Ore=Lit Redstone Erz
|
||||
Magenta_Bed=Magenta Bett
|
||||
Magenta_Carpet=Magenta Teppich
|
||||
Magenta_Concrete=Magenta Beton
|
||||
Magenta_Concrete_Powder=Magenta Betonpulver
|
||||
Magenta_Concrete_Slab=Magenta Betonplatte
|
||||
Magenta_Concrete_Stair=Magenta Betontreppe
|
||||
Magenta_Glazed_Terracotta=Magenta glasierte Terrakotta
|
||||
Magenta_Shulker_Box=Magenta Shulker Box
|
||||
Magenta_Stained_Glass=Magenta Glasmalerei
|
||||
Magenta_Stained_Glass_Pane=Magentarote Buntglasscheibe
|
||||
Magenta_Terracotta=Magenta Terrakotta
|
||||
Magenta_Wool=Magenta Wolle
|
||||
Magma_Block=Magma Block
|
||||
Mature_Beetroot_Plant=Reife Rote-Bete-Pflanze
|
||||
Mature_Carrot_Plant=Reife Karottenpflanze
|
||||
Mature_Cocoa_Pod=Reife Kakaofrucht
|
||||
Mature_Melon_Stem=Reifer Melonenstamm
|
||||
Mature_Nether_Wart=Reife Netherwarze
|
||||
Mature_Potato_Plant=Reife Kartoffelpflanze
|
||||
Mature_Pumpkin_Stem=Reifer Kürbisstamm
|
||||
Mature_Wheat_Plant=Reife Weizenpflanze
|
||||
Medium_Cocoa_Pod=Mittlere Kakaofrucht
|
||||
Melon=Melone
|
||||
Mob_Spawner=Mob Spawner
|
||||
Mossy_Cobblestone=Moosiger Kopfsteinpflasterstein
|
||||
Mossy_Cobblestone_Wall=Moosige Kopfsteinpflasterwand
|
||||
Mossy_Stone_Brick=Moosiger Steinziegelstein
|
||||
Mossy_Stone_Brick_Slab=Moosige Steinziegelplatte
|
||||
Mossy_Stone_Brick_Stair=Moosige Steinziegelsteintreppe
|
||||
Mossy_Stone_Brick_Wall=Moosige Steinbacksteinmauer
|
||||
Mossy_Stone_Slab=Moosige Steinplatte
|
||||
Mossy_Stone_Stair=Moosige Steintreppe
|
||||
Mycelium=Myzel
|
||||
Nether_Brick_Block=Nether-Ziegelsteinblock
|
||||
Nether_Brick_Fence=Nether-Ziegelzaun
|
||||
Nether_Brick_Fence_Gate=Nether Ziegel Zaun Tor
|
||||
Nether_Brick_Slab=Nether Brick Slab
|
||||
Nether_Brick_Stair=Netherziegelsteintreppe
|
||||
Nether_Brick_Wall=Nether Backsteinmauer
|
||||
Nether_Lava_Source=Ätherische Lavaquelle
|
||||
Nether_Portal=Netherportal
|
||||
Nether_Quartz_Ore=Netherquarzerz
|
||||
Nether_Wart_Block=Netherwarzenblock
|
||||
Note_Block=Notizblock
|
||||
Oak=Eiche
|
||||
Oak_Bark=Eichenrinde
|
||||
Oak_Bark_Slab=Eichenrindenplatte
|
||||
Oak_Bark_Stair=Eichenrindentreppe
|
||||
Oak_Button=Eiche Button
|
||||
Oak_Door=Eichentür
|
||||
Oak_Fence_Gate=Eiche Zaun Tor
|
||||
Oak_Ladder=Eichenleiter
|
||||
Oak_Plank=Eiche Planke
|
||||
Oak_Pressure_Plate=Eiche Druckplatte
|
||||
Oak_Sapling=Eiche Schössling
|
||||
Oak_Sapling_Flower_Pot=Eiche Bäumchen Blumentopf
|
||||
Oak_Slab=Eichenplatte
|
||||
Oak_Stair=Eichentreppe
|
||||
Oak_Wall_Sign=Eiche Wandschild
|
||||
Observer=Beobachter
|
||||
Obsidian_Glass_Pane=Obsidian-Glasscheibe
|
||||
Obsidian_Glass_Slab=Obsidian-Glasplatte
|
||||
Obsidian_Glass_Stair=Obsidian Glastreppe
|
||||
Obsidian_Slab=Obsidianplatte
|
||||
Obsidian_Stair=Obsidian-Treppe
|
||||
Orange_Bed=Orange Bett
|
||||
Orange_Carpet=Orange Teppich
|
||||
Orange_Concrete=Orange Beton
|
||||
Orange_Concrete_Powder=Orange Betonpulver
|
||||
Orange_Concrete_Slab=Orange Betonplatte
|
||||
Orange_Concrete_Stair=Orange Betontreppe
|
||||
Orange_Glazed_Terracotta=Orange glasierte Terrakotta
|
||||
Orange_Shulker_Box=Orange Shulker Box
|
||||
Orange_Stained_Glass=Orange Buntglas
|
||||
Orange_Stained_Glass_Pane=Orange Buntglasscheibe
|
||||
Orange_Terracotta=Orange Terrakotta
|
||||
Orange_Tulip_Flower_Pot=Orange Tulpe Blumentopf
|
||||
Orange_Tulip=Orange Tulpe
|
||||
Orange_Wool=Orange Wolle
|
||||
Oxeye_Daisy_Flower_Pot=Ochsenauge Daisy Blumentopf
|
||||
Oxeye_Daisy=Ochsenauge Gänseblümchen
|
||||
Packed_Ice=Packeis
|
||||
Peony=Pfingstrose
|
||||
Pillar_Quartz_Block=Säulenquarzblock
|
||||
Pink_Bed=Rosa Bett
|
||||
Pink_Carpet=Rosa Teppich
|
||||
Pink_Concrete=Rosa Beton
|
||||
Pink_Concrete_Powder=Rosa Betonpulver
|
||||
Pink_Concrete_Slab=Rosa Betonplatte
|
||||
Pink_Concrete_Stair=Rosa Betontreppe
|
||||
Pink_Glazed_Terracotta=Rosa glasierte Terrakotta
|
||||
Pink_Shulker_Box=Pink Shulker Box
|
||||
Pink_Stained_Glass=Rosa Glasmalerei
|
||||
Pink_Stained_Glass_Pane=Rosa Buntglasscheibe
|
||||
Pink_Terracotta=Rosa Terrakotta
|
||||
Pink_Tulip_Flower_Pot=Rosa Tulpenblumentopf
|
||||
Pink_Tulip=Rosafarbene Tulpe
|
||||
Pink_Wool=Rosa Wolle
|
||||
Piston=Kolben
|
||||
Polished_Andesite=Polierter Andesit
|
||||
Polished_Andesite_Slab=Polierte Andesitplatte
|
||||
Polished_Andesite_Stair=Polierte Andesittreppe
|
||||
Polished_Diorite=Polierter Diorit
|
||||
Polished_Diorite_Slab=Polierte Dioritplatte
|
||||
Polished_Diorite_Stair=Polierte Dioritentreppe
|
||||
Polished_Granite=Polierter Granit
|
||||
Polished_Granite_Slab=Polierte Granitplatte
|
||||
Polished_Granite_Stair=Polierte Granittreppe
|
||||
Polished_Stone=Polierter Stein
|
||||
Poppy=Mohn
|
||||
Poppy_Flower_Pot=Mohn Blumentopf
|
||||
Powered_Rail=Angetriebene Schiene
|
||||
Powered_Redstone_Spot=Angetriebener Redstone Spot
|
||||
Powered_Redstone_Trail=Powered Redstone Trail
|
||||
Prismarine_Brick=Prismarine Brick
|
||||
Prismarine_Brick_Slab=Prismarine Brick Slab
|
||||
Prismarine_Brick_Stair=Prismarine Backsteintreppe
|
||||
Prismarine_Dark=Prismarine Dark
|
||||
Prismarine_Slab=Prismarine-Platte
|
||||
Prismarine_Stair=Prismatische Treppe
|
||||
Prismarine_Wall=Prismarine Wand
|
||||
Pumpkin=Kürbis
|
||||
Purple_Bed=Lila Bett
|
||||
Purple_Carpet=Lila Teppich
|
||||
Purple_Concrete=Lila Beton
|
||||
Purple_Concrete_Powder=Lila Betonpulver
|
||||
Purple_Concrete_Slab=Lila Betonplatte
|
||||
Purple_Concrete_Stair=Lila Betontreppe
|
||||
Purple_Glazed_Terracotta=Lila glasierte Terrakotta
|
||||
Purple_Shulker_Box=Lila Shulker Box
|
||||
Purple_Stained_Glass=Lila Glasmalerei
|
||||
Purple_Stained_Glass_Pane=Lila Buntglasscheibe
|
||||
Purple_Terracotta=Lila Terrakotta
|
||||
Purple_Wool=Lila Wolle
|
||||
Purpur_Block=Purpur Block
|
||||
Purpur_Pillar=Purpur-Säule
|
||||
Purpur_Slab=Purpur-Platte
|
||||
Purpur_Stair=Purpur-Treppe
|
||||
Quartz_Block=Quarzblock
|
||||
Quartz_Slab=Quarzplatte
|
||||
Quartz_Stair=Quarztreppe
|
||||
Rail=Schiene
|
||||
Realm_Barrier=Reichsbarriere
|
||||
Red_Bed=Rotes Bett
|
||||
Red_Carpet=Roter Teppich
|
||||
Red_Concrete=Roter Beton
|
||||
Red_Concrete_Powder=Rotes Betonpulver
|
||||
Red_Concrete_Slab=Rote Betonplatte
|
||||
Red_Concrete_Stair=Rote Betontreppe
|
||||
Red_Glazed_Terracotta=Rot glasierte Terrakotta
|
||||
Red_Mushroom=Roter Pilz
|
||||
Red_Mushroom_Flower_Pot=Roter Pilz Blumentopf
|
||||
Red_Nether_Brick_Block=Red Nether Brick Block
|
||||
Red_Nether_Brick_Fence_Gate=Red Nether Brick Fence Gate
|
||||
Red_Nether_Brick_Fence=Red Nether Brick Zaun
|
||||
Red_Nether_Brick_Slab=Rote Nether-Ziegelplatte
|
||||
Red_Nether_Brick_Stair=Rote Netherziegelsteintreppe
|
||||
Red_Nether_Brick_Wall=Rote Nether-Backsteinmauer
|
||||
Red_Sand=Roter Sand
|
||||
Red_Sandstone=Roter Sandstein
|
||||
Red_Sandstone_Slab=Rote Sandsteinplatte
|
||||
Red_Sandstone_Stair=Rote Sandsteintreppe
|
||||
Red_Sandstone_Wall=Rote Sandsteinmauer
|
||||
Red_Shulker_Box=Red Shulker Box
|
||||
Red_Stained_Glass=Rotes Buntglas
|
||||
Red_Stained_Glass_Pane=Rote Buntglasscheibe
|
||||
Redstone=roter Stein
|
||||
Redstone_Block=Redstone Block
|
||||
Redstone_Comparator_(Off)=Redstone-Komparator (Aus)
|
||||
Redstone_Comparator_(On)=Redstone-Komparator (Ein)
|
||||
Redstone_Lamp=Redstone-Lampe
|
||||
Redstone_Ore=Redstone-Erz
|
||||
Redstone_Repeater=Redstone Repeater
|
||||
Redstone_Repeater_(Powered)=Redstone Repeater (powered)
|
||||
Redstone_Torch=Redstone-Fackel
|
||||
Redstone_Torch_(off)=Redstone-Fackel (aus)
|
||||
Redstone_Trail=Redstone Trail
|
||||
Red_Terracotta=Rote Terrakotta
|
||||
Red_Tulip_Flower_Pot=Rote Tulpe Blumentopf
|
||||
Red_Tulip=Rote Tulpe
|
||||
Red_Wool=Rote Wolle
|
||||
Riverwaterlogged_Sponge=Flusswasserschwamm
|
||||
River_Water_Source=Flusswasserquelle
|
||||
Rose_Bush=Rosenstrauch
|
||||
Sandstone=Sandstein
|
||||
Sandstone_Carved=Sandstein geschnitzt
|
||||
Sandstone_Slab=Sandsteinplatte
|
||||
Sandstone_Smooth=Sandstein glatt
|
||||
Sandstone_Stair=Sandsteintreppe
|
||||
Sandstone_Wall=Sandsteinmauer
|
||||
Sea_Lantern=Seelaterne
|
||||
Side_Hopper=Seitlicher Trichter
|
||||
Skeleton_Skull=Skeleton Schädel
|
||||
Slime_Block=Schleimblock
|
||||
Smooth_Quartz=Glatter Quarz
|
||||
Smooth_Quartz_Slab=Glatte Quarzplatte
|
||||
Smooth_Quartz_Stair=Glatte Quarztreppe
|
||||
Smooth_Red_Sandstone=Glatter roter Sandstein
|
||||
Smooth_Red_Sandstone_Slab=Glatte rote Sandsteinplatte
|
||||
Smooth_Red_Sandstone_Stair=Glatte rote Sandsteintreppe
|
||||
Smooth_Sandstone=Glatter Sandstein
|
||||
Smooth_Sandstone_Slab=Glatte Sandsteinplatte
|
||||
Smooth_Sandstone_Stair=Glatte Sandsteintreppe
|
||||
Snow_Block=Schneeblock
|
||||
Snow_Layer=Schneeschicht
|
||||
Soul_Sand=Seelensand
|
||||
Sponge=Schwamm
|
||||
Spruce_Bark=Fichtenrinde
|
||||
Spruce_Bark_Slab=Fichtenrindenplatte
|
||||
Spruce_Bark_Stair=Fichtenrindentreppe
|
||||
Spruce_Button=Fichte Button
|
||||
Spruce_Fence=Fichte Zaun
|
||||
Spruce_Fence_Gate=Fichte Zaun Tor
|
||||
Spruce_Leaves=Fichtenblätter
|
||||
Spruce_Log=Fichte Log
|
||||
Spruce=Fichte
|
||||
Spruce_Pressure_Plate=Fichte Druckplatte
|
||||
Spruce_Sapling_Flower_Pot=Fichte Bäumchen Blumentopf
|
||||
Spruce_Sapling=Fichte Bäumchen
|
||||
Spruce_Slab=Fichtenplatte
|
||||
Spruce_Stair=Fichtentreppe
|
||||
Spruce_Stair=Fichtentreppe
|
||||
Spruce_Trapdoor=Fichte Falltür
|
||||
Sticky_Piston=Klebriger Kolben
|
||||
Stone=Stein
|
||||
Stone_Brick=Steinziegel
|
||||
Stone_Brick_Carved=Stein Ziegel geschnitzt
|
||||
Stone_Brick_Cracked=Stein Ziegel geknackt
|
||||
Stone_Brick_Slab=Stein Backsteinplatte
|
||||
Stone_Brick_Stair=Stein Ziegel Treppe
|
||||
Stone_Brick_Stair=Stein Ziegel Treppe
|
||||
Stone_Brick_Wall=Stein Backsteinmauer
|
||||
Stone_Button=Steinknopf
|
||||
Stone_Pressure_Plate=Steindruckplatte
|
||||
Stone_Slab=Steinplatte
|
||||
Stone_Stair=Steintreppe
|
||||
Sugar_Canes=Zuckerrohr
|
||||
Sunflower=Sonnenblume
|
||||
Tall_Grass=Hohes Gras
|
||||
Terracotta=Terrakotta
|
||||
Torch=Fackel
|
||||
Trapdoor=Falltür
|
||||
Trapped_Chest=Gefangene Truhe
|
||||
Vines=Reben
|
||||
Void=Leere
|
||||
Waterlily=Seerose
|
||||
Waterlogged_Sponge=Wasserdurchtränkter Schwamm
|
||||
Water_Source=Wasserquelle
|
||||
White_Bed=Weißes Bett
|
||||
White_Carpet=Weißer Teppich
|
||||
White_Concrete=Weißer Beton
|
||||
White_Concrete_Powder=Weißes Betonpulver
|
||||
White_Concrete_Slab=Weiße Betonplatte
|
||||
White_Concrete_Stair=Weiße Betontreppe
|
||||
White_Glass_Pane=Weiße Glasscheibe
|
||||
White_Glazed_Terracotta=Weiß glasierte Terrakotta
|
||||
White_Shulker_Box=Weiße Shulker Box
|
||||
White_Stained_Glass=Weißes Buntglas
|
||||
White_Stained_Glass_Pane=Weiße Buntglasscheibe
|
||||
White_Terracotta=Weißer Terrakotta
|
||||
White_Tulip_Flower_Pot=Weiße Tulpe Blumentopf
|
||||
White_Tulip=Weiße Tulpe
|
||||
Wither_Skeleton_Skull=Wither Skeleton Skull
|
||||
Wool=Wolle
|
||||
Yellow_Bed=Gelbes Bett
|
||||
Yellow_Carpet=Gelber Teppich
|
||||
Yellow_Concrete=Gelber Beton
|
||||
Yellow_Concrete_Powder=Gelbes konkretes Pulver
|
||||
Yellow_Concrete_Slab=Gelbe Betonplatte
|
||||
Yellow_Concrete_Stair=Gelbe Betontreppe
|
||||
Yellow_Glazed_Terracotta=Gelb glasierte Terrakotta
|
||||
Yellow_Shulker_Box=Gelbe Shulker Box
|
||||
Yellow_Stained_Glass=Gelbes Buntglas
|
||||
Yellow_Stained_Glass_Pane=Gelbe Buntglasscheibe
|
||||
Yellow_Terracotta=Gelbe Terrakotta
|
||||
Yellow_Wool=Gelbe Wolle
|
||||
Zombie_Head=Zombie-Kopf
|
|
@ -0,0 +1,659 @@
|
|||
Acacia_Bark=Corteza de acacia
|
||||
Acacia_Bark_Slab=Losa de corteza de acacia
|
||||
Acacia_Bark_Stair=Escalera de corteza de acacia
|
||||
Acacia_Button=Botón de acacia
|
||||
Acacia_Fence=Valla de acacia
|
||||
Acacia_Fence_Gate=Puerta de valla de acacia
|
||||
Acacia_Leaves=Hojas de acacia
|
||||
Acacia_Plank=Tablón de acacia
|
||||
Acacia_Pressure_Plate=Plato de presión de acacia
|
||||
Acacia_Sapling_Flower_Pot=Maceta de arbolito de acacia
|
||||
Acacia_Sapling=Árbol de acacia
|
||||
Acacia_Slab=Losa de acacia
|
||||
Acacia_Stair=Escalera de acacia
|
||||
Acacia_Trapdoor=Trampilla de acacia
|
||||
Activator_Rail=Carril activador
|
||||
Allium_Flower_Pot=Allium Flower Pot
|
||||
Andesite=Andesita
|
||||
Andesite_Slab=Losa de andesita
|
||||
Andesite_Stair=Escalera de andesita
|
||||
Andesite_Wall=Muro de andesita
|
||||
Anvil=Yunque
|
||||
Azure_Bluet_Flower_Pot=Maceta azul azur
|
||||
Azure_Bluet=Bluet azur
|
||||
Barrier=Barrera
|
||||
Bed_Red=Cama roja
|
||||
Bedrock=Base
|
||||
Bell=Campana
|
||||
Birch_Bark=Corteza de abedul
|
||||
Birch_Bark_Slab=Losa de corteza de abedul
|
||||
Birch_Bark_Stair=Escalera de corteza de abedul
|
||||
Birch_Button=Botón de abedul
|
||||
Birch_Door=Puerta de abedul
|
||||
Birch_Fence=Valla de abedul
|
||||
Birch_Fence_Gate=Puerta de valla de abedul
|
||||
Birch_Leaves=Hojas de abedul
|
||||
Birch=Abedul
|
||||
Birch_Plank=Tablón de abedul
|
||||
Birch_Pressure_Plate=Placa de presión de abedul
|
||||
Birch_Sapling_Flower_Pot=Maceta de arbolito de abedul
|
||||
Birch_Sapling=Retoño de abedul
|
||||
Birch_Slab=Losa de abedul
|
||||
Birch_Stair=Escalera de abedul
|
||||
Birch_Trapdoor=Trampilla de abedul
|
||||
Black_Bed=Cama negra
|
||||
Black_Carpet=Alfombra negra
|
||||
Black_Concrete=Hormigón negro
|
||||
Black_Concrete_Powder=Polvo de hormigón negro
|
||||
Black_Concrete_Slab=Losa de hormigón negro
|
||||
Black_Concrete_Stair=Escalera de hormigón negro
|
||||
Black_Glazed_Terracotta=Terracota Glaseada Negra
|
||||
Black_Shulker_Box=Caja Shulker Negra
|
||||
Black_Stained_Glass=Vidrieras negras
|
||||
Black_Stained_Glass_Pane=Panel de vidrieras negras
|
||||
Black_Terracotta=Terracota Negra
|
||||
Black_Wool=Lana negra
|
||||
Blue_Bed=Cama azul
|
||||
Blue_Carpet=Alfombra azul
|
||||
Blue_Concrete=Hormigón Azul
|
||||
Blue_Concrete_Powder=Polvo de concreto azul
|
||||
Blue_Concrete_Slab=Losa de hormigón azul
|
||||
Blue_Concrete_Stair=Escalera de hormigón azul
|
||||
Blue_Glazed_Terracotta=Terracota Glaseada Azul
|
||||
Blue_Orchid_Flower_Pot=Maceta de orquídeas azules
|
||||
Blue_Orchid=Orquídea azul
|
||||
Blue_Shulker_Box=Caja Shulker Azul
|
||||
Blue_Stained_Glass=Vidrieras azules
|
||||
Blue_Stained_Glass_Pane=Panel de vidrieras azules
|
||||
Blue_Terracotta=Terracota azul
|
||||
Blue_Wool=Lana azul
|
||||
Bone_Block=Bloque de hueso
|
||||
Bookshelf=Estante para libros
|
||||
Brewing_Stand=Stand de elaboración de la cerveza
|
||||
Brick_Block=Bloque de ladrillo
|
||||
Brick_Slab=Losa de ladrillo
|
||||
Brick_Stair=Escalera de ladrillo
|
||||
Brick_Wall=Pared de ladrillo
|
||||
Brown_Bed=Cama Marron
|
||||
Brown_Carpet=Alfombra marrón
|
||||
Brown_Concrete=Hormigon Marron
|
||||
Brown_Concrete_Powder=Polvo de hormigón marrón
|
||||
Brown_Concrete_Slab=Losa de hormigón marrón
|
||||
Brown_Concrete_Stair=Escalera de hormigón marrón
|
||||
Brown_Glazed_Terracotta=Terracota Glaseada Marrón
|
||||
Brown_Mushroom=Champiñón Marrón
|
||||
Brown_Mushroom_Flower_Pot=Maceta de setas marrones
|
||||
Brown_Shulker_Box=Shulker Box Marrón
|
||||
Brown_Stained_Glass=Vidrieras Marrones
|
||||
Brown_Stained_Glass_Pane=Panel de vidrieras marrones
|
||||
Brown_Terracotta=Terracota marrón
|
||||
Brown_Wool=Lana marrón
|
||||
Burning_Furnace=Horno ardiente
|
||||
Cactus_Flower_Pot=Maceta de cactus
|
||||
Cake=pastel
|
||||
Cauldron=Caldera
|
||||
Chest=Pecho
|
||||
Chiseled_Quartz_Block=Bloque de cuarzo cincelado
|
||||
Chiseled_Red_Sandstone=Arenisca Roja Cincelada
|
||||
Chorus_Flower=Flor de coro
|
||||
Chorus_Plant_Stem=Tallo de planta de coro
|
||||
Clay=Arcilla
|
||||
Coal_Block=Bloque de carbón
|
||||
Coal_Ore=Mineral de Carbón
|
||||
Coarse_Dirt=Suciedad gruesa
|
||||
Cobblestone=Guijarro
|
||||
Cobblestone_Slab=Losa de adoquines
|
||||
Cobblestone_Stair=Escalera de adoquines
|
||||
Cobblestone_Wall=Pared de adoquines
|
||||
Cobweb=Telaraña
|
||||
Command_Block=Bloque de comandos
|
||||
Cracked_Stone_Brick_Slab=Losa de ladrillo de piedra agrietada
|
||||
Cracked_Stone_Brick_Stair=Escalera de ladrillo de piedra agrietada
|
||||
Crafting_Table=Mesa de artesanía
|
||||
Creeper_Head=Cabeza de la enredadera
|
||||
Cut_Red_Sandstone=Cortar piedra arenisca roja
|
||||
Cyan_Bed=Cama cian
|
||||
Cyan_Carpet=Alfombra Cian
|
||||
Cyan_Concrete=Concreto Cian
|
||||
Cyan_Concrete_Powder=Polvo de hormigón cian
|
||||
Cyan_Concrete_Slab=Losa de hormigón cian
|
||||
Cyan_Concrete_Stair=Escalera de hormigón cian
|
||||
Cyan_Glazed_Terracotta=Terracota Glaseada Cian
|
||||
Cyan_Shulker_Box=Caja de shulker cian
|
||||
Cyan_Stained_Glass=Vidrieras cian
|
||||
Cyan_Stained_Glass_Pane=Panel de vidrieras cian
|
||||
Cyan_Terracotta=Terracota Cian
|
||||
Cyan_Wool=Lana cian
|
||||
Dandelion=Diente de león
|
||||
Dandelion_Flower_Pot=Maceta de diente de león
|
||||
Dark_Oak=Roble oscuro
|
||||
Dark_Oak_Bark=Corteza de roble oscuro
|
||||
Dark_Oak_Bark_Slab=Losa de corteza de roble oscuro
|
||||
Dark_Oak_Bark_Stair=Escalera de corteza de roble oscuro
|
||||
Dark_Oak_Button=Botón de roble oscuro
|
||||
Dark_Oak_Fence=Valla de roble oscuro
|
||||
Dark_Oak_Fence_Gate=Puerta de valla de roble oscuro
|
||||
Dark_Oak_Leaves=Hojas de roble oscuro
|
||||
Dark_Oak_Plank=Tablón de roble oscuro
|
||||
Dark_Oak_Pressure_Plate=Plato de presión de roble oscuro
|
||||
Dark_Oak_Sapling_Flower_Pot=Maceta de arbolito de roble oscuro
|
||||
Dark_Oak_Sapling=Retoño de roble oscuro
|
||||
Dark_Oak_Slab=Losa de roble oscuro
|
||||
Dark_Oak_Stair=Escalera de roble oscuro
|
||||
Dark_Oak_Trapdoor=Trampilla de roble oscuro
|
||||
Dark_Prismarine_Slab=Losa prismarina oscura
|
||||
Dark_Prismarine_Stair=Escalera Prismarina Oscura
|
||||
Daylight_Sensor=Sensor de luz diurna
|
||||
Dead_Bush=Bush muerto
|
||||
Dead_Bush_Flower_Pot=Maceta de arbustos muertos
|
||||
Dead_Chorus_Flower=Flor de coro muerto
|
||||
Detector_Rail=Carril detector
|
||||
Diamond_Block=Bloque de diamante
|
||||
Diamond_Ore=Mineral de diamante
|
||||
Diorite=Diorita
|
||||
Diorite_Slab=Losa Diorita
|
||||
Diorite_Stair=Escalera Diorite
|
||||
Diorite_Wall=Muro Diorita
|
||||
Dirt=Suciedad
|
||||
Disabled_Hopper=Tolva discapacitada
|
||||
Disabled_Side_Hopper=Tolva lateral deshabilitada
|
||||
Dispenser=Dispensador
|
||||
Double_Acacia_Bark_Slab=Losa de corteza de acacia doble
|
||||
Double_Acacia_Slab=Losa doble de acacia
|
||||
Double_Andesite_Slab=Losa doble de andesita
|
||||
Double_Birch_Bark_Slab=Losa de corteza de abedul doble
|
||||
Double_Birch_Slab=Losa de abedul doble
|
||||
Double_Black_Concrete_Slab=Losa de hormigón doble negro
|
||||
Double_Blue_Concrete_Slab=Losa de hormigón doble azul
|
||||
Double_Brick_Slab=Losa de ladrillo doble
|
||||
Double_Brown_Concrete_Slab=Losa de hormigón doble marrón
|
||||
Double_Cobblestone_Slab=Losa de adoquines dobles
|
||||
Double_Cracked_Stone_Brick_Slab=Losa de ladrillo de piedra doblemente agrietada
|
||||
Double_Cyan_Concrete_Slab=Losa de hormigón doble cian
|
||||
Double_Dark_Oak_Bark_Slab=Losa de corteza de roble oscuro doble
|
||||
Double_Dark_Oak_Slab=Losa de roble oscuro doble
|
||||
Double_Dark_Prismarine_Slab=Losa prismarina doble oscura
|
||||
Double_Diorite_Slab=Losa Diorita Doble
|
||||
Double_End_Stone_Brick_Slab=Losa de ladrillo de piedra de doble extremo
|
||||
Double_Gold_Block_Slab=Losa de doble bloque de oro
|
||||
Double_Granite_Slab=Losa de granito doble
|
||||
Double_Green_Concrete_Slab=Losa de hormigón doble verde
|
||||
Double_Grey_Concrete_Slab=Losa de hormigón doble gris
|
||||
Double_Iron_Block_Slab=Losa de doble bloque de hierro
|
||||
Double_Jungle_Bark_Slab=Losa de corteza de doble jungla
|
||||
Double_Jungle_Slab=Losa doble de la selva
|
||||
Double_Lapis_Lazuli_Slab=Losa de lapislázuli doble
|
||||
Double_Light_Blue_Concrete_Slab=Losa de hormigón azul claro doble
|
||||
Double_Light_Grey_Concrete_Slab=Losa de hormigón gris claro doble
|
||||
Double_Lime_Concrete_Slab=Losa de hormigón de doble cal
|
||||
Double_Magenta_Concrete_Slab=Losa de hormigón magenta doble
|
||||
Double_Mossy_Stone_Brick_Slab=Losa de ladrillo de piedra doble musgo
|
||||
Double_Mossy_Stone_Slab=Losa de piedra doble musgo
|
||||
Double_Nether_Brick_Slab=Losa de ladrillo abisal doble
|
||||
Double_Oak_Bark_Slab=Losa de corteza de roble doble
|
||||
Double_Oak_Slab=Doble losa de roble
|
||||
Double_Orange_Concrete_Slab=Losa de hormigón doble naranja
|
||||
Double_Pink_Concrete_Slab=Losa de hormigón doble rosa
|
||||
Double_Polished_Andesite_Slab=Losa de Andesita doble pulida
|
||||
Double_Polished_Diorite_Slab=Losa Diorita Doble Pulida
|
||||
Double_Polished_Granite_Slab=Losa de granito pulido doble
|
||||
Double_Polished_Stone_Slab=Losa de piedra pulida doble
|
||||
Double_Prismarine_Brick_Slab=Losa de ladrillo doble prismarina
|
||||
Double_Prismarine_Slab=Losa Prismarina Doble
|
||||
Double_Purple_Concrete_Slab=Losa de hormigón doble púrpura
|
||||
Double_Purpur_Slab=Losa doble de Purpur
|
||||
Double_Quartz_Slab=Losa doble de cuarzo
|
||||
Double_Red_Concrete_Slab=Losa de hormigón rojo doble
|
||||
Double_Red_Nether_Brick_Slab=Losa de ladrillo rojo abisal doble
|
||||
Double_Red_Sandstone_Slab=Losa de arenisca roja doble
|
||||
Double_Sandstone_Slab=Losa doble de arenisca
|
||||
Double_Smooth_Quartz_Slab=Losa de cuarzo liso doble
|
||||
Double_Smooth_Red_Sandstone_Slab=Losa de piedra arenisca roja lisa doble
|
||||
Double_Smooth_Sandstone_Slab=Losa de arenisca lisa doble
|
||||
Double_Spruce_Bark_Slab=Losa de corteza de abeto doble
|
||||
Double_Spruce_Slab=Losa de abeto doble
|
||||
Double_Stone_Brick_Slab=Losa de ladrillo de piedra doble
|
||||
Double_Stone_Slab=Losa de piedra doble
|
||||
Double_Tallgrass=Doble hierba alta
|
||||
Double_White_Concrete_Slab=Losa de hormigón doble blanco
|
||||
Double_Yellow_Concrete_Slab=Losa de hormigón doble amarilla
|
||||
Dragon_Egg=Huevo de dragón
|
||||
Dropper=Cuentagotas
|
||||
Emerald_Block=Bloque esmeralda
|
||||
Emerald_Ore=Mineral esmeralda
|
||||
Enchanting_Table=Mesa encantadora
|
||||
Ender_Chest=Ender pecho
|
||||
End_Portal=Portal final
|
||||
End_Portal_Frame=Fin del marco del portal
|
||||
End_Portal_Frame_with_Eye_of_Ender=Fin del marco del portal con Eye of Ender
|
||||
End_Rod=Varilla final
|
||||
End_Stone=Piedra final
|
||||
End_Stone_Brick=End Stone Brick
|
||||
End_Stone_Brick_Slab=End Stone Brick Slab
|
||||
End_Stone_Brick_Stair=Escalera de piedra de ladrillo final
|
||||
End_Stone_Brick_Wall=Pared de ladrillo de piedra final
|
||||
Eternal_Fire=Fuego eterno
|
||||
Faceless_Pumpkin=Calabaza sin rostro
|
||||
Farmland=Tierras de cultivo
|
||||
Fence=Cerca
|
||||
Fern_Flower_Pot=Maceta de helecho
|
||||
Fern=Helecho
|
||||
Fire=Fuego
|
||||
Flower_Pot=Maceta
|
||||
Flowing_Lava=Lava que fluye
|
||||
Flowing_Nether_Lava=Lava abisal que fluye
|
||||
Flowing_River_Water=Agua del río que fluye
|
||||
Flowing_Water=Agua que fluye
|
||||
Frosted_Ice=Hielo helado
|
||||
Furnace=Horno
|
||||
Glass=Vaso
|
||||
Glass_Pane=Panel de vidrio
|
||||
Glowstone=Piedra de resplandor
|
||||
Gold_Block=Bloque de oro
|
||||
Gold_Block_Slab=Losa de bloque de oro
|
||||
Gold_Block_Stair=Escalera de bloques de oro
|
||||
Gold_Ore=Metal de oro
|
||||
Granite=Granito
|
||||
Granite_Slab=Losa de granito
|
||||
Granite_Stair=Escalera de granito
|
||||
Granite_Wall=Pared de granito
|
||||
Grass=Hierba
|
||||
Grass_Block=Bloque de césped
|
||||
Grass_Dry=Hierba seca
|
||||
Grass_Path=Camino de hierba
|
||||
Gravel=Grava
|
||||
Green_Bed=Cama verde
|
||||
Green_Carpet=Alfombra verde
|
||||
Green_Concrete=Hormigón verde
|
||||
Green_Concrete_Powder=Polvo de hormigón verde
|
||||
Green_Concrete_Slab=Losa de hormigón verde
|
||||
Green_Concrete_Stair=Escalera de hormigón verde
|
||||
Green_Glazed_Terracotta=Terracota Glaseada Verde
|
||||
Green_Shulker_Box=Caja Shulker Verde
|
||||
Green_Stained_Glass=Vidrieras Verdes
|
||||
Green_Stained_Glass_Pane=Panel de vidrieras verdes
|
||||
Green_Terracotta=Terracota verde
|
||||
Green_Wool=Lana verde
|
||||
Grey_Bed=Cama gris
|
||||
Grey_Carpet=Alfombra gris
|
||||
Grey_Concrete=Hormigón gris
|
||||
Grey_Concrete_Powder=Polvo de hormigón gris
|
||||
Grey_Concrete_Slab=Losa de hormigón gris
|
||||
Grey_Concrete_Stair=Escalera de hormigón gris
|
||||
Grey_Glazed_Terracotta=Terracota Glaseada Gris
|
||||
Grey_Shulker_Box=Caja gris de shulker
|
||||
Grey_Stained_Glass=Vidrieras grises
|
||||
Grey_Stained_Glass_Pane=Panel de vidrieras grises
|
||||
Grey_Terracotta=Terracota gris
|
||||
Grey_Wool=Lana gris
|
||||
Hay_Bale=Fardo de heno
|
||||
Hopper=Tolva
|
||||
Huge_Brown_Mushroom_All-Faces_Stem=Tallo enorme de hongos marrones de todas las caras
|
||||
Huge_Brown_Mushroom_Block=Enorme bloque de hongos marrones
|
||||
Huge_Brown_Mushroom_Stem=Enorme tallo de seta marrón
|
||||
Huge_Red_Mushroom_All-Faces_Stem=Tallo enorme de setas rojas de todas las caras
|
||||
Huge_Red_Mushroom_Block=Enorme bloque de setas rojas
|
||||
Huge_Red_Mushroom_Stem=Enorme tallo de seta roja
|
||||
Human_Head=Cabeza humana
|
||||
Hydrated_Farmland=Tierras de cultivo hidratadas
|
||||
Ice=Hielo
|
||||
Ice_Slab=Losa de hielo
|
||||
Ice_Stair=Escalera de hielo
|
||||
Infested_Chiseled_Stone_Brick=Ladrillo de piedra cincelada infestada
|
||||
Infested_Cobblestone=Adoquines infestados
|
||||
Infested_Cracked_Stone_Brick=Ladrillo de piedra agrietado infestado
|
||||
Infested_Mossy_Stone_Brick=Ladrillo de piedra cubierto de musgo infestado
|
||||
Infested_Stone=Piedra infestada
|
||||
Infested_Stone_Brick=Ladrillo de piedra infestada
|
||||
Inverted_Daylight_Sensor=Sensor de luz diurna invertida
|
||||
Iron_Bar=Barra de acero
|
||||
Iron_Block=Bloque de hierro
|
||||
Iron_Block_Slab=Losa de bloque de hierro
|
||||
Iron_Block_Stair=Escalera de bloque de hierro
|
||||
Iron_Door=Puerta de Hierro
|
||||
Iron_Ore=Mineral de hierro
|
||||
Iron_Trapdoor=Trampilla de hierro
|
||||
Item_Frame=Cuadro de artículo
|
||||
Jack_o_Lantern=Jack o Lantern
|
||||
Jukebox=Tocadiscos tragamonedas
|
||||
Jungle_Bark=Corteza de la selva
|
||||
Jungle_Bark_Slab=Losa de corteza de selva
|
||||
Jungle_Bark_Stair=Escalera de corteza de selva
|
||||
Jungle_Button=Botón de la selva
|
||||
Jungle_Fence=Cerca de la selva
|
||||
Jungle_Fence_Gate=Jungle Fence Gate
|
||||
Jungle_Leaves=Hojas de la selva
|
||||
Jungle=Selva
|
||||
Jungle_Plank=Tablón de la selva
|
||||
Jungle_Pressure_Plate=Plato de presión de la selva
|
||||
Jungle_Sapling_Flower_Pot=Jarrón de maceta de jungla
|
||||
Jungle_Sapling=Árbol joven de la jungla
|
||||
Jungle_Slab=Losa de la selva
|
||||
Jungle_Stair=Escalera de la jungla
|
||||
Jungle_Trapdoor=Trampilla de la selva
|
||||
Ladder=Escalera
|
||||
Lapis_Lazuli_Block=Bloque de lapislázuli
|
||||
Lapis_Lazuli_Ore=Mineral de lapislázuli
|
||||
Lapis_Lazuli_Slab=Losa de lapislázuli
|
||||
Lapis_Lazuli_Stair=Escalera de lapislázuli
|
||||
Large_Fern=Helecho grande
|
||||
Lava_Source=Fuente de lava
|
||||
Leaves=Hojas
|
||||
Lever=Palanca
|
||||
Light_Blue_Bed=Cama azul claro
|
||||
Light_Blue_Carpet=Alfombra azul claro
|
||||
Light_Blue_Concrete=Hormigón celeste
|
||||
Light_Blue_Concrete_Powder=Polvo de hormigón azul claro
|
||||
Light_Blue_Concrete_Slab=Losa de hormigón azul claro
|
||||
Light_Blue_Concrete_Stair=Escalera de hormigón azul claro
|
||||
Light_Blue_Glazed_Terracotta=Terracota Glaseada Azul Claro
|
||||
Light_Blue_Shulker_Box=Shulker Box azul claro
|
||||
Light_Blue_Stained_Glass=Vidrieras azul claro
|
||||
Light_Blue_Stained_Glass_Pane=Panel de vidrieras azul claro
|
||||
Light_Blue_Terracotta=Terracota azul claro
|
||||
Light_Blue_Wool=Lana azul claro
|
||||
Light_Grey_Bed=Cama gris claro
|
||||
Light_Grey_Carpet=Alfombra gris claro
|
||||
Light_Grey_Concrete=Hormigón gris claro
|
||||
Light_Grey_Concrete_Powder=Polvo de hormigón gris claro
|
||||
Light_Grey_Concrete_Slab=Losa de hormigón gris claro
|
||||
Light_Grey_Concrete_Stair=Escalera de hormigón gris claro
|
||||
Light_Grey_Glazed_Terracotta=Terracota Glaseada Gris Claro
|
||||
Light_Grey_Shulker_Box=Caja Shulker Gris Claro
|
||||
Light_Grey_Stained_Glass=Vidrieras gris claro
|
||||
Light_Grey_Stained_Glass_Pane=Panel de vidrieras gris claro
|
||||
Light_Grey_Terracotta=Terracota gris claro
|
||||
Light_Grey_Wool=Lana gris claro
|
||||
Lilac=Lila
|
||||
Lime_Bed=Cama de cal
|
||||
Lime_Carpet=Alfombra de cal
|
||||
Lime_Concrete=Hormigón de cal
|
||||
Lime_Concrete_Powder=Polvo de hormigón de cal
|
||||
Lime_Concrete_Slab=Losa de hormigón de cal
|
||||
Lime_Concrete_Stair=Escalera de hormigón de cal
|
||||
Lime_Glazed_Terracotta=Terracota Glaseada con Lima
|
||||
Lime_Shulker_Box=Caja Shulker de Lima
|
||||
Lime_Stained_Glass=Vidrieras de cal
|
||||
Lime_Stained_Glass_Pane=Panel de vidrieras de cal
|
||||
Lime_Terracotta=Terracota de lima
|
||||
Lime_Wool=Lana de lima
|
||||
Lit_Redstone_Ore=Mineral de piedra roja encendido
|
||||
Magenta_Bed=Cama magenta
|
||||
Magenta_Carpet=Alfombra magenta
|
||||
Magenta_Concrete=Hormigón magenta
|
||||
Magenta_Concrete_Powder=Polvo de hormigón magenta
|
||||
Magenta_Concrete_Slab=Losa de hormigón magenta
|
||||
Magenta_Concrete_Stair=Escalera de hormigón magenta
|
||||
Magenta_Glazed_Terracotta=Terracota Glaseada Magenta
|
||||
Magenta_Shulker_Box=Caja Shulker Magenta
|
||||
Magenta_Stained_Glass=Vidrieras magentas
|
||||
Magenta_Stained_Glass_Pane=Panel de vidrio manchado magenta
|
||||
Magenta_Terracotta=Terracota magenta
|
||||
Magenta_Wool=Lana magenta
|
||||
Magma_Block=Bloque de magma
|
||||
Mature_Beetroot_Plant=Planta de remolacha madura
|
||||
Mature_Carrot_Plant=Planta de zanahoria madura
|
||||
Mature_Cocoa_Pod=Vaina de cacao madura
|
||||
Mature_Melon_Stem=Tallo de melón maduro
|
||||
Mature_Nether_Wart=Verruga abisal madura
|
||||
Mature_Potato_Plant=Planta de papa madura
|
||||
Mature_Pumpkin_Stem=Tallo maduro de calabaza
|
||||
Mature_Wheat_Plant=Planta de trigo maduro
|
||||
Medium_Cocoa_Pod=Vaina de cacao mediana
|
||||
Melon=Melón
|
||||
Mob_Spawner=Engendrador de la mafia
|
||||
Mossy_Cobblestone=Adoquín cubierto de musgo
|
||||
Mossy_Cobblestone_Wall=Muro de adoquines cubiertos de musgo
|
||||
Mossy_Stone_Brick=Ladrillo de piedra cubierto de musgo
|
||||
Mossy_Stone_Brick_Slab=Losa de ladrillo de piedra cubierta de musgo
|
||||
Mossy_Stone_Brick_Stair=Escalera de ladrillo de piedra cubierta de musgo
|
||||
Mossy_Stone_Brick_Wall=Pared de ladrillo de piedra cubierta de musgo
|
||||
Mossy_Stone_Slab=Losa de piedra cubierta de musgo
|
||||
Mossy_Stone_Stair=Escalera de piedra cubierta de musgo
|
||||
Mycelium=Micelio
|
||||
Nether_Brick_Block=Bloque de ladrillo abisal
|
||||
Nether_Brick_Fence=Valla de ladrillo abisal
|
||||
Nether_Brick_Fence_Gate=Puerta de valla de ladrillo abisal
|
||||
Nether_Brick_Slab=Losa de ladrillo abisal
|
||||
Nether_Brick_Stair=Escalera de ladrillo abisal
|
||||
Nether_Brick_Wall=Pared de ladrillo abisal
|
||||
Nether_Lava_Source=Fuente de lava abisal
|
||||
Nether_Portal=Portal abisal
|
||||
Nether_Quartz_Ore=Mineral de cuarzo abisal
|
||||
Nether_Wart_Block=Bloque de verruga abisal
|
||||
Note_Block=Block de Notas
|
||||
Oak=Roble
|
||||
Oak_Bark=La corteza de roble
|
||||
Oak_Bark_Slab=Losa de corteza de roble
|
||||
Oak_Bark_Stair=Escalera de corteza de roble
|
||||
Oak_Button=Botón de roble
|
||||
Oak_Door=Puerta de roble
|
||||
Oak_Fence_Gate=Puerta de valla de roble
|
||||
Oak_Ladder=Escalera de roble
|
||||
Oak_Plank=Tablón de roble
|
||||
Oak_Pressure_Plate=Plato de presión de roble
|
||||
Oak_Sapling=Árbol de roble
|
||||
Oak_Sapling_Flower_Pot=Maceta de roble joven
|
||||
Oak_Slab=Losa de roble
|
||||
Oak_Stair=Escalera de roble
|
||||
Oak_Wall_Sign=Letrero de pared de roble
|
||||
Observer=Observador
|
||||
Obsidian=Obsidiana
|
||||
Obsidian_Glass_Pane=Cristal de obsidiana
|
||||
Obsidian_Glass_Slab=Losa de cristal de obsidiana
|
||||
Obsidian_Glass_Stair=Escalera de cristal de obsidiana
|
||||
Obsidian_Slab=Losa de obsidiana
|
||||
Obsidian_Stair=Escalera de obsidiana
|
||||
Orange_Bed=Cama Naranja
|
||||
Orange_Carpet=Alfombra naranja
|
||||
Orange_Concrete=Hormigón Naranja
|
||||
Orange_Concrete_Powder=Polvo de hormigón naranja
|
||||
Orange_Concrete_Slab=Losa de hormigón naranja
|
||||
Orange_Concrete_Stair=Escalera de hormigón naranja
|
||||
Orange_Glazed_Terracotta=Terracota Glaseada Naranja
|
||||
Orange_Shulker_Box=Caja Naranja Shulker
|
||||
Orange_Stained_Glass=Vidrieras Naranjas
|
||||
Orange_Stained_Glass_Pane=Cristal Naranja Vidriera
|
||||
Orange_Terracotta=Terracota naranja
|
||||
Orange_Tulip_Flower_Pot=Maceta de tulipán naranja
|
||||
Orange_Tulip=Tulipán naranja
|
||||
Orange_Wool=Lana naranja
|
||||
Oxeye_Daisy_Flower_Pot=Margarita de ojo de buey maceta
|
||||
Oxeye_Daisy=Margarita
|
||||
Packed_Ice=Hielo envasado
|
||||
Peony=Peonía
|
||||
Pillar_Quartz_Block=Bloque de cuarzo
|
||||
Pink_Bed=Cama rosa
|
||||
Pink_Carpet=Alfombra rosa
|
||||
Pink_Concrete=Hormigón Rosa
|
||||
Pink_Concrete_Powder=Polvo de hormigón rosa
|
||||
Pink_Concrete_Slab=Losa de hormigón rosa
|
||||
Pink_Concrete_Stair=Escalera de hormigón rosa
|
||||
Pink_Glazed_Terracotta=Terracota Glaseada Rosa
|
||||
Pink_Shulker_Box=Caja Shulker Rosa
|
||||
Pink_Stained_Glass=Vidrieras rosas
|
||||
Pink_Stained_Glass_Pane=Panel de vidrieras rosas
|
||||
Pink_Terracotta=Terracota rosa
|
||||
Pink_Tulip_Flower_Pot=Maceta de tulipán rosa
|
||||
Pink_Tulip=Tulipán rosa
|
||||
Pink_Wool=Lana rosa
|
||||
Piston=Pistón
|
||||
Polished_Andesite=Andesita pulida
|
||||
Polished_Andesite_Slab=Losa pulida de andesita
|
||||
Polished_Andesite_Stair=Escalera de andesita pulida
|
||||
Polished_Diorite=Diorita pulida
|
||||
Polished_Diorite_Slab=Losa de diorita pulida
|
||||
Polished_Diorite_Stair=Escalera Diorita Pulida
|
||||
Polished_Granite=Granito pulido
|
||||
Polished_Granite_Slab=Losa de granito pulido
|
||||
Polished_Granite_Stair=Escalera de granito pulido
|
||||
Polished_Stone=Piedra pulida
|
||||
Poppy=Amapola
|
||||
Poppy_Flower_Pot=Poppy Flower Pot
|
||||
Powered_Rail=Carril de potencia
|
||||
Powered_Redstone_Spot=Punto Redstone accionado
|
||||
Powered_Redstone_Trail=Sendero Redstone con motor
|
||||
Prismarine=Prismarino
|
||||
Prismarine_Brick=Ladrillo prismarino
|
||||
Prismarine_Brick_Slab=Losa de ladrillo prismarino
|
||||
Prismarine_Brick_Stair=Escalera de ladrillo prismarino
|
||||
Prismarine_Dark=Prismarine Dark
|
||||
Prismarine_Slab=Losa Prismarina
|
||||
Prismarine_Stair=Escalera Prismarina
|
||||
Prismarine_Wall=Muro Prismarino
|
||||
Pumpkin=Calabaza
|
||||
Purple_Bed=Cama morada
|
||||
Purple_Carpet=Alfombra púrpura
|
||||
Purple_Concrete=Hormigón Púrpura
|
||||
Purple_Concrete_Powder=Polvo de hormigón morado
|
||||
Purple_Concrete_Slab=Losa de hormigón púrpura
|
||||
Purple_Concrete_Stair=Escalera de hormigón morado
|
||||
Purple_Glazed_Terracotta=Terracota Glaseada Púrpura
|
||||
Purple_Shulker_Box=Caja Shulker Púrpura
|
||||
Purple_Stained_Glass=Vidrieras moradas
|
||||
Purple_Stained_Glass_Pane=Panel de vidrieras moradas
|
||||
Purple_Terracotta=Terracota púrpura
|
||||
Purple_Wool=Lana Morada
|
||||
Purpur_Block=Bloque Purpur
|
||||
Purpur_Pillar=Pilar Purpur
|
||||
Purpur_Slab=Losa de Purpur
|
||||
Purpur_Stair=Escalera Purpur
|
||||
Quartz_Block=Bloque de cuarzo
|
||||
Quartz_Slab=Losa de cuarzo
|
||||
Quartz_Stair=Escalera de cuarzo
|
||||
Rail=Carril
|
||||
Realm_Barrier=Barrera del reino
|
||||
Red_Bed=Cama roja
|
||||
Red_Carpet=Alfombra roja
|
||||
Red_Concrete=Hormigón rojo
|
||||
Red_Concrete_Powder=Polvo de hormigón rojo
|
||||
Red_Concrete_Slab=Losa de hormigón rojo
|
||||
Red_Concrete_Stair=Escalera de hormigón rojo
|
||||
Red_Glazed_Terracotta=Terracota Glaseada Roja
|
||||
Red_Mushroom=Seta roja
|
||||
Red_Mushroom_Flower_Pot=Maceta de setas rojas
|
||||
Red_Nether_Brick_Block=Bloque de ladrillo rojo abisal
|
||||
Red_Nether_Brick_Fence_Gate=Puerta de valla de ladrillo abisal rojo
|
||||
Red_Nether_Brick_Fence=Red Nether Brick Fence
|
||||
Red_Nether_Brick_Slab=Losa de ladrillo rojo abisal
|
||||
Red_Nether_Brick_Stair=Escalera de ladrillo rojo abisal
|
||||
Red_Nether_Brick_Wall=Pared de ladrillo abisal rojo
|
||||
Red_Sand=Arena roja
|
||||
Red_Sandstone=Arenisca roja
|
||||
Red_Sandstone_Slab=Losa de arenisca roja
|
||||
Red_Sandstone_Stair=Escalera de arenisca roja
|
||||
Red_Sandstone_Wall=Muro de arenisca roja
|
||||
Red_Shulker_Box=Caja Shulker Roja
|
||||
Red_Stained_Glass=Vidrieras rojas
|
||||
Red_Stained_Glass_Pane=Panel de vidrieras rojas
|
||||
Redstone_Block=Bloque Redstone
|
||||
Redstone_Comparator_(Off)=Comparador Redstone (Apagado)
|
||||
Redstone_Comparator_(On)=Comparador Redstone (activado)
|
||||
Redstone_Lamp=Lámpara Redstone
|
||||
Redstone_Ore=Mineral de piedra roja
|
||||
Redstone_Repeater=Repetidor de Redstone
|
||||
Redstone_Repeater_(Powered)=Repetidor Redstone (Desarrollado)
|
||||
Redstone_Torch=Antorcha Redstone
|
||||
Redstone_Torch_(off)=Antorcha Redstone (apagada)
|
||||
Redstone_Trail=Sendero Redstone
|
||||
Red_Terracotta=Terracota roja
|
||||
Red_Tulip_Flower_Pot=Maceta de tulipán rojo
|
||||
Red_Tulip=Tulipán rojo
|
||||
Red_Wool=Lana roja
|
||||
Riverwaterlogged_Sponge=Esponja anegada
|
||||
River_Water_Source=Fuente de agua de río
|
||||
Rose_Bush=Rosal
|
||||
Sand=Arena
|
||||
Sandstone=Arenisca
|
||||
Sandstone_Carved=Piedra arenisca tallada
|
||||
Sandstone_Slab=Losa de piedra arenisca
|
||||
Sandstone_Smooth=Piedra arenisca lisa
|
||||
Sandstone_Stair=Escalera de arenisca
|
||||
Sandstone_Wall=Muro de piedra arenisca
|
||||
Sea_Lantern=Linterna de mar
|
||||
Side_Hopper=Tolva lateral
|
||||
Skeleton_Skull=Cráneo esqueleto
|
||||
Slime_Block=Bloque de limo
|
||||
Smooth_Quartz=Cuarzo liso
|
||||
Smooth_Quartz_Slab=Losa de cuarzo lisa
|
||||
Smooth_Quartz_Stair=Escalera lisa de cuarzo
|
||||
Smooth_Red_Sandstone=Piedra arenisca roja lisa
|
||||
Smooth_Red_Sandstone_Slab=Losa de piedra arenisca roja lisa
|
||||
Smooth_Red_Sandstone_Stair=Escalera de piedra arenisca roja lisa
|
||||
Smooth_Sandstone=Piedra arenisca lisa
|
||||
Smooth_Sandstone_Slab=Losa de arenisca lisa
|
||||
Smooth_Sandstone_Stair=Escalera de arenisca lisa
|
||||
Snow_Block=Bloque de nieve
|
||||
Snow_Layer=Capa de nieve
|
||||
Soul_Sand=Arena de almas
|
||||
Sponge=Esponja
|
||||
Spruce_Bark=Corteza de abeto
|
||||
Spruce_Bark_Slab=Losa de corteza de abeto
|
||||
Spruce_Bark_Stair=Escalera de corteza de abeto
|
||||
Spruce_Button=Botón de abeto
|
||||
Spruce_Fence=Cerca de abeto
|
||||
Spruce_Fence_Gate=Puerta de valla de abeto
|
||||
Spruce_Leaves=Hojas de abeto
|
||||
Spruce_Log=Tronco de abeto
|
||||
Spruce=Picea
|
||||
Spruce_Pressure_Plate=Placa de presión de abeto
|
||||
Spruce_Sapling_Flower_Pot=Maceta de pimpollo de abeto
|
||||
Spruce_Sapling=Árbol de abeto
|
||||
Spruce_Slab=Losa de abeto
|
||||
Spruce_Stair=Escalera de abeto
|
||||
Spruce_Stair=Escalera de abeto
|
||||
Spruce_Trapdoor=Trampilla de abeto
|
||||
Sticky_Piston=Piston pegajoso
|
||||
Stone=Piedra
|
||||
Stone_Brick=Ladrillo de piedra
|
||||
Stone_Brick_Carved=Piedra Ladrillo Tallado
|
||||
Stone_Brick_Cracked=Piedra Ladrillo Agrietado
|
||||
Stone_Brick_Slab=Losa de ladrillo de piedra
|
||||
Stone_Brick_Stair=Escalera de ladrillo de piedra
|
||||
Stone_Brick_Stair=Escalera de ladrillo de piedra
|
||||
Stone_Brick_Wall=Muro de piedra
|
||||
Stone_Button=Botón de piedra
|
||||
Stone_Pressure_Plate=Placa de presión de piedra
|
||||
Stone_Slab=Losa de piedra
|
||||
Stone_Stair=Escalera de piedra
|
||||
Sugar_Canes=Caña de azucar
|
||||
Sunflower=Girasol
|
||||
Tall_Grass=Cesped alto
|
||||
Terracotta=Terracota
|
||||
Torch=Antorcha
|
||||
Trapdoor=Trampa
|
||||
Trapped_Chest=Pecho atrapado
|
||||
Vines=Vides
|
||||
Void=Vacío
|
||||
Waterlily=Lirio de agua
|
||||
Waterlogged_Sponge=Esponja Empapada
|
||||
Water_Source=Fuente de agua
|
||||
White_Bed=Cama blanca
|
||||
White_Carpet=Alfombra blanca
|
||||
White_Concrete=Hormigón blanco
|
||||
White_Concrete_Powder=Polvo de hormigón blanco
|
||||
White_Concrete_Slab=Losa de hormigón blanco
|
||||
White_Concrete_Stair=Escalera de hormigón blanco
|
||||
White_Glass_Pane=Cristal blanco
|
||||
White_Glazed_Terracotta=Terracota Glaseada Blanca
|
||||
White_Shulker_Box=Caja Shulker Blanca
|
||||
White_Stained_Glass=Vidrieras blancas
|
||||
White_Stained_Glass_Pane=Panel de vidrieras blancas
|
||||
White_Terracotta=Terracota blanca
|
||||
White_Tulip_Flower_Pot=Maceta de tulipán blanco
|
||||
White_Tulip=Tulipán blanco
|
||||
Wither_Skeleton_Skull=Cráneo esqueleto marchito
|
||||
Wool=Lana
|
||||
Yellow_Bed=Cama amarilla
|
||||
Yellow_Carpet=Alfombra amarilla
|
||||
Yellow_Concrete=Hormigón amarillo
|
||||
Yellow_Concrete_Powder=Polvo de hormigón amarillo
|
||||
Yellow_Concrete_Slab=Losa de hormigón amarillo
|
||||
Yellow_Concrete_Stair=Escalera de hormigón amarillo
|
||||
Yellow_Glazed_Terracotta=Terracota Glaseada Amarilla
|
||||
Yellow_Shulker_Box=Caja amarilla de Shulker
|
||||
Yellow_Stained_Glass=Vidrieras amarillas
|
||||
Yellow_Stained_Glass_Pane=Panel de vidrieras amarillas
|
||||
Yellow_Terracotta=Terracota amarilla
|
||||
Yellow_Wool=Lana amarilla
|
||||
Zombie_Head=Cabeza de zombie
|
|
@ -0,0 +1,653 @@
|
|||
Acacia_Bark=Écorce d'acacia
|
||||
Acacia_Bark_Slab=Dalle d'écorce d'acacia
|
||||
Acacia_Bark_Stair=Escalier en écorce d'acacia
|
||||
Acacia_Button=Bouton Acacia
|
||||
Acacia_Fence=Clôture d'acacia
|
||||
Acacia_Fence_Gate=Porte de clôture en acacia
|
||||
Acacia_Leaves=Feuilles d'acacia
|
||||
Acacia_Plank=Planche d'acacia
|
||||
Acacia_Pressure_Plate=Plaque de pression en acacia
|
||||
Acacia_Sapling_Flower_Pot=Pot de fleur d'acacia
|
||||
Acacia_Sapling=Acacia Sapling
|
||||
Acacia_Slab=Dalle d'acacia
|
||||
Acacia_Stair=Escalier Acacia
|
||||
Acacia_Trapdoor=Trappe d'Acacia
|
||||
Activator_Rail=Rail activateur
|
||||
Allium_Flower_Pot=Pot de fleurs en allium
|
||||
Andesite=Andésite
|
||||
Andesite_Slab=Dalle andésite
|
||||
Andesite_Stair=Escalier Andésite
|
||||
Andesite_Wall=Mur Andésite
|
||||
Anvil=Enclume
|
||||
Azure_Bluet_Flower_Pot=Pot de fleur bleu azur
|
||||
Azure_Bluet=Azure Bluet
|
||||
Barrier=Barrière
|
||||
Bed_Red=Lit rouge
|
||||
Bedrock=Substrat rocheux
|
||||
Bell=Cloche
|
||||
Birch_Bark=Écorce de bouleau
|
||||
Birch_Bark_Slab=Dalle d'écorce de bouleau
|
||||
Birch_Bark_Stair=Escalier en écorce de bouleau
|
||||
Birch_Button=Bouton de bouleau
|
||||
Birch_Door=Porte en bouleau
|
||||
Birch_Fence=Clôture de bouleau
|
||||
Birch_Fence_Gate=Porte de clôture en bouleau
|
||||
Birch_Leaves=Feuilles de bouleau
|
||||
Birch=Bouleau
|
||||
Birch_Plank=Planche de bouleau
|
||||
Birch_Pressure_Plate=Plateau de pression en bouleau
|
||||
Birch_Sapling_Flower_Pot=Pot de fleur de bouleau
|
||||
Birch_Sapling=Bouleau De Bouleau
|
||||
Birch_Slab=Dalle de bouleau
|
||||
Birch_Stair=Escalier en bouleau
|
||||
Birch_Trapdoor=Trappe en bouleau
|
||||
Black_Bed=Lit noir
|
||||
Black_Carpet=Tapis noir
|
||||
Black_Concrete=Béton Noir
|
||||
Black_Concrete_Powder=Poudre de béton noire
|
||||
Black_Concrete_Slab=Dalle de béton noire
|
||||
Black_Concrete_Stair=Escalier en béton noir
|
||||
Black_Glazed_Terracotta=Terre Cuite Vernissée Noire
|
||||
Black_Shulker_Box=Black Shulker Box
|
||||
Black_Stained_Glass=Vitrail noir
|
||||
Black_Stained_Glass_Pane=Vitrail noir
|
||||
Black_Terracotta=Terre cuite noire
|
||||
Black_Wool=Laine noire
|
||||
Blue_Bed=Lit bleu
|
||||
Blue_Carpet=Tapis bleu
|
||||
Blue_Concrete=Béton bleu
|
||||
Blue_Concrete_Powder=Poudre de béton bleu
|
||||
Blue_Concrete_Slab=Dalle de béton bleu
|
||||
Blue_Concrete_Stair=Escalier en béton bleu
|
||||
Blue_Glazed_Terracotta=Terre Cuite Glacée Bleue
|
||||
Blue_Orchid_Flower_Pot=Pot de fleur d'orchidée bleue
|
||||
Blue_Orchid=Orchidée bleue
|
||||
Blue_Shulker_Box=Blue Shulker Box
|
||||
Blue_Stained_Glass=Vitrail bleu
|
||||
Blue_Stained_Glass_Pane=Vitrail bleu
|
||||
Blue_Terracotta=Terre Cuite Bleue
|
||||
Blue_Wool=Laine bleue
|
||||
Bone_Block=Bloc d'os
|
||||
Bookshelf=Étagère à livres
|
||||
Brewing_Stand=Kiosque de brassage
|
||||
Brick_Block=Bloc de brique
|
||||
Brick_Slab=Dalle de brique
|
||||
Brick_Stair=Escalier De Brique
|
||||
Brick_Wall=Mur de briques
|
||||
Brown_Bed=Lit brun
|
||||
Brown_Carpet=Tapis brun
|
||||
Brown_Concrete=Béton Brun
|
||||
Brown_Concrete_Powder=Poudre concrète brune
|
||||
Brown_Concrete_Slab=Dalle de béton brun
|
||||
Brown_Concrete_Stair=Escalier en béton brun
|
||||
Brown_Glazed_Terracotta=Terre cuite glacée brune
|
||||
Brown_Mushroom=Champignon brun
|
||||
Brown_Mushroom_Flower_Pot=Pot De Fleur Champignon Brun
|
||||
Brown_Shulker_Box=Boîte de transport marron
|
||||
Brown_Stained_Glass=Vitrail brun
|
||||
Brown_Stained_Glass_Pane=Vitrail brun
|
||||
Brown_Terracotta=Terre cuite brune
|
||||
Brown_Wool=Laine brune
|
||||
Burning_Furnace=Four brûlant
|
||||
Cactus_Flower_Pot=Pot de fleur de cactus
|
||||
Cake=gâteau
|
||||
Cauldron=Chaudron
|
||||
Chest=Poitrine
|
||||
Chiseled_Quartz_Block=Quartz Ciselé
|
||||
Chiseled_Red_Sandstone=Grès rouge ciselé
|
||||
Chorus_Flower=Fleur de chœur
|
||||
Chorus_Plant_Stem=Tige Végétale
|
||||
Clay=Argile
|
||||
Coal_Block=Bloc de charbon
|
||||
Coal_Ore=Minerai de charbon
|
||||
Coarse_Dirt=Grossière saleté
|
||||
Cobblestone=Pavé
|
||||
Cobblestone_Slab=Dalle Cobblestone
|
||||
Cobblestone_Stair=Escalier pavé
|
||||
Cobblestone_Wall=Mur pavé
|
||||
Cobweb=Araignée
|
||||
Command_Block=Bloc de commande
|
||||
Cracked_Stone_Brick_Slab=Dalle de brique de pierre fissurée
|
||||
Cracked_Stone_Brick_Stair=Escalier de brique de pierre fissurée
|
||||
Crafting_Table=Table d'artisanat
|
||||
Creeper_Head=Tête de vigne vierge
|
||||
Cut_Red_Sandstone=Couper le grès rouge
|
||||
Cyan_Bed=Lit cyan
|
||||
Cyan_Carpet=Tapis cyan
|
||||
Cyan_Concrete=Cyan Concrete
|
||||
Cyan_Concrete_Powder=Cyan Poudre De Béton
|
||||
Cyan_Concrete_Slab=Dalle béton cyan
|
||||
Cyan_Concrete_Stair=Escalier béton cyan
|
||||
Cyan_Glazed_Terracotta=Terre cuite glacée cyan
|
||||
Cyan_Shulker_Box=Boîte de shan de cyan
|
||||
Cyan_Stained_Glass=Vitrail cyan
|
||||
Cyan_Stained_Glass_Pane=Vitrail Cyan
|
||||
Cyan_Terracotta=Terre cuite cyan
|
||||
Cyan_Wool=Laine cyan
|
||||
Dandelion=Pissenlit
|
||||
Dandelion_Flower_Pot=Pot de fleur de pissenlit
|
||||
Dark_Oak=Chêne Foncé
|
||||
Dark_Oak_Bark=Écorce de chêne foncé
|
||||
Dark_Oak_Bark_Slab=Dalle en écorce de chêne foncé
|
||||
Dark_Oak_Bark_Stair=Escalier en écorce de chêne foncé
|
||||
Dark_Oak_Button=Bouton Chêne Foncé
|
||||
Dark_Oak_Fence=Clôture de chêne foncé
|
||||
Dark_Oak_Fence_Gate=Porte de clôture en chêne foncé
|
||||
Dark_Oak_Leaves=Feuilles De Chêne Foncé
|
||||
Dark_Oak_Plank=Planche de chêne foncé
|
||||
Dark_Oak_Pressure_Plate=Plateau de pression en chêne foncé
|
||||
Dark_Oak_Sapling_Flower_Pot=Pot de Fleurs de Sapling en Chêne Foncé
|
||||
Dark_Oak_Sapling=Arbre de chêne foncé
|
||||
Dark_Oak_Slab=Dalle De Chêne Foncé
|
||||
Dark_Oak_Stair=Escalier Chêne Foncé
|
||||
Dark_Oak_Trapdoor=Trapdoor en chêne foncé
|
||||
Dark_Prismarine_Slab=Dalle de prismarine noire
|
||||
Dark_Prismarine_Stair=Escalier Prismarine Sombre
|
||||
Daylight_Sensor=Capteur de luminosité
|
||||
Dead_Bush=Buisson mort
|
||||
Dead_Bush_Flower_Pot=Pot de fleur de buisson mort
|
||||
Dead_Chorus_Flower=Fleur mort choeur
|
||||
Detector_Rail=Détecteur Rail
|
||||
Diamond_Block=Diamond Block
|
||||
Diamond_Ore=Minerai de diamant
|
||||
Diorite_Slab=Dalle de diorite
|
||||
Diorite_Stair=Escalier Diorite
|
||||
Diorite_Wall=Mur de diorite
|
||||
Dirt=Saleté
|
||||
Disabled_Hopper=Trémie handicapée
|
||||
Disabled_Side_Hopper=Trémie latérale désactivée
|
||||
Dispenser=Distributeur
|
||||
Double_Acacia_Bark_Slab=Double dalle d'écorce d'acacia
|
||||
Double_Acacia_Slab=Double dalle d'acacia
|
||||
Double_Andesite_Slab=Double Andesite Slab
|
||||
Double_Birch_Bark_Slab=Double dalle en écorce de bouleau
|
||||
Double_Birch_Slab=Double dalle de bouleau
|
||||
Double_Black_Concrete_Slab=Double dalle de béton noir
|
||||
Double_Blue_Concrete_Slab=Double dalle de béton bleu
|
||||
Double_Brick_Slab=Double dalle de brique
|
||||
Double_Brown_Concrete_Slab=Dalle de béton brun double
|
||||
Double_Cobblestone_Slab=Dalle Double Cobblestone
|
||||
Double_Cracked_Stone_Brick_Slab=Dalle de brique en pierre à double fissure
|
||||
Double_Cyan_Concrete_Slab=Dalle de béton double cyan
|
||||
Double_Dark_Oak_Bark_Slab=Dalle D'ecorce Double Chene Fonce
|
||||
Double_Dark_Oak_Slab=Double Dalle De Chêne Foncé
|
||||
Double_Dark_Prismarine_Slab=Dalle Prismarine Double Dark
|
||||
Double_Diorite_Slab=Dalle Double Diorite
|
||||
Double_End_Stone_Brick_Slab=Dalle de brique en pierre à double extrémité
|
||||
Double_Gold_Block_Slab=Dalle Double Gold Block
|
||||
Double_Granite_Slab=Double dalle de granit
|
||||
Double_Green_Concrete_Slab=Dalle de béton double verte
|
||||
Double_Grey_Concrete_Slab=Dalle de béton gris double
|
||||
Double_Iron_Block_Slab=Dalle en bloc de fer double
|
||||
Double_Jungle_Bark_Slab=Double Jungle Bark Slab
|
||||
Double_Jungle_Slab=Double Jungle Slab
|
||||
Double_Lapis_Lazuli_Slab=Dalle Double Lapis Lazuli
|
||||
Double_Light_Blue_Concrete_Slab=Dalle de béton double bleu clair
|
||||
Double_Light_Grey_Concrete_Slab=Dalle de béton double gris clair
|
||||
Double_Lime_Concrete_Slab=Dalle de béton double chaux
|
||||
Double_Magenta_Concrete_Slab=Dalle de béton double magenta
|
||||
Double_Mossy_Stone_Brick_Slab=Double dalle de brique en pierre moussue
|
||||
Double_Mossy_Stone_Slab=Double dalle de pierre moussue
|
||||
Double_Nether_Brick_Slab=Double dalle de brique du Néant
|
||||
Double_Oak_Bark_Slab=Double Dalle D'ecorce De Chene
|
||||
Double_Oak_Slab=Double Dalle De Chêne
|
||||
Double_Orange_Concrete_Slab=Dalle de béton double orange
|
||||
Double_Pink_Concrete_Slab=Dalle de béton rose double
|
||||
Double_Polished_Andesite_Slab=Dalle Andesite Double Polie
|
||||
Double_Polished_Diorite_Slab=Dalle de diorite à double poli
|
||||
Double_Polished_Granite_Slab=Dalle de granit double poli
|
||||
Double_Polished_Stone_Slab=Dalle en pierre polie double
|
||||
Double_Prismarine_Brick_Slab=Dalle de brique double prismarine
|
||||
Double_Prismarine_Slab=Double Prismarine Slab
|
||||
Double_Purple_Concrete_Slab=Dalle de béton double pourpre
|
||||
Double_Purpur_Slab=Double Purpur Slab
|
||||
Double_Quartz_Slab=Double dalle de quartz
|
||||
Double_Red_Concrete_Slab=Dalle de béton double rouge
|
||||
Double_Red_Nether_Brick_Slab=Double dalle de brique du Néant rouge
|
||||
Double_Red_Sandstone_Slab=Double Dalle De Grès Rouge
|
||||
Double_Sandstone_Slab=Double Dalle De Grès
|
||||
Double_Smooth_Quartz_Slab=Dalle de quartz double lisse
|
||||
Double_Smooth_Red_Sandstone_Slab=Dalle de grès rouge double lisse
|
||||
Double_Smooth_Sandstone_Slab=Dalle de grès double lisse
|
||||
Double_Spruce_Bark_Slab=Double dalle en écorce d'épicéa
|
||||
Double_Spruce_Slab=Double dalle en épicéa
|
||||
Double_Stone_Brick_Slab=Dalle brique pierre double
|
||||
Double_Stone_Slab=Double dalle de pierre
|
||||
Double_Tallgrass=Herbe double
|
||||
Double_White_Concrete_Slab=Double dalle de béton blanc
|
||||
Double_Yellow_Concrete_Slab=Dalle de béton jaune double
|
||||
Dragon_Egg=Oeuf de dragon
|
||||
Dropper=Compte-gouttes
|
||||
Emerald_Block=Bloc d'émeraude
|
||||
Emerald_Ore=Minerai d'émeraude
|
||||
Enchanting_Table=Table enchanteresse
|
||||
Ender_Chest=Coffre Ender
|
||||
End_Portal=Portail de fin
|
||||
End_Portal_Frame=End Portal Frame
|
||||
End_Portal_Frame_with_Eye_of_Ender=End Portal Frame avec Eye of Ender
|
||||
End_Rod=Tige d'extrémité
|
||||
End_Stone=Pierre de fin
|
||||
End_Stone_Brick=Fin pierre brique
|
||||
End_Stone_Brick_Slab=Fin dalle de brique en pierre
|
||||
End_Stone_Brick_Stair=Fin de l'escalier en brique
|
||||
End_Stone_Brick_Wall=Fin mur de briques
|
||||
Eternal_Fire=Feu éternel
|
||||
Faceless_Pumpkin=Citrouille sans visage
|
||||
Farmland=Les terres agricoles
|
||||
Fence=Clôture
|
||||
Fern_Flower_Pot=Pot de fleur de fougère
|
||||
Fern=Fougère
|
||||
Fire=Feu
|
||||
Flower_Pot=Pot de fleur
|
||||
Flowing_Lava=Lave qui coule
|
||||
Flowing_Nether_Lava=Lave du Néant qui coule
|
||||
Flowing_River_Water=Eau de la rivière
|
||||
Flowing_Water=Eau qui coule
|
||||
Frosted_Ice=Glace givrée
|
||||
Furnace=fourneau
|
||||
Glass=Verre
|
||||
Glass_Pane=Vitre
|
||||
Glowstone=Pierre lueur
|
||||
Gold_Block=Bloc d'or
|
||||
Gold_Block_Slab=Dalle de bloc d'or
|
||||
Gold_Block_Stair=Escalier en bloc d'or
|
||||
Gold_Ore=Le minerai d'or
|
||||
Granite=Granit
|
||||
Granite_Slab=Dalle de granit
|
||||
Granite_Stair=Escalier de granit
|
||||
Granite_Wall=Mur de granit
|
||||
Grass=Herbe
|
||||
Grass_Block=Bloc d'herbe
|
||||
Grass_Dry=Herbe sèche
|
||||
Grass_Path=Chemin d'herbe
|
||||
Gravel=Gravier
|
||||
Green_Bed=Lit vert
|
||||
Green_Carpet=Tapis vert
|
||||
Green_Concrete=Béton Vert
|
||||
Green_Concrete_Powder=Poudre de béton verte
|
||||
Green_Concrete_Slab=Dalle de béton verte
|
||||
Green_Concrete_Stair=Escalier de béton vert
|
||||
Green_Glazed_Terracotta=Terre Cuite Glacée Verte
|
||||
Green_Shulker_Box=Green Shulker Box
|
||||
Green_Stained_Glass=Vitrail vert
|
||||
Green_Stained_Glass_Pane=Vitrail Vert
|
||||
Green_Terracotta=Terre Cuite Verte
|
||||
Green_Wool=Laine verte
|
||||
Grey_Bed=Lit gris
|
||||
Grey_Carpet=Tapis gris
|
||||
Grey_Concrete=Béton Gris
|
||||
Grey_Concrete_Powder=Poudre de béton grise
|
||||
Grey_Concrete_Slab=Dalle de béton grise
|
||||
Grey_Concrete_Stair=Escalier de béton gris
|
||||
Grey_Glazed_Terracotta=Terre Cuite Glacée Grise
|
||||
Grey_Shulker_Box=Boîte de shulker gris
|
||||
Grey_Stained_Glass=Vitrail gris
|
||||
Grey_Stained_Glass_Pane=Vitrail gris
|
||||
Grey_Terracotta=Terre cuite grise
|
||||
Grey_Wool=Laine grise
|
||||
Hay_Bale=Balle de foin
|
||||
Huge_Brown_Mushroom_All-Faces_Stem=Grosse Tige All-Faces Champignon Brun
|
||||
Huge_Brown_Mushroom_Block=Énorme bloc de champignons brun
|
||||
Huge_Brown_Mushroom_Stem=Énorme tige de champignon brun
|
||||
Huge_Red_Mushroom_All-Faces_Stem=Tige énorme aux champignons et aux champignons rouges
|
||||
Huge_Red_Mushroom_Block=Immense bloc de champignons rouges
|
||||
Huge_Red_Mushroom_Stem=Énorme tige de champignon rouge
|
||||
Human_Head=Tête humaine
|
||||
Hydrated_Farmland=Terres agricoles hydratées
|
||||
Ice=La glace
|
||||
Ice_Slab=Dalle de glace
|
||||
Ice_Stair=Escalier de glace
|
||||
Infested_Chiseled_Stone_Brick=Brique de pierre ciselée infestée
|
||||
Infested_Cobblestone=Pavé Infesté
|
||||
Infested_Cracked_Stone_Brick=Brique de pierre fissurée infestée
|
||||
Infested_Mossy_Stone_Brick=Brique de pierre moussue infestée
|
||||
Infested_Stone=Pierre infestée
|
||||
Infested_Stone_Brick=Brique de pierre infestée
|
||||
Inverted_Daylight_Sensor=Capteur de lumière du jour inversé
|
||||
Iron_Bar=Barre de fer
|
||||
Iron_Block=Bloc de fer
|
||||
Iron_Block_Slab=Dalle de bloc de fer
|
||||
Iron_Block_Stair=Escalier de bloc de fer
|
||||
Iron_Door=Porte en fer
|
||||
Iron_Ore=Minerai de fer
|
||||
Iron_Trapdoor=Trapdoor de fer
|
||||
Item_Frame=Cadre d'article
|
||||
Jack_o_Lantern=Citrouille d'Halloween
|
||||
Jukebox=Juke-box
|
||||
Jungle_Bark=Écorce de la jungle
|
||||
Jungle_Bark_Slab=Dalle écorce jungle
|
||||
Jungle_Bark_Stair=Escalier en écorce de jungle
|
||||
Jungle_Button=Bouton de la jungle
|
||||
Jungle_Fence=Clôture de la jungle
|
||||
Jungle_Fence_Gate=Porte de clôture de la jungle
|
||||
Jungle_Leaves=Feuilles De La Jungle
|
||||
Jungle_Plank=Planche de jungle
|
||||
Jungle_Pressure_Plate=Jungle Pressure Plate
|
||||
Jungle_Sapling_Flower_Pot=Pot de fleur de jungle
|
||||
Jungle_Sapling=Arbre de la jungle
|
||||
Jungle_Slab=Dalle de la jungle
|
||||
Jungle_Stair=Escalier de la jungle
|
||||
Jungle_Trapdoor=Trappe de la jungle
|
||||
Ladder=Échelle
|
||||
Lapis_Lazuli_Block=Bloc Lapis Lazuli
|
||||
Lapis_Lazuli_Ore=Minerai de lapis lazuli
|
||||
Lapis_Lazuli_Slab=Dalle de Lapis Lazuli
|
||||
Lapis_Lazuli_Stair=Escalier de Lapis Lazuli
|
||||
Large_Fern=Grande fougère
|
||||
Lava_Source=Source de lave
|
||||
Leaves=Feuilles
|
||||
Lever=Levier
|
||||
Light_Blue_Bed=Lit bleu clair
|
||||
Light_Blue_Carpet=Tapis bleu clair
|
||||
Light_Blue_Concrete=Béton bleu clair
|
||||
Light_Blue_Concrete_Powder=Poudre de béton bleu clair
|
||||
Light_Blue_Concrete_Slab=Dalle de béton bleu clair
|
||||
Light_Blue_Concrete_Stair=Escalier en béton bleu clair
|
||||
Light_Blue_Glazed_Terracotta=Terre Cuite Vernissée Bleu Clair
|
||||
Light_Blue_Shulker_Box=Boîte Shulker Bleu Clair
|
||||
Light_Blue_Stained_Glass=Vitrail bleu clair
|
||||
Light_Blue_Stained_Glass_Pane=Vitrail bleu clair
|
||||
Light_Blue_Terracotta=Terre Cuite Bleu Clair
|
||||
Light_Blue_Wool=Laine bleu clair
|
||||
Light_Grey_Bed=Lit gris clair
|
||||
Light_Grey_Carpet=Tapis gris clair
|
||||
Light_Grey_Concrete=Béton Gris Clair
|
||||
Light_Grey_Concrete_Powder=Poudre de béton gris clair
|
||||
Light_Grey_Concrete_Slab=Dalle de béton gris clair
|
||||
Light_Grey_Concrete_Stair=Escalier béton gris clair
|
||||
Light_Grey_Glazed_Terracotta=Terre Cuite Glacée Gris Clair
|
||||
Light_Grey_Shulker_Box=Boite Shulker Gris Clair
|
||||
Light_Grey_Stained_Glass=Vitrail gris clair
|
||||
Light_Grey_Stained_Glass_Pane=Vitrail gris clair
|
||||
Light_Grey_Terracotta=Terre Cuite Gris Clair
|
||||
Light_Grey_Wool=Laine gris clair
|
||||
Lilac=Lilas
|
||||
Lime_Bed=Lit de chaux
|
||||
Lime_Carpet=Tapis de chaux
|
||||
Lime_Concrete=Béton de chaux
|
||||
Lime_Concrete_Powder=Poudre de béton de chaux
|
||||
Lime_Concrete_Slab=Dalle de béton de chaux
|
||||
Lime_Concrete_Stair=Escalier en béton de chaux
|
||||
Lime_Glazed_Terracotta=Terre cuite glacée à la chaux
|
||||
Lime_Shulker_Box=Boite de citron vert
|
||||
Lime_Stained_Glass=Vitrail à la chaux
|
||||
Lime_Stained_Glass_Pane=Vitrail à la chaux
|
||||
Lime_Terracotta=Terre Cuite Au Citron Vert
|
||||
Lime_Wool=Laine Lime
|
||||
Lit_Redstone_Ore=Lit de minerai de pierre rouge
|
||||
Magenta_Bed=Lit Magenta
|
||||
Magenta_Carpet=Tapis Magenta
|
||||
Magenta_Concrete=Magenta Concrete
|
||||
Magenta_Concrete_Powder=Poudre de béton magenta
|
||||
Magenta_Concrete_Slab=Dalle de béton magenta
|
||||
Magenta_Concrete_Stair=Escalier béton magenta
|
||||
Magenta_Glazed_Terracotta=Terre cuite glacée magenta
|
||||
Magenta_Shulker_Box=Coffret Shulker Magenta
|
||||
Magenta_Stained_Glass=Vitrail Magenta
|
||||
Magenta_Stained_Glass_Pane=Vitrail Magenta
|
||||
Magenta_Terracotta=Terre cuite magenta
|
||||
Magenta_Wool=Laine magenta
|
||||
Magma_Block=Magma Block
|
||||
Mature_Beetroot_Plant=Plant de betterave mature
|
||||
Mature_Carrot_Plant=Plant de carotte mature
|
||||
Mature_Cocoa_Pod=Gousse de cacao mature
|
||||
Mature_Melon_Stem=Tige de melon mature
|
||||
Mature_Nether_Wart=Verrue du néant mature
|
||||
Mature_Potato_Plant=Plant de pomme de terre mature
|
||||
Mature_Pumpkin_Stem=Tige de citrouille mature
|
||||
Mature_Wheat_Plant=Usine de blé mature
|
||||
Medium_Cocoa_Pod=Gousse de cacao moyenne
|
||||
Mob_Spawner=Mob Spawner
|
||||
Mossy_Cobblestone=Pavé moussu
|
||||
Mossy_Cobblestone_Wall=Mur de pavés moussus
|
||||
Mossy_Stone_Brick=Brique de pierre moussue
|
||||
Mossy_Stone_Brick_Slab=Dalle de brique de pierre moussu
|
||||
Mossy_Stone_Brick_Stair=Moussu pierre brique escalier
|
||||
Mossy_Stone_Brick_Wall=Mur de brique de pierre moussu
|
||||
Mossy_Stone_Slab=Dalle de pierre moussue
|
||||
Mossy_Stone_Stair=Escalier en pierre moussue
|
||||
Mycelium=Mycélium
|
||||
Nether_Brick_Block=Bloc de brique du néant
|
||||
Nether_Brick_Fence=Clôture en brique du Néant
|
||||
Nether_Brick_Fence_Gate=Barrière de brique du Néant
|
||||
Nether_Brick_Slab=Dalle de brique du Néant
|
||||
Nether_Brick_Stair=Escalier de brique du Néant
|
||||
Nether_Brick_Wall=Mur de briques du Néant
|
||||
Nether_Lava_Source=Source de lave du Néant
|
||||
Nether_Portal=Portail du Néant
|
||||
Nether_Quartz_Ore=Minerai de quartz du néant
|
||||
Nether_Wart_Block=Bloc de verrue du Néant
|
||||
Note_Block=Bloc-notes
|
||||
Oak=Chêne
|
||||
Oak_Bark=Écorce de chêne
|
||||
Oak_Bark_Slab=Dalle en écorce de chêne
|
||||
Oak_Bark_Stair=Escalier en écorce de chêne
|
||||
Oak_Button=Bouton de chêne
|
||||
Oak_Door=Porte en chêne
|
||||
Oak_Fence_Gate=Porte de clôture en chêne
|
||||
Oak_Ladder=Échelle en chêne
|
||||
Oak_Plank=Planche de chêne
|
||||
Oak_Pressure_Plate=Plateau de pression en chêne
|
||||
Oak_Sapling=Arbre de chêne
|
||||
Oak_Sapling_Flower_Pot=Pot de fleur de chêne
|
||||
Oak_Slab=Dalle de chêne
|
||||
Oak_Stair=Escalier en chêne
|
||||
Oak_Wall_Sign=Panneau mural en chêne
|
||||
Observer=Observateur
|
||||
Obsidian=Obsidienne
|
||||
Obsidian_Glass_Pane=Vitre en obsidienne
|
||||
Obsidian_Glass_Slab=Dalle De Verre Obsidienne
|
||||
Obsidian_Glass_Stair=Escalier de verre d'obsidienne
|
||||
Obsidian_Slab=Dalle d'obsidienne
|
||||
Obsidian_Stair=Escalier en obsidienne
|
||||
Orange_Bed=Lit orange
|
||||
Orange_Carpet=Tapis orange
|
||||
Orange_Concrete=Béton Orange
|
||||
Orange_Concrete_Powder=Poudre de béton orange
|
||||
Orange_Concrete_Slab=Dalle de béton orange
|
||||
Orange_Concrete_Stair=Escalier béton orange
|
||||
Orange_Glazed_Terracotta=Terre cuite glacée à l'orange
|
||||
Orange_Shulker_Box=Boîte orange
|
||||
Orange_Stained_Glass=Vitrail orange
|
||||
Orange_Stained_Glass_Pane=Vitrail Orange
|
||||
Orange_Terracotta=Terre cuite orange
|
||||
Orange_Tulip_Flower_Pot=Pot de fleur tulipe orange
|
||||
Orange_Tulip=Tulipe orange
|
||||
Orange_Wool=Laine orange
|
||||
Oxeye_Daisy_Flower_Pot=Oxeye Daisy Pot De Fleur
|
||||
Oxeye_Daisy=Oxeye Daisy
|
||||
Packed_Ice=Banquise
|
||||
Peony=Pivoine
|
||||
Pillar_Quartz_Block=Bloc de quartz de pilier
|
||||
Pink_Bed=Lit rose
|
||||
Pink_Carpet=Tapis rose
|
||||
Pink_Concrete=Béton Rose
|
||||
Pink_Concrete_Powder=Poudre de béton rose
|
||||
Pink_Concrete_Slab=Dalle de béton rose
|
||||
Pink_Concrete_Stair=Escalier en béton rose
|
||||
Pink_Glazed_Terracotta=Terre Cuite Vernissée Rose
|
||||
Pink_Shulker_Box=Coffret Rose Shulker
|
||||
Pink_Stained_Glass=Vitrail rose
|
||||
Pink_Stained_Glass_Pane=Vitrail rose
|
||||
Pink_Terracotta=Terre Cuite Rose
|
||||
Pink_Tulip_Flower_Pot=Pot de fleur tulipe rose
|
||||
Pink_Tulip=Tulipe Rose
|
||||
Pink_Wool=Laine rose
|
||||
Polished_Andesite=Andésite poli
|
||||
Polished_Andesite_Slab=Dalle polie en andésite
|
||||
Polished_Andesite_Stair=Escalier Andésite Poli
|
||||
Polished_Diorite=Diorite polie
|
||||
Polished_Diorite_Slab=Dalle de diorite polie
|
||||
Polished_Diorite_Stair=Escalier Diorite Poli
|
||||
Polished_Granite=Granit poli
|
||||
Polished_Granite_Slab=Dalle de granit poli
|
||||
Polished_Granite_Stair=Escalier De Granit Poli
|
||||
Polished_Stone=Pierre polie
|
||||
Poppy=Coquelicot
|
||||
Poppy_Flower_Pot=Pot de fleur de pavot
|
||||
Powered_Rail=Rail motorisé
|
||||
Powered_Redstone_Spot=Redstone Spot motorisé
|
||||
Powered_Redstone_Trail=Redstone Trail motorisé
|
||||
Prismarine_Brick=Brique Prismarine
|
||||
Prismarine_Brick_Slab=Dalle de brique prismarine
|
||||
Prismarine_Brick_Stair=Escalier de brique Prismarine
|
||||
Prismarine_Dark=Prismarine Dark
|
||||
Prismarine_Slab=Dalle de prismarine
|
||||
Prismarine_Stair=Escalier Prismarine
|
||||
Prismarine_Wall=Mur prismarine
|
||||
Pumpkin=Citrouille
|
||||
Purple_Bed=Lit violet
|
||||
Purple_Carpet=Tapis violet
|
||||
Purple_Concrete=Purple Concrete
|
||||
Purple_Concrete_Powder=Poudre de béton pourpre
|
||||
Purple_Concrete_Slab=Dalle de béton violet
|
||||
Purple_Concrete_Stair=Escalier en béton violet
|
||||
Purple_Glazed_Terracotta=Terre cuite mauve
|
||||
Purple_Shulker_Box=Boite Shulker Pourpre
|
||||
Purple_Stained_Glass=Vitrail violet
|
||||
Purple_Stained_Glass_Pane=Vitrail violet
|
||||
Purple_Terracotta=Terre cuite mauve
|
||||
Purple_Wool=Laine Pourpre
|
||||
Purpur_Block=Bloc Purpur
|
||||
Purpur_Pillar=Pilier Purpur
|
||||
Purpur_Slab=Dalle Purpur
|
||||
Purpur_Stair=Escalier Purpur
|
||||
Quartz_Block=Quartz Block
|
||||
Quartz_Slab=Dalle de quartz
|
||||
Quartz_Stair=Escalier de quartz
|
||||
Realm_Barrier=Barrière de royaume
|
||||
Red_Bed=Lit rouge
|
||||
Red_Carpet=Tapis rouge
|
||||
Red_Concrete=Béton Rouge
|
||||
Red_Concrete_Powder=Poudre de béton rouge
|
||||
Red_Concrete_Slab=Dalle de béton rouge
|
||||
Red_Concrete_Stair=Escalier de béton rouge
|
||||
Red_Glazed_Terracotta=Terre Cuite Glacée Rouge
|
||||
Red_Mushroom=Champignon rouge
|
||||
Red_Mushroom_Flower_Pot=Pot De Fleur Champignon Rouge
|
||||
Red_Nether_Brick_Block=Bloc de brique du Néant rouge
|
||||
Red_Nether_Brick_Fence_Gate=Porte de clôture en brique rouge
|
||||
Red_Nether_Brick_Fence=Clôture rouge brique
|
||||
Red_Nether_Brick_Slab=Dalle de brique du Néant rouge
|
||||
Red_Nether_Brick_Stair=Escalier Rouge en Brique du Néant
|
||||
Red_Nether_Brick_Wall=Mur de briques rouges
|
||||
Red_Sand=Sable rouge
|
||||
Red_Sandstone=Grès rouge
|
||||
Red_Sandstone_Slab=Dalle de grès rouge
|
||||
Red_Sandstone_Stair=Escalier De Grès Rouge
|
||||
Red_Sandstone_Wall=Mur de grès rouge
|
||||
Red_Shulker_Box=Coffret Shulker Rouge
|
||||
Red_Stained_Glass=Vitrail rouge
|
||||
Red_Stained_Glass_Pane=Vitrail rouge
|
||||
Redstone=Pierre rouge
|
||||
Redstone_Block=Redstone Block
|
||||
Redstone_Comparator_(Off)=Comparateur Redstone (désactivé)
|
||||
Redstone_Comparator_(On)=Comparateur Redstone (activé)
|
||||
Redstone_Lamp=Lampe de pierre rouge
|
||||
Redstone_Ore=Minerai de roche rouge
|
||||
Redstone_Repeater=Redstone Repeater
|
||||
Redstone_Repeater_(Powered)=Redstone Repeater (alimenté)
|
||||
Redstone_Torch=Redstone Torch
|
||||
Redstone_Torch_(off)=Redstone Torch (éteint)
|
||||
Redstone_Trail=Redstone Trail
|
||||
Red_Terracotta=Terre cuite rouge
|
||||
Red_Tulip_Flower_Pot=Pot de fleur tulipe rouge
|
||||
Red_Tulip=Tulipe rouge
|
||||
Red_Wool=Laine rouge
|
||||
Riverwaterlogged_Sponge=Éponge gorgée de rivière
|
||||
River_Water_Source=Rivière source d'eau
|
||||
Rose_Bush=Rose Bush
|
||||
Sand=Le sable
|
||||
Sandstone=Grès
|
||||
Sandstone_Carved=Grès sculpté
|
||||
Sandstone_Slab=Dalle de grès
|
||||
Sandstone_Smooth=Grès lisse
|
||||
Sandstone_Stair=Escalier De Grès
|
||||
Sandstone_Wall=Mur de grès
|
||||
Sea_Lantern=Lanterne de mer
|
||||
Side_Hopper=Trémie latérale
|
||||
Skeleton_Skull=Crâne squelette
|
||||
Slime_Block=Slime Block
|
||||
Smooth_Quartz=Quartz lisse
|
||||
Smooth_Quartz_Slab=Dalle de quartz lisse
|
||||
Smooth_Quartz_Stair=Escalier Quartz Lisse
|
||||
Smooth_Red_Sandstone=Grès rouge lisse
|
||||
Smooth_Red_Sandstone_Slab=Dalle de grès rouge lisse
|
||||
Smooth_Red_Sandstone_Stair=Escalier lisse en grès rouge
|
||||
Smooth_Sandstone=Grès lisse
|
||||
Smooth_Sandstone_Slab=Dalle de grès lisse
|
||||
Smooth_Sandstone_Stair=Escalier en grès lisse
|
||||
Snow_Block=Bloc de neige
|
||||
Snow_Layer=Couche de neige
|
||||
Soul_Sand=Soul Sand
|
||||
Sponge=Éponge
|
||||
Spruce_Bark=Écorce d'épicéa
|
||||
Spruce_Bark_Slab=Dalle d'écorce d'épicéa
|
||||
Spruce_Bark_Stair=Escalier en écorce d'épicéa
|
||||
Spruce_Button=Bouton en épicéa
|
||||
Spruce_Fence=Clôture en épicéa
|
||||
Spruce_Fence_Gate=Porte de clôture en épicéa
|
||||
Spruce_Leaves=Feuilles d'épicéa
|
||||
Spruce_Log=Bûche d'épicéa
|
||||
Spruce=Épicéa
|
||||
Spruce_Pressure_Plate=Plaque de pression en épicéa
|
||||
Spruce_Sapling_Flower_Pot=Pot de fleur en bois d'épinette
|
||||
Spruce_Sapling=Épinette
|
||||
Spruce_Slab=Dalle d'épicéa
|
||||
Spruce_Stair=Escalier en épicéa
|
||||
Spruce_Stair=Escalier en épicéa
|
||||
Spruce_Trapdoor=Trappe en épicéa
|
||||
Sticky_Piston=Piston collant
|
||||
Stone=Pierre
|
||||
Stone_Brick=Brique de pierre
|
||||
Stone_Brick_Carved=Brique de pierre sculptée
|
||||
Stone_Brick_Cracked=Brique de pierre fissurée
|
||||
Stone_Brick_Slab=Dalle de brique de pierre
|
||||
Stone_Brick_Stair=Escalier De Brique De Pierre
|
||||
Stone_Brick_Stair=Escalier De Brique De Pierre
|
||||
Stone_Brick_Wall=Mur de brique
|
||||
Stone_Button=Bouton de pierre
|
||||
Stone_Pressure_Plate=Plaque de pression en pierre
|
||||
Stone_Slab=Dalle en pierre
|
||||
Stone_Stair=Escalier De Pierre
|
||||
Sugar_Canes=Sucre de canne
|
||||
Sunflower=Tournesol
|
||||
Tall_Grass=Hautes herbes
|
||||
Terracotta=Terre cuite
|
||||
Torch=Torche
|
||||
Trapdoor=Trappe
|
||||
Trapped_Chest=Coffre piégé
|
||||
Vines=Vignes
|
||||
Void=Vide
|
||||
Waterlily=Nénuphar
|
||||
Waterlogged_Sponge=Éponge gorgée d'eau
|
||||
Water_Source=Source d'eau
|
||||
White_Bed=Lit blanc
|
||||
White_Carpet=Tapis blanc
|
||||
White_Concrete=Béton Blanc
|
||||
White_Concrete_Powder=Poudre de béton blanche
|
||||
White_Concrete_Slab=Dalle de béton blanche
|
||||
White_Concrete_Stair=Escalier en béton blanc
|
||||
White_Glass_Pane=Vitre blanche
|
||||
White_Glazed_Terracotta=Terre Cuite Vernissée Blanche
|
||||
White_Shulker_Box=Boîte blanche de shulker
|
||||
White_Stained_Glass=Vitrail blanc
|
||||
White_Stained_Glass_Pane=Vitrail blanc
|
||||
White_Terracotta=Terre cuite blanche
|
||||
White_Tulip_Flower_Pot=Pot de fleur tulipe blanche
|
||||
White_Tulip=Tulipe blanche
|
||||
Wither_Skeleton_Skull=Crâne squelette
|
||||
Wool=La laine
|
||||
Yellow_Bed=Lit jaune
|
||||
Yellow_Carpet=Tapis jaune
|
||||
Yellow_Concrete=Béton Jaune
|
||||
Yellow_Concrete_Powder=Poudre de béton jaune
|
||||
Yellow_Concrete_Slab=Dalle de béton jaune
|
||||
Yellow_Concrete_Stair=Escalier Béton Jaune
|
||||
Yellow_Glazed_Terracotta=Terre Cuite Vernissée Jaune
|
||||
Yellow_Shulker_Box=Boite Shulker Jaune
|
||||
Yellow_Stained_Glass=Vitrail jaune
|
||||
Yellow_Stained_Glass_Pane=Vitrail jaune
|
||||
Yellow_Terracotta=Terre Cuite Jaune
|
||||
Yellow_Wool=Laine jaune
|
||||
Zombie_Head=Tête de zombie
|
|
@ -0,0 +1,666 @@
|
|||
Acacia_Bark=Akác léc
|
||||
Acacia_Bark_Slab=Akác léc palló
|
||||
Acacia_Bark_Stair=Akác léc lépcső
|
||||
Acacia_Button=Akác gomb
|
||||
Acacia_Fence=Akác kerítés
|
||||
Acacia_Fence_Gate=Akác kerítésajtó
|
||||
Acacia_Leaves=Akác levél
|
||||
Acacia=Akác
|
||||
Acacia_Plank=Akác deszka
|
||||
Acacia_Pressure_Plate=Akác nyomólemez
|
||||
Acacia_Sapling_Flower_Pot=Akác csemete cserépben
|
||||
Acacia_Sapling=Akác csemete
|
||||
Acacia_Slab=Akác palló
|
||||
Acacia_Stair=Akác lépcső
|
||||
Acacia_Trapdoor=Akác csapóajtó
|
||||
Activator_Rail=Activator sín
|
||||
Allium_Flower_Pot=Azálea cserépben
|
||||
Allium=Azálea
|
||||
Andesite=Andezit
|
||||
Andesite_Slab=Andezit palló
|
||||
Andesite_Stair=Andezit lépcső
|
||||
Andesite_Wall=Andezit fal
|
||||
Anvil=Üllő
|
||||
Azure_Bluet_Flower_Pot=Nefelejts cserépben
|
||||
Azure_Bluet=Nefelejts
|
||||
Barrier=Akadály
|
||||
Bed_Red=Piros ágy
|
||||
Bedrock=Alapkő
|
||||
Bell=Harang
|
||||
Birch_Bark=Nyárfa léc
|
||||
Birch_Bark_Slab=Nyárfa léc palló
|
||||
Birch_Bark_Stair=Nyárfa léc lépcső
|
||||
Birch_Button=Nyárfa gomb
|
||||
Birch_Door=Nyárfa ajtó
|
||||
Birch_Fence=Nyárfa kerítés
|
||||
Birch_Fence_Gate=Nyárfa kerítésajtó
|
||||
Birch_Leaves=Nyárfa levél
|
||||
Birch=Nyárfa
|
||||
Birch_Plank=Nyárfa deszka
|
||||
Birch_Pressure_Plate=Nyárfa nyomólemez
|
||||
Birch_Sapling_Flower_Pot=Nyárfa csemete cserépben
|
||||
Birch_Sapling=Nyárfa csemete
|
||||
Birch_Slab=Nyárfa palló
|
||||
Birch_Stair=Nyárfa lépcső
|
||||
Birch_Trapdoor=Nyárfa csapóajtó
|
||||
Black_Bed=Fekete ágy
|
||||
Black_Carpet=Fekete szőnyeg
|
||||
Black_Concrete=Fekete beton
|
||||
Black_Concrete_Powder=Fekete betonpor
|
||||
Black_Concrete_Slab=Fekete beton palló
|
||||
Black_Concrete_Stair=Fekete beton lépcső
|
||||
Black_Glazed_Terracotta=Fekete díszített terakotta
|
||||
Black_Shulker_Box=Fekete shulker doboz
|
||||
Black_Stained_Glass=Fekete edzett üveg
|
||||
Black_Stained_Glass_Pane=Fekete edzett üveglap
|
||||
Black_Terracotta=Fekete terakotta
|
||||
Black_Wool=Fekete gyapjú
|
||||
Blue_Bed=Kék ágy
|
||||
Blue_Carpet=Kék szőnyeg
|
||||
Blue_Concrete=Kék beton
|
||||
Blue_Concrete_Powder=Kék betonpor
|
||||
Blue_Concrete_Slab=Kék beton palló
|
||||
Blue_Concrete_Stair=Kék beton lépcső
|
||||
Blue_Glazed_Terracotta=Kék díszített terakotta
|
||||
Blue_Orchid_Flower_Pot=Kék orchidea cserépben
|
||||
Blue_Orchid=Kék orchidea
|
||||
Blue_Shulker_Box=Kék shulker doboz
|
||||
Blue_Stained_Glass=Kék edzett üveg
|
||||
Blue_Stained_Glass_Pane=Kék edzett üveglap
|
||||
Blue_Terracotta=Kék terakotta
|
||||
Blue_Wool=Kék gyapjú
|
||||
Bone_Block=Csont blokk
|
||||
Bookshelf=Könyvespolc
|
||||
Brewing_Stand=Próba állvány
|
||||
Brick_Block=Tégla blokk
|
||||
Brick_Slab=Tégla palló
|
||||
Brick_Stair=Tégla lépcső
|
||||
Brick_Wall=Tégla fal
|
||||
Brown_Bed=Rácsna ágy
|
||||
Brown_Carpet=Rácsna szőnyeg
|
||||
Brown_Concrete=Rácsna beton
|
||||
Brown_Concrete_Powder=Rácsna betonpor
|
||||
Brown_Concrete_Slab=Rácsna beton palló
|
||||
Brown_Concrete_Stair=Rácsna beton lépcső
|
||||
Brown_Glazed_Terracotta=Rácsna díszített terakotta
|
||||
Brown_Mushroom=Rácsna gomba
|
||||
Brown_Mushroom_Flower_Pot=Rácsna gomba cserépben
|
||||
Brown_Shulker_Box=Rácsna shulker doboz
|
||||
Brown_Stained_Glass=Rácsna edzett üveg
|
||||
Brown_Stained_Glass_Pane=Rácsna edzett üveglap
|
||||
Brown_Terracotta=Rácsna terakotta
|
||||
Brown_Wool=Rácsna gyapjú
|
||||
Burning_Furnace=Égő kemence
|
||||
Cactus=Kaktusz
|
||||
Cactus_Flower_Pot=Kaktusz cserépben
|
||||
Cake=Süti
|
||||
Cauldron=üst
|
||||
Chest=Láda
|
||||
Chiseled_Quartz_Block=Csiszolt kvarcz blokk
|
||||
Chiseled_Red_Sandstone=Csiszolt vörös homokkő
|
||||
Chorus_Flower=Tátika virág
|
||||
Chorus_Plant_Stem=Tátika növény gumó
|
||||
Clay=Agyag
|
||||
Coal_Block=Szén blokk
|
||||
Coal_Ore=Szén érc
|
||||
Coarse_Dirt=Régi föld
|
||||
Cobblestone=Járdakő
|
||||
Cobblestone_Slab=Járdakő palló
|
||||
Cobblestone_Stair=Járdakő lépcső
|
||||
Cobblestone_Wall=Járdakő fal
|
||||
Cobweb=Pókháló
|
||||
Command_Block=Parancs blokk
|
||||
Cracked_Stone_Brick_Slab=Törött kő tégla palló
|
||||
Cracked_Stone_Brick_Stair=Törött kő tégla lépcső
|
||||
Crafting_Table=Szerelő asztal
|
||||
Creeper_Head=Krípör fej
|
||||
Cut_Red_Sandstone=Vágott vörös homokkő
|
||||
Cyan_Bed=Cián ágy
|
||||
Cyan_Carpet=Cián szőnyeg
|
||||
Cyan_Concrete=Cián beton
|
||||
Cyan_Concrete_Powder=Cián betonpor
|
||||
Cyan_Concrete_Slab=Cián beton palló
|
||||
Cyan_Concrete_Stair=Cián beton lépcső
|
||||
Cyan_Glazed_Terracotta=Cián díszített terakotta
|
||||
Cyan_Shulker_Box=Cián shulker doboz
|
||||
Cyan_Stained_Glass=Cián edzett üveg
|
||||
Cyan_Stained_Glass_Pane=Cián edzett üveglap
|
||||
Cyan_Terracotta=Cián terakotta
|
||||
Cyan_Wool=Cián gyapjú
|
||||
Dandelion=Gyermekláncfű
|
||||
Dandelion_Flower_Pot=Gyermekláncfű cserépben
|
||||
Dark_Oak=Sötét tölgy
|
||||
Dark_Oak_Bark=Sötét tölgy léc
|
||||
Dark_Oak_Bark_Slab=Sötét tölgy léc palló
|
||||
Dark_Oak_Bark_Stair=Sötét tölgy léc lépcső
|
||||
Dark_Oak_Button=Sötét tölgy gomb
|
||||
Dark_Oak_Fence=Sötét tölgy kerítés
|
||||
Dark_Oak_Fence_Gate=Sötét tölgy kerítésajtó
|
||||
Dark_Oak_Leaves=Sötét tölgy levél
|
||||
Dark_Oak_Plank=Sötét tölgy deszka
|
||||
Dark_Oak_Pressure_Plate=Sötét tölgy nyomólemez
|
||||
Dark_Oak_Sapling_Flower_Pot=Sötét tölgy csemete cserépben
|
||||
Dark_Oak_Sapling=Sötét tölgy csemete
|
||||
Dark_Oak_Slab=Sötét tölgy palló
|
||||
Dark_Oak_Stair=Sötét tölgy lépcső
|
||||
Dark_Oak_Trapdoor=Sötét tölgy csapóajtó
|
||||
Dark_Prismarine_Slab=Sötét prizmarin palló
|
||||
Dark_Prismarine_Stair=Sötét prizmarin lépcső
|
||||
Daylight_Sensor=Dayvilágos sensor
|
||||
Dead_Bush=Kiszáradt bokor
|
||||
Dead_Bush_Flower_Pot=Kiszáradt bokor cserépben
|
||||
Dead_Chorus_Flower=Kiszáradt tátika virág
|
||||
Detector_Rail=Érzékelős sín
|
||||
Diamond_Block=Gyémánt blokk
|
||||
Diamond_Ore=Gyémánt érc
|
||||
Diorite=Diorit
|
||||
Diorite_Slab=Diorit palló
|
||||
Diorite_Stair=Diorit lépcső
|
||||
Diorite_Wall=Diorit fal
|
||||
Dirt=Föld
|
||||
Disabled_Hopper=Hatástalan hoppoló
|
||||
Disabled_Side_Hopper=Hatástalan oldal hoppoló
|
||||
Dispenser=Megsemmisítő
|
||||
Double_Acacia_Bark_Slab=Dupla akác léc palló
|
||||
Double_Acacia_Slab=Dupla akác palló
|
||||
Double_Andesite_Slab=Dupla andezit palló
|
||||
Double_Birch_Bark_Slab=Dupla nyárfa léc palló
|
||||
Double_Birch_Slab=Dupla nyárfa palló
|
||||
Double_Black_Concrete_Slab=Dupla fekete beton palló
|
||||
Double_Blue_Concrete_Slab=Dupla kék beton palló
|
||||
Double_Brick_Slab=Dupla tégla palló
|
||||
Double_Brown_Concrete_Slab=Dupla rácsna beton palló
|
||||
Double_Cobblestone_Slab=Dupla járdakő palló
|
||||
Double_Cracked_Stone_Brick_Slab=Dupla törött kő tégla palló
|
||||
Double_Cyan_Concrete_Slab=Dupla cián beton palló
|
||||
Double_Dark_Oak_Bark_Slab=Dupla sötét tölgy léc palló
|
||||
Double_Dark_Oak_Slab=Dupla sötét tölgy palló
|
||||
Double_Dark_Prismarine_Slab=Dupla sötét prizmarin palló
|
||||
Double_Diorite_Slab=Dupla diorit palló
|
||||
Double_End_Stone_Brick_Slab=Dupla végkő tégla palló
|
||||
Double_Gold_Block_Slab=Dupla arany blokk palló
|
||||
Double_Granite_Slab=Dupla gránit palló
|
||||
Double_Green_Concrete_Slab=Dupla zöld beton palló
|
||||
Double_Grey_Concrete_Slab=Dupla szürke beton palló
|
||||
Double_Iron_Block_Slab=Dupla vas blokk palló
|
||||
Double_Jungle_Bark_Slab=Dupla mangróvefa léc palló
|
||||
Double_Jungle_Slab=Dupla mangróvefa palló
|
||||
Double_Lapis_Lazuli_Slab=Dupla lapis lazuli palló
|
||||
Double_Light_Blue_Concrete_Slab=Dupla világos kék beton palló
|
||||
Double_Light_Grey_Concrete_Slab=Dupla világos szürke beton palló
|
||||
Double_Lime_Concrete_Slab=Dupla foszöld beton palló
|
||||
Double_Magenta_Concrete_Slab=Dupla bíbor beton palló
|
||||
Double_Mossy_Stone_Brick_Slab=Dupla mohás kő tégla palló
|
||||
Double_Mossy_Stone_Slab=Dupla mohás kő palló
|
||||
Double_Nether_Brick_Slab=Dupla nether tégla palló
|
||||
Double_Oak_Bark_Slab=Dupla tölgy léc palló
|
||||
Double_Oak_Slab=Dupla tölgy palló
|
||||
Double_Orange_Concrete_Slab=Dupla narancs beton palló
|
||||
Double_Pink_Concrete_Slab=Dupla rózsaszín beton palló
|
||||
Double_Polished_Andesite_Slab=Dupla csiszolt andezit palló
|
||||
Double_Polished_Diorite_Slab=Dupla csiszolt diorit palló
|
||||
Double_Polished_Granite_Slab=Dupla csiszolt gránit palló
|
||||
Double_Polished_Stone_Slab=Dupla csiszolt kő palló
|
||||
Double_Prismarine_Brick_Slab=Dupla prizmarin tégla palló
|
||||
Double_Prismarine_Slab=Dupla prizmarin palló
|
||||
Double_Purple_Concrete_Slab=Dupla lila beton palló
|
||||
Double_Purpur_Slab=Dupla purpur palló
|
||||
Double_Quartz_Slab=Dupla kvarcz palló
|
||||
Double_Red_Concrete_Slab=Dupla vörös beton palló
|
||||
Double_Red_Nether_Brick_Slab=Dupla vörös nether tégla palló
|
||||
Double_Red_Sandstone_Slab=Dupla vörös homokkő palló
|
||||
Double_Sandstone_Slab=Dupla homokkő palló
|
||||
Double_Smooth_Quartz_Slab=Dupla sima kvarcz palló
|
||||
Double_Smooth_Red_Sandstone_Slab=Dupla sima vörös homokkő palló
|
||||
Double_Smooth_Sandstone_Slab=Dupla sima homokkő palló
|
||||
Double_Spruce_Bark_Slab=Dupla bükk léc palló
|
||||
Double_Spruce_Slab=Dupla bükk palló
|
||||
Double_Stone_Brick_Slab=Dupla kő tégla palló
|
||||
Double_Stone_Slab=Dupla kő palló
|
||||
Double_Tallgrass=Dupla magasfű
|
||||
Double_White_Concrete_Slab=Dupla fehér beton palló
|
||||
Double_Yellow_Concrete_Slab=Dupla sárga beton palló
|
||||
Dragon_Egg=Sárkány tojás
|
||||
Dropper=Szemetes
|
||||
Emerald_Block=Smaragd blokk
|
||||
Emerald_Ore=Smaragd érc
|
||||
Enchanting_Table=Encsantoló asztal
|
||||
Ender_Chest=Végi láda
|
||||
End_Portal=Vég portal
|
||||
End_Portal_Frame=Vég portal keret
|
||||
End_Portal_Frame_with_Eye_of_Ender=Vég portal keret with eye of végi
|
||||
End_Rod=Végrúd
|
||||
End_Stone=Végkő
|
||||
End_Stone_Brick=Végkő tégla
|
||||
End_Stone_Brick_Slab=Végkő tégla palló
|
||||
End_Stone_Brick_Stair=Végkő tégla lépcső
|
||||
End_Stone_Brick_Wall=Végkő tégla fal
|
||||
Eternal_Fire=örök tűz
|
||||
Faceless_Pumpkin=Arctalan tök
|
||||
Farmland=Termőföld
|
||||
Fence=Kerítés
|
||||
Fern_Flower_Pot=Csillagvirág cserépben
|
||||
Fern=Csillagvirág
|
||||
Fire=Tűz
|
||||
Flower_Pot=Cserépben
|
||||
Flowing_Lava=Folyó láva
|
||||
Flowing_Nether_Lava=Folyó nether láva
|
||||
Flowing_River_Water=Folyó folyóvíz
|
||||
Flowing_Water=Folyó víz
|
||||
Frosted_Ice=Kocka jég
|
||||
Furnace=Kemence
|
||||
Glass=üveg
|
||||
Glass_Pane=üveglap
|
||||
Glowstone=Ragyogókő
|
||||
Gold_Block=Arany blokk
|
||||
Gold_Block_Slab=Arany blokk palló
|
||||
Gold_Block_Stair=Arany blokk lépcső
|
||||
Gold_Ore=Arany érc
|
||||
Granite=Gránit
|
||||
Granite_Slab=Gránit palló
|
||||
Granite_Stair=Gránit lépcső
|
||||
Granite_Wall=Gránit fal
|
||||
Grass=Fű
|
||||
Grass_Block=Fű blokk
|
||||
Grass_Dry=Kiszáradt fű
|
||||
Grass_Path=ösvény
|
||||
Gravel=Gravel
|
||||
Green_Bed=Zöld ágy
|
||||
Green_Carpet=Zöld szőnyeg
|
||||
Green_Concrete=Zöld beton
|
||||
Green_Concrete_Powder=Zöld betonpor
|
||||
Green_Concrete_Slab=Zöld beton palló
|
||||
Green_Concrete_Stair=Zöld beton lépcső
|
||||
Green_Glazed_Terracotta=Zöld díszített terakotta
|
||||
Green_Shulker_Box=Zöld shulker doboz
|
||||
Green_Stained_Glass=Zöld edzett üveg
|
||||
Green_Stained_Glass_Pane=Zöld edzett üveglap
|
||||
Green_Terracotta=Zöld terakotta
|
||||
Green_Wool=Zöld gyapjú
|
||||
Grey_Bed=Szürke ágy
|
||||
Grey_Carpet=Szürke szőnyeg
|
||||
Grey_Concrete=Szürke beton
|
||||
Grey_Concrete_Powder=Szürke betonpor
|
||||
Grey_Concrete_Slab=Szürke beton palló
|
||||
Grey_Concrete_Stair=Szürke beton lépcső
|
||||
Grey_Glazed_Terracotta=Szürke díszített terakotta
|
||||
Grey_Shulker_Box=Szürke shulker doboz
|
||||
Grey_Stained_Glass=Szürke edzett üveg
|
||||
Grey_Stained_Glass_Pane=Szürke edzett üveglap
|
||||
Grey_Terracotta=Szürke terakotta
|
||||
Grey_Wool=Szürke gyapjú
|
||||
Hay_Bale=Szalma bála
|
||||
Hopper=Hoppoló
|
||||
Huge_Brown_Mushroom_All-Faces_Stem=Hatalmas rácsna gomba egyforma gumó
|
||||
Huge_Brown_Mushroom_Block=Hatalmas rácsna gomba blokk
|
||||
Huge_Brown_Mushroom_Stem=Hatalmas rácsna gomba gumó
|
||||
Huge_Red_Mushroom_All-Faces_Stem=Hatalmas vörös gomba egyforma gumó
|
||||
Huge_Red_Mushroom_Block=Hatalmas vörös gomba blokk
|
||||
Huge_Red_Mushroom_Stem=Hatalmas vörös gomba gumó
|
||||
Human_Head=Human fej
|
||||
Hydrated_Farmland=Öntözött termőföld
|
||||
Ice=Jég
|
||||
Ice_Slab=Jég palló
|
||||
Ice_Stair=Jég lépcső
|
||||
Infested_Chiseled_Stone_Brick=Fertőzött csiszolt kő tégla
|
||||
Infested_Cobblestone=Fertőzött járdakő
|
||||
Infested_Cracked_Stone_Brick=Fertőzött törött kő tégla
|
||||
Infested_Mossy_Stone_Brick=Fertőzött mohás kő tégla
|
||||
Infested_Stone=Fertőzött kő
|
||||
Infested_Stone_Brick=Fertőzött kő tégla
|
||||
Inverted_Daylight_Sensor=Inverted dayvilágos sensor
|
||||
Iron_Bar=Vas rács
|
||||
Iron_Block=Vas blokk
|
||||
Iron_Block_Slab=Vas blokk palló
|
||||
Iron_Block_Stair=Vas blokk lépcső
|
||||
Iron_Door=Vas ajtó
|
||||
Iron_Ore=Vas érc
|
||||
Iron_Trapdoor=Vas csapóajtó
|
||||
Item_Frame=Item keret
|
||||
Jack_o_Lantern=Töklámpás
|
||||
Jukebox=Jukedoboz
|
||||
Jungle_Bark=Mangróvefa léc
|
||||
Jungle_Bark_Slab=Mangróvefa léc palló
|
||||
Jungle_Bark_Stair=Mangróvefa léc lépcső
|
||||
Jungle_Button=Mangróvefa gomb
|
||||
Jungle_Fence=Mangróvefa kerítés
|
||||
Jungle_Fence_Gate=Mangróvefa kerítésajtó
|
||||
Jungle_Leaves=Mangróvefa levél
|
||||
Jungle=Mangróvefa
|
||||
Jungle_Plank=Mangróvefa deszka
|
||||
Jungle_Pressure_Plate=Mangróvefa nyomólemez
|
||||
Jungle_Sapling_Flower_Pot=Mangróvefa csemete cserépben
|
||||
Jungle_Sapling=Mangróvefa csemete
|
||||
Jungle_Slab=Mangróvefa palló
|
||||
Jungle_Stair=Mangróvefa lépcső
|
||||
Jungle_Trapdoor=Mangróvefa csapóajtó
|
||||
Ladder=Létra
|
||||
Lapis_Lazuli_Block=Lapis lazuli blokk
|
||||
Lapis_Lazuli_Ore=Lapis lazuli érc
|
||||
Lapis_Lazuli_Slab=Lapis lazuli palló
|
||||
Lapis_Lazuli_Stair=Lapis lazuli lépcső
|
||||
Large_Fern=Nagy csillagvirág
|
||||
Lava_Source=Láva forrás
|
||||
Leaves=Levél
|
||||
Lever=Falikar
|
||||
Light_Blue_Bed=Világos kék ágy
|
||||
Light_Blue_Carpet=Világos kék szőnyeg
|
||||
Light_Blue_Concrete=Világos kék beton
|
||||
Light_Blue_Concrete_Powder=Világos kék betonpor
|
||||
Light_Blue_Concrete_Slab=Világos kék beton palló
|
||||
Light_Blue_Concrete_Stair=Világos kék beton lépcső
|
||||
Light_Blue_Glazed_Terracotta=Világos kék díszített terakotta
|
||||
Light_Blue_Shulker_Box=Világos kék shulker doboz
|
||||
Light_Blue_Stained_Glass=Világos kék edzett üveg
|
||||
Light_Blue_Stained_Glass_Pane=Világos kék edzett üveglap
|
||||
Light_Blue_Terracotta=Világos kék terakotta
|
||||
Light_Blue_Wool=Világos kék gyapjú
|
||||
Light_Grey_Bed=Világos szürke ágy
|
||||
Light_Grey_Carpet=Világos szürke szőnyeg
|
||||
Light_Grey_Concrete=Világos szürke beton
|
||||
Light_Grey_Concrete_Powder=Világos szürke betonpor
|
||||
Light_Grey_Concrete_Slab=Világos szürke beton palló
|
||||
Light_Grey_Concrete_Stair=Világos szürke beton lépcső
|
||||
Light_Grey_Glazed_Terracotta=Világos szürke díszített terakotta
|
||||
Light_Grey_Shulker_Box=Világos szürke shulker doboz
|
||||
Light_Grey_Stained_Glass=Világos szürke edzett üveg
|
||||
Light_Grey_Stained_Glass_Pane=Világos szürke edzett üveglap
|
||||
Light_Grey_Terracotta=Világos szürke terakotta
|
||||
Light_Grey_Wool=Világos szürke gyapjú
|
||||
Lilac=Gyopár
|
||||
Lime_Bed=Foszöld ágy
|
||||
Lime_Carpet=Foszöld szőnyeg
|
||||
Lime_Concrete=Foszöld beton
|
||||
Lime_Concrete_Powder=Foszöld betonpor
|
||||
Lime_Concrete_Slab=Foszöld beton palló
|
||||
Lime_Concrete_Stair=Foszöld beton lépcső
|
||||
Lime_Glazed_Terracotta=Foszöld díszített terakotta
|
||||
Lime_Shulker_Box=Foszöld shulker doboz
|
||||
Lime_Stained_Glass=Foszöld edzett üveg
|
||||
Lime_Stained_Glass_Pane=Foszöld edzett üveglap
|
||||
Lime_Terracotta=Foszöld terakotta
|
||||
Lime_Wool=Foszöld gyapjú
|
||||
Lit_Redstone_Ore=Égő vöröskő érc
|
||||
Magenta_Bed=Bíbor ágy
|
||||
Magenta_Carpet=Bíbor szőnyeg
|
||||
Magenta_Concrete=Bíbor beton
|
||||
Magenta_Concrete_Powder=Bíbor betonpor
|
||||
Magenta_Concrete_Slab=Bíbor beton palló
|
||||
Magenta_Concrete_Stair=Bíbor beton lépcső
|
||||
Magenta_Glazed_Terracotta=Bíbor díszített terakotta
|
||||
Magenta_Shulker_Box=Bíbor shulker doboz
|
||||
Magenta_Stained_Glass=Bíbor edzett üveg
|
||||
Magenta_Stained_Glass_Pane=Bíbor edzett üveglap
|
||||
Magenta_Terracotta=Bíbor terakotta
|
||||
Magenta_Wool=Bíbor gyapjú
|
||||
Magma_Block=Magma blokk
|
||||
Mature_Beetroot_Plant=Kinőtt édesgyökér növény
|
||||
Mature_Carrot_Plant=Kinőtt répa növény
|
||||
Mature_Cocoa_Pod=Kinőtt kakaó pod
|
||||
Mature_Melon_Stem=Kinőtt dinnye gumó
|
||||
Mature_Nether_Wart=Kinőtt nether wart
|
||||
Mature_Potato_Plant=Kinőtt krumpli növény
|
||||
Mature_Pumpkin_Stem=Kinőtt tök gumó
|
||||
Mature_Wheat_Plant=Kinőtt gabona növény
|
||||
Medium_Cocoa_Pod=Medium kakaó pod
|
||||
Melon=Dinnye
|
||||
Mob_Spawner=Mob termelő
|
||||
Mossy_Cobblestone=Mohás járdakő
|
||||
Mossy_Cobblestone_Wall=Mohás járdakő fal
|
||||
Mossy_Stone_Brick=Mohás kő tégla
|
||||
Mossy_Stone_Brick_Slab=Mohás kő tégla palló
|
||||
Mossy_Stone_Brick_Stair=Mohás kő tégla lépcső
|
||||
Mossy_Stone_Brick_Wall=Mohás kő tégla fal
|
||||
Mossy_Stone_Slab=Mohás kő palló
|
||||
Mossy_Stone_Stair=Mohás kő lépcső
|
||||
Mycelium=Gombafonálblokk
|
||||
Nether_Brick_Block=Nether tégla blokk
|
||||
Nether_Brick_Fence=Nether tégla kerítés
|
||||
Nether_Brick_Fence_Gate=Nether tégla kerítésajtó
|
||||
Nether_Brick_Slab=Nether tégla palló
|
||||
Nether_Brick_Stair=Nether tégla lépcső
|
||||
Nether_Brick_Wall=Nether tégla fal
|
||||
Nether_Lava_Source=Nether láva forrás
|
||||
Nether_Portal=Nether portal
|
||||
Nether_Quartz_Ore=Nether kvarcz érc
|
||||
Netherrack=Netherrack
|
||||
Nether_Wart_Block=Nether wart blokk
|
||||
Note_Block=Note blokk
|
||||
Oak=Tölgy
|
||||
Oak_Bark=Tölgy léc
|
||||
Oak_Bark_Slab=Tölgy léc palló
|
||||
Oak_Bark_Stair=Tölgy léc lépcső
|
||||
Oak_Button=Tölgy gomb
|
||||
Oak_Door=Tölgy ajtó
|
||||
Oak_Fence_Gate=Tölgy kerítésajtó
|
||||
Oak_Ladder=Tölgy létra
|
||||
Oak_Plank=Tölgy deszka
|
||||
Oak_Pressure_Plate=Tölgy nyomólemez
|
||||
Oak_Sapling=Tölgy csemete
|
||||
Oak_Sapling_Flower_Pot=Tölgy csemete cserépben
|
||||
Oak_Slab=Tölgy palló
|
||||
Oak_Stair=Tölgy lépcső
|
||||
Oak_Wall_Sign=Tölgy faÉgőábla
|
||||
Observer=Observer
|
||||
Obsidian=Obsidian
|
||||
Obsidian_Glass_Pane=Obsidian üveglap
|
||||
Obsidian_Glass_Slab=Obsidian üveg palló
|
||||
Obsidian_Glass_Stair=Obsidian üveg lépcső
|
||||
Obsidian_Slab=Obsidian palló
|
||||
Obsidian_Stair=Obsidian lépcső
|
||||
Orange_Bed=Narancs ágy
|
||||
Orange_Carpet=Narancs szőnyeg
|
||||
Orange_Concrete=Narancs beton
|
||||
Orange_Concrete_Powder=Narancs betonpor
|
||||
Orange_Concrete_Slab=Narancs beton palló
|
||||
Orange_Concrete_Stair=Narancs beton lépcső
|
||||
Orange_Glazed_Terracotta=Narancs díszített terakotta
|
||||
Orange_Shulker_Box=Narancs shulker doboz
|
||||
Orange_Stained_Glass=Narancs edzett üveg
|
||||
Orange_Stained_Glass_Pane=Narancs edzett üveglap
|
||||
Orange_Terracotta=Narancs terakotta
|
||||
Orange_Tulip_Flower_Pot=Narancs tulipán cserépben
|
||||
Orange_Tulip=Narancs tulipán
|
||||
Orange_Wool=Narancs gyapjú
|
||||
Oxeye_Daisy_Flower_Pot=Gyöngyvirág cserépben
|
||||
Oxeye_Daisy=Gyöngyvirág
|
||||
Packed_Ice=Darabolt jég
|
||||
Peony=Peony
|
||||
Pillar_Quartz_Block=Oszlop kvarcz blokk
|
||||
Pink_Bed=Rózsaszín ágy
|
||||
Pink_Carpet=Rózsaszín szőnyeg
|
||||
Pink_Concrete=Rózsaszín beton
|
||||
Pink_Concrete_Powder=Rózsaszín betonpor
|
||||
Pink_Concrete_Slab=Rózsaszín beton palló
|
||||
Pink_Concrete_Stair=Rózsaszín beton lépcső
|
||||
Pink_Glazed_Terracotta=Rózsaszín díszített terakotta
|
||||
Pink_Shulker_Box=Rózsaszín shulker doboz
|
||||
Pink_Stained_Glass=Rózsaszín edzett üveg
|
||||
Pink_Stained_Glass_Pane=Rózsaszín edzett üveglap
|
||||
Pink_Terracotta=Rózsaszín terakotta
|
||||
Pink_Tulip_Flower_Pot=Rózsaszín tulipán cserépben
|
||||
Pink_Tulip=Rózsaszín tulipán
|
||||
Pink_Wool=Rózsaszín gyapjú
|
||||
Piston=Piston
|
||||
Podzol=Podzol
|
||||
Polished_Andesite=Csiszolt andezit
|
||||
Polished_Andesite_Slab=Csiszolt andezit palló
|
||||
Polished_Andesite_Stair=Csiszolt andezit lépcső
|
||||
Polished_Diorite=Csiszolt diorit
|
||||
Polished_Diorite_Slab=Csiszolt diorit palló
|
||||
Polished_Diorite_Stair=Csiszolt diorit lépcső
|
||||
Polished_Granite=Csiszolt gránit
|
||||
Polished_Granite_Slab=Csiszolt gránit palló
|
||||
Polished_Granite_Stair=Csiszolt gránit lépcső
|
||||
Polished_Stone=Csiszolt kő
|
||||
Poppy=Pipacs
|
||||
Poppy_Flower_Pot=Pipacs cserépben
|
||||
Powered_Rail=Powevörös sín
|
||||
Powered_Redstone_Spot=Powevörös vöröskő spot
|
||||
Powered_Redstone_Trail=Powevörös vöröskő tsín
|
||||
Prismarine=Prizmarin
|
||||
Prismarine_Brick=Prizmarin tégla
|
||||
Prismarine_Brick_Slab=Prizmarin tégla palló
|
||||
Prismarine_Brick_Stair=Prizmarin tégla lépcső
|
||||
Prismarine_Dark=Prizmarin sötét
|
||||
Prismarine_Slab=Prizmarin palló
|
||||
Prismarine_Stair=Prizmarin lépcső
|
||||
Prismarine_Wall=Prizmarin fal
|
||||
Pumpkin=Tök
|
||||
Purple_Bed=Lila ágy
|
||||
Purple_Carpet=Lila szőnyeg
|
||||
Purple_Concrete=Lila beton
|
||||
Purple_Concrete_Powder=Lila betonpor
|
||||
Purple_Concrete_Slab=Lila beton palló
|
||||
Purple_Concrete_Stair=Lila beton lépcső
|
||||
Purple_Glazed_Terracotta=Lila díszített terakotta
|
||||
Purple_Shulker_Box=Lila shulker doboz
|
||||
Purple_Stained_Glass=Lila edzett üveg
|
||||
Purple_Stained_Glass_Pane=Lila edzett üveglap
|
||||
Purple_Terracotta=Lila terakotta
|
||||
Purple_Wool=Lila gyapjú
|
||||
Purpur_Block=Purpur blokk
|
||||
Purpur_Pillar=Purpur oszlop
|
||||
Purpur_Slab=Purpur palló
|
||||
Purpur_Stair=Purpur lépcső
|
||||
Quartz_Block=Kvarcz blokk
|
||||
Quartz_Slab=Kvarcz palló
|
||||
Quartz_Stair=Kvarcz lépcső
|
||||
Rail=Sín
|
||||
Realm_Barrier=Akadály
|
||||
Red_Bed=Vörös ágy
|
||||
Red_Carpet=Vörös szőnyeg
|
||||
Red_Concrete=Vörös beton
|
||||
Red_Concrete_Powder=Vörös betonpor
|
||||
Red_Concrete_Slab=Vörös beton palló
|
||||
Red_Concrete_Stair=Vörös beton lépcső
|
||||
Red_Glazed_Terracotta=Vörös díszített terakotta
|
||||
Red_Mushroom=Vörös gomba
|
||||
Red_Mushroom_Flower_Pot=Vörös gomba cserépben
|
||||
Red_Nether_Brick_Block=Vörös nether tégla blokk
|
||||
Red_Nether_Brick_Fence_Gate=Vörös nether tégla kerítésajtó
|
||||
Red_Nether_Brick_Fence=Vörös nether tégla kerítés
|
||||
Red_Nether_Brick_Slab=Vörös nether tégla palló
|
||||
Red_Nether_Brick_Stair=Vörös nether tégla lépcső
|
||||
Red_Nether_Brick_Wall=Vörös nether tégla fal
|
||||
Red_Sand=Vörös homok
|
||||
Red_Sandstone=Vörös homokkő
|
||||
Red_Sandstone_Slab=Vörös homokkő palló
|
||||
Red_Sandstone_Stair=Vörös homokkő lépcső
|
||||
Red_Sandstone_Wall=Vörös homokkő fal
|
||||
Red_Shulker_Box=Vörös shulker doboz
|
||||
Red_Stained_Glass=Vörös edzett üveg
|
||||
Red_Stained_Glass_Pane=Vörös edzett üveglap
|
||||
Redstone=Vöröskő
|
||||
Redstone_Block=Vöröskő blokk
|
||||
Redstone_Comparator_(Off)=Vöröskő comparator (off)
|
||||
Redstone_Comparator_(On)=Vöröskő comparator (on)
|
||||
Redstone_Lamp=Vöröskő lamp
|
||||
Redstone_Ore=Vöröskő érc
|
||||
Redstone_Repeater=Vöröskő repeater
|
||||
Redstone_Repeater_(Powered)=Vöröskő repeater (powevörös)
|
||||
Redstone_Torch=Vöröskő fáklya
|
||||
Redstone_Torch_(off)=Vöröskő fáklya (off)
|
||||
Redstone_Trail=Vöröskő tsín
|
||||
Red_Terracotta=Vörös terakotta
|
||||
Red_Tulip_Flower_Pot=Vörös tulipán cserépben
|
||||
Red_Tulip=Vörös tulipán
|
||||
Red_Wool=Vörös gyapjú
|
||||
Riverwaterlogged_Sponge=Rivervízlogged sponge
|
||||
River_Water_Source=Folyóvíz forrás
|
||||
Rose_Bush=Rózsa bokor
|
||||
Sand=Homok
|
||||
Sandstone=Homokkő
|
||||
Sandstone_Carved=Vésett homokkő
|
||||
Sandstone_Slab=Homokkő palló
|
||||
Sandstone_Smooth=Homokkő sima
|
||||
Sandstone_Stair=Homokkő lépcső
|
||||
Sandstone_Wall=Homokkő fal
|
||||
Sea_Lantern=Tengeri lámpás
|
||||
Side_Hopper=Oldal hoppoló
|
||||
Skeleton_Skull=Koponya
|
||||
Slime_Block=Sfoszöld blokk
|
||||
Smooth_Quartz=Sima kvarcz
|
||||
Smooth_Quartz_Slab=Sima kvarcz palló
|
||||
Smooth_Quartz_Stair=Sima kvarcz lépcső
|
||||
Smooth_Red_Sandstone=Sima vörös homokkő
|
||||
Smooth_Red_Sandstone_Slab=Sima vörös homokkő palló
|
||||
Smooth_Red_Sandstone_Stair=Sima vörös homokkő lépcső
|
||||
Smooth_Sandstone=Sima homokkő
|
||||
Smooth_Sandstone_Slab=Sima homokkő palló
|
||||
Smooth_Sandstone_Stair=Sima homokkő lépcső
|
||||
Snow_Block=Hó blokk
|
||||
Snow_Layer=Hó réteg
|
||||
Soul_Sand=Lélek homok
|
||||
Sponge=Sponge
|
||||
Spruce_Bark=Bükk léc
|
||||
Spruce_Bark_Slab=Bükk léc palló
|
||||
Spruce_Bark_Stair=Bükk léc lépcső
|
||||
Spruce_Button=Bükk gomb
|
||||
Spruce_Fence=Bükk kerítés
|
||||
Spruce_Fence_Gate=Bükk kerítésajtó
|
||||
Spruce_Leaves=Bükk levél
|
||||
Spruce_Log=Bükk log
|
||||
Spruce=Bükk
|
||||
Spruce_Pressure_Plate=Bükk nyomólemez
|
||||
Spruce_Sapling_Flower_Pot=Bükk csemete cserépben
|
||||
Spruce_Sapling=Bükk csemete
|
||||
Spruce_Slab=Bükk palló
|
||||
Spruce_Stair=Bükk lépcső
|
||||
Spruce_Stair=Bükk lépcső
|
||||
Spruce_Trapdoor=Bükk csapóajtó
|
||||
Sticky_Piston=Ragadós piston
|
||||
Stone=Kő
|
||||
Stone_Brick=Kő tégla
|
||||
Stone_Brick_Carved=Kő tégla carved
|
||||
Stone_Brick_Cracked=Kő tégla törött
|
||||
Stone_Brick_Slab=Kő tégla palló
|
||||
Stone_Brick_Stair=Kő tégla lépcső
|
||||
Stone_Brick_Stair=Kő tégla lépcső
|
||||
Stone_Brick_Wall=Kő tégla fal
|
||||
Stone_Button=Kő gomb
|
||||
Stone_Pressure_Plate=Kő nyomólemez
|
||||
Stone_Slab=Kő palló
|
||||
Stone_Stair=Kő lépcső
|
||||
Sugar_Canes=Cukornád
|
||||
Sunflower=Sunvirág
|
||||
Tall_Grass=Magas fű
|
||||
Terracotta=Terakotta
|
||||
TNT=Tnt
|
||||
Torch=Fáklya
|
||||
Trapdoor=Csapóajtó
|
||||
Trapped_Chest=Trapped láda
|
||||
Vines=Inda
|
||||
Void=Üresség
|
||||
Waterlily=Vízlily
|
||||
Waterlogged_Sponge=Vízlogged sponge
|
||||
Water_Source=Víz forrás
|
||||
White_Bed=Fehér ágy
|
||||
White_Carpet=Fehér szőnyeg
|
||||
White_Concrete=Fehér beton
|
||||
White_Concrete_Powder=Fehér betonpor
|
||||
White_Concrete_Slab=Fehér beton palló
|
||||
White_Concrete_Stair=Fehér beton lépcső
|
||||
White_Glass_Pane=Fehér üveglap
|
||||
White_Glazed_Terracotta=Fehér díszített terakotta
|
||||
White_Shulker_Box=Fehér shulker doboz
|
||||
White_Stained_Glass=Fehér edzett üveg
|
||||
White_Stained_Glass_Pane=Fehér edzett üveglap
|
||||
White_Terracotta=Fehér terakotta
|
||||
White_Tulip_Flower_Pot=Fehér tulipán cserépben
|
||||
White_Tulip=Fehér tulipán
|
||||
Wither_Skeleton_Skull=Wither koponya
|
||||
Wool=Gyapjú
|
||||
Yellow_Bed=Sárga ágy
|
||||
Yellow_Carpet=Sárga szőnyeg
|
||||
Yellow_Concrete=Sárga beton
|
||||
Yellow_Concrete_Powder=Sárga betonpor
|
||||
Yellow_Concrete_Slab=Sárga beton palló
|
||||
Yellow_Concrete_Stair=Sárga beton lépcső
|
||||
Yellow_Glazed_Terracotta=Sárga díszített terakotta
|
||||
Yellow_Shulker_Box=Sárga shulker doboz
|
||||
Yellow_Stained_Glass=Sárga edzett üveg
|
||||
Yellow_Stained_Glass_Pane=Sárga edzett üveglap
|
||||
Yellow_Terracotta=Sárga terakotta
|
||||
Yellow_Wool=Sárga gyapjú
|
||||
Zombie_Head=Zombi fej
|
|
@ -0,0 +1,660 @@
|
|||
Acacia_Bark=Kora akacji
|
||||
Acacia_Bark_Slab=Płyta z kory akacji
|
||||
Acacia_Bark_Stair=Schody z kory akacji
|
||||
Acacia_Button=Przycisk akacji
|
||||
Acacia_Fence=Ogrodzenie z akacji
|
||||
Acacia_Fence_Gate=Acacia Fence Gate
|
||||
Acacia_Leaves=Liście akacji
|
||||
Acacia=Akacja
|
||||
Acacia_Plank=Deska akacjowa
|
||||
Acacia_Pressure_Plate=Płyta dociskowa z akacji
|
||||
Acacia_Sapling_Flower_Pot=Doniczka z drzewkiem akacjowym
|
||||
Acacia_Sapling=Drzewko akacjowe
|
||||
Acacia_Slab=Płyta akacjowa
|
||||
Acacia_Stair=Schody akacjowe
|
||||
Acacia_Trapdoor=Akacja Trapdoor
|
||||
Activator_Rail=Szyna aktywatora
|
||||
Allium_Flower_Pot=Doniczka Allium
|
||||
Allium=Czosnek
|
||||
Andesite_Slab=Płyta Andesite
|
||||
Andesite_Stair=Schody Andezytowe
|
||||
Andesite_Wall=Ściana Andezytowa
|
||||
Anvil=Kowadło
|
||||
Azure_Bluet_Flower_Pot=Doniczka Azure Bluet
|
||||
Azure_Bluet=Azure Bluet
|
||||
Barrier=Bariera
|
||||
Bed_Red=Łóżko Czerwone
|
||||
Bedrock=Podłoże skalne
|
||||
Bell=dzwon
|
||||
Birch_Bark=Kora Brzozy
|
||||
Birch_Bark_Slab=Płyta z kory brzozy
|
||||
Birch_Bark_Stair=Schody z kory brzozy
|
||||
Birch_Button=Przycisk brzozy
|
||||
Birch_Door=Brzozowe drzwi
|
||||
Birch_Fence=Brzoza Płot
|
||||
Birch_Fence_Gate=Brzozowa brama ogrodzeniowa
|
||||
Birch_Leaves=Liście Brzozy
|
||||
Birch=Brzozowy
|
||||
Birch_Plank=Deska brzozowa
|
||||
Birch_Pressure_Plate=Tarcza dociskowa brzozy
|
||||
Birch_Sapling_Flower_Pot=Doniczka z brzozowym drzewkiem
|
||||
Birch_Sapling=Brzoza Drzewko
|
||||
Birch_Slab=Płyta brzozowa
|
||||
Birch_Stair=Schody Brzozowe
|
||||
Birch_Trapdoor=Brzoza Trapdoor
|
||||
Black_Bed=Czarne łóżko
|
||||
Black_Carpet=Czarny dywan
|
||||
Black_Concrete=Czarny beton
|
||||
Black_Concrete_Powder=Czarny proszek betonowy
|
||||
Black_Concrete_Slab=Czarna płyta betonowa
|
||||
Black_Concrete_Stair=Schody betonowe czarne
|
||||
Black_Glazed_Terracotta=Czarna szkliwiona terakota
|
||||
Black_Shulker_Box=Czarne pudełko Shulkera
|
||||
Black_Stained_Glass=Czarne witraże
|
||||
Black_Stained_Glass_Pane=Czarna witraż
|
||||
Black_Terracotta=Czarna terakota
|
||||
Black_Wool=Czarna wełna
|
||||
Blue_Bed=Niebieskie łóżko
|
||||
Blue_Carpet=Niebieski dywan
|
||||
Blue_Concrete=Niebieski beton
|
||||
Blue_Concrete_Powder=Niebieski proszek betonowy
|
||||
Blue_Concrete_Slab=Niebieska płyta betonowa
|
||||
Blue_Concrete_Stair=Niebieskie schody betonowe
|
||||
Blue_Glazed_Terracotta=Niebieska terakota
|
||||
Blue_Orchid_Flower_Pot=Niebieska doniczka z orchidei
|
||||
Blue_Orchid=Niebieska Orchidea
|
||||
Blue_Shulker_Box=Niebieskie pudełko Shulkera
|
||||
Blue_Stained_Glass=Niebieskie witraże
|
||||
Blue_Stained_Glass_Pane=Niebieska witraż
|
||||
Blue_Terracotta=Niebieska terakota
|
||||
Blue_Wool=Niebieska wełna
|
||||
Bone_Block=Blok kości
|
||||
Bookshelf=Półka na książki
|
||||
Brewing_Stand=Stoisko piwowarskie
|
||||
Brick_Block=Brick Block
|
||||
Brick_Slab=Cegła Płyta
|
||||
Brick_Stair=Cegła Schody
|
||||
Brick_Wall=Ceglana ściana
|
||||
Brown_Bed=Brązowe łóżko
|
||||
Brown_Carpet=Brązowy dywan
|
||||
Brown_Concrete=Brązowy beton
|
||||
Brown_Concrete_Powder=Brązowy proszek betonowy
|
||||
Brown_Concrete_Slab=Brązowa płyta betonowa
|
||||
Brown_Concrete_Stair=Schody z brązowego betonu
|
||||
Brown_Glazed_Terracotta=Brązowa terakota
|
||||
Brown_Mushroom=Brązowy Grzyb
|
||||
Brown_Mushroom_Flower_Pot=Doniczka z brązowym grzybem
|
||||
Brown_Shulker_Box=Brown Shulker Box
|
||||
Brown_Stained_Glass=Brązowe witraże
|
||||
Brown_Stained_Glass_Pane=Brązowa witraż
|
||||
Brown_Terracotta=Brązowa terakota
|
||||
Brown_Wool=Brązowa wełna
|
||||
Burning_Furnace=Płonący Piec
|
||||
Cactus=Kaktus
|
||||
Cactus_Flower_Pot=Kaktusowa doniczka
|
||||
Cake=Ciasto
|
||||
Cauldron=Kociołek
|
||||
Chest=skrzynia
|
||||
Chiseled_Quartz_Block=Dłutowany blok kwarcu
|
||||
Chiseled_Red_Sandstone=Rzeźbiony czerwony piaskowiec
|
||||
Chorus_Flower=Kwiat Chóru
|
||||
Chorus_Plant_Stem=Chorus Stem
|
||||
Clay=Glina
|
||||
Coal_Block=Blok Węgla
|
||||
Coal_Ore=Rudy węgla
|
||||
Coarse_Dirt=Gruby brud
|
||||
Cobblestone=Bruk
|
||||
Cobblestone_Slab=Płyta brukowa
|
||||
Cobblestone_Stair=Schody Brukowe
|
||||
Cobblestone_Wall=Ściana Brukowa
|
||||
Cobweb=Pajęczyna
|
||||
Command_Block=Blok komend
|
||||
Cracked_Stone_Brick_Slab=Cegła z pękniętego kamienia
|
||||
Cracked_Stone_Brick_Stair=Cegła z pękniętego kamienia
|
||||
Crafting_Table=Stół Rzemieślniczy
|
||||
Creeper_Head=Creeper Head
|
||||
Cut_Red_Sandstone=Wytnij czerwony piaskowiec
|
||||
Cyan_Bed=Niebieskie łóżko
|
||||
Cyan_Carpet=Cyjan Dywan
|
||||
Cyan_Concrete=Cyjan Beton
|
||||
Cyan_Concrete_Powder=Cyjanowy proszek betonowy
|
||||
Cyan_Concrete_Slab=Cyjanowa płyta betonowa
|
||||
Cyan_Concrete_Stair=Cyjan Betonowe Schody
|
||||
Cyan_Glazed_Terracotta=Cyan Glazed Terakotta
|
||||
Cyan_Shulker_Box=Cyan Shulker Box
|
||||
Cyan_Stained_Glass=Cyjan Witraż
|
||||
Cyan_Stained_Glass_Pane=Cyan Witraż
|
||||
Cyan_Terracotta=Cyan Terakotta
|
||||
Cyan_Wool=Cyjan Wełna
|
||||
Dandelion=Mniszek lekarski
|
||||
Dandelion_Flower_Pot=Doniczka Dandelion
|
||||
Dark_Oak=Ciemny dąb
|
||||
Dark_Oak_Bark=Kora Dębu Ciemnego
|
||||
Dark_Oak_Bark_Slab=Płyta z kory dębu ciemnego
|
||||
Dark_Oak_Bark_Stair=Schody z kory dębu ciemnego
|
||||
Dark_Oak_Button=Przycisk Ciemnego Dębu
|
||||
Dark_Oak_Fence=Płot z ciemnego dębu
|
||||
Dark_Oak_Fence_Gate=Brama Ogrodzenia Ciemnego Dębu
|
||||
Dark_Oak_Leaves=Ciemne liście dębu
|
||||
Dark_Oak_Plank=Deska z ciemnego dębu
|
||||
Dark_Oak_Pressure_Plate=Płyta dociskowa z ciemnego dębu
|
||||
Dark_Oak_Sapling_Flower_Pot=Doniczka z sadzonkami z ciemnego dębu
|
||||
Dark_Oak_Sapling=Sadzonka Ciemnego Dębu
|
||||
Dark_Oak_Slab=Płyta z ciemnego dębu
|
||||
Dark_Oak_Stair=Schody z ciemnego dębu
|
||||
Dark_Oak_Trapdoor=Trapdoor z ciemnego dębu
|
||||
Dark_Prismarine_Slab=Dark Prismarine Slab
|
||||
Dark_Prismarine_Stair=Mroczne Schody Prismarine
|
||||
Daylight_Sensor=Detektor światła dziennego
|
||||
Dead_Bush=Martwy krzew
|
||||
Dead_Bush_Flower_Pot=Doniczka z Martwego Krzaka
|
||||
Dead_Chorus_Flower=Kwiat Martwego Chóru
|
||||
Detector_Rail=Szyna detektora
|
||||
Diamond_Block=Blok diamentowy
|
||||
Diamond_Ore=Ruda Diamentowa
|
||||
Diorite=Dioryt
|
||||
Diorite_Slab=Płyta Diorite
|
||||
Diorite_Stair=Diorite Stair
|
||||
Diorite_Wall=Ściana Diorite
|
||||
Dirt=Brud
|
||||
Disabled_Hopper=Wyłączony zbiornik
|
||||
Disabled_Side_Hopper=Wyłączony zbiornik boczny
|
||||
Dispenser=Szafarka
|
||||
Double_Acacia_Bark_Slab=Podwójna płyta z kory akacji
|
||||
Double_Acacia_Slab=Podwójna płyta akacjowa
|
||||
Double_Andesite_Slab=Podwójna płyta andezytowa
|
||||
Double_Birch_Bark_Slab=Podwójna płyta z kory brzozy
|
||||
Double_Birch_Slab=Podwójna płyta brzozowa
|
||||
Double_Black_Concrete_Slab=Podwójna czarna płyta betonowa
|
||||
Double_Blue_Concrete_Slab=Podwójna niebieska płyta betonowa
|
||||
Double_Brick_Slab=Podwójna płyta z cegły
|
||||
Double_Brown_Concrete_Slab=Podwójna brązowa płyta betonowa
|
||||
Double_Cobblestone_Slab=Podwójna płyta brukowa
|
||||
Double_Cracked_Stone_Brick_Slab=Cegła podwójnie spękana z kamienia
|
||||
Double_Cyan_Concrete_Slab=Podwójna cyjanowa płyta betonowa
|
||||
Double_Dark_Oak_Bark_Slab=Podwójna płyta z kory dębu ciemnego
|
||||
Double_Dark_Oak_Slab=Podwójna płyta z ciemnego dębu
|
||||
Double_Dark_Prismarine_Slab=Podwójna ciemna płyta pryzmatyczna
|
||||
Double_Diorite_Slab=Podwójna płyta Diorite
|
||||
Double_End_Stone_Brick_Slab=Kamienna płyta z podwójnym końcem
|
||||
Double_Gold_Block_Slab=Podwójna płyta Gold Block
|
||||
Double_Granite_Slab=Podwójna płyta granitowa
|
||||
Double_Green_Concrete_Slab=Podwójna zielona płyta betonowa
|
||||
Double_Grey_Concrete_Slab=Podwójna szara płyta betonowa
|
||||
Double_Iron_Block_Slab=Podwójna płyta z żelaznego bloku
|
||||
Double_Jungle_Bark_Slab=Płyta z podwójnej kory z dżungli
|
||||
Double_Jungle_Slab=Podwójna płyta dżungli
|
||||
Double_Lapis_Lazuli_Slab=Podwójna płyta Lapis Lazuli
|
||||
Double_Light_Blue_Concrete_Slab=Podwójna jasnoniebieska płyta betonowa
|
||||
Double_Light_Grey_Concrete_Slab=Podwójna jasnoszara płyta betonowa
|
||||
Double_Lime_Concrete_Slab=Płyta betonowa z podwójną limonką
|
||||
Double_Magenta_Concrete_Slab=Podwójna karmazynowa płyta betonowa
|
||||
Double_Mossy_Stone_Brick_Slab=Podwójna omszała kamienna płyta z cegły
|
||||
Double_Mossy_Stone_Slab=Podwójna omszała kamienna płyta
|
||||
Double_Nether_Brick_Slab=Podwójna płyta ceglana Nether
|
||||
Double_Oak_Bark_Slab=Płyta z podwójnej kory dębu
|
||||
Double_Oak_Slab=Podwójna płyta dębowa
|
||||
Double_Orange_Concrete_Slab=Podwójna pomarańczowa płyta betonowa
|
||||
Double_Pink_Concrete_Slab=Podwójna różowa płyta betonowa
|
||||
Double_Polished_Andesite_Slab=Podwójnie polerowana płyta andezytowa
|
||||
Double_Polished_Diorite_Slab=Podwójnie polerowana płyta Diorite
|
||||
Double_Polished_Granite_Slab=Podwójnie polerowana płyta granitowa
|
||||
Double_Polished_Stone_Slab=Podwójnie polerowana kamienna płyta
|
||||
Double_Prismarine_Brick_Slab=Podwójna płyta pryzmatyczna z cegły
|
||||
Double_Prismarine_Slab=Podwójna płyta pryzmatyczna
|
||||
Double_Purple_Concrete_Slab=Podwójna fioletowa płyta betonowa
|
||||
Double_Purpur_Slab=Podwójna płyta Purpur
|
||||
Double_Quartz_Slab=Podwójna płyta kwarcowa
|
||||
Double_Red_Concrete_Slab=Podwójna czerwona płyta betonowa
|
||||
Double_Red_Nether_Brick_Slab=Podwójna czerwona cegła z Netheru
|
||||
Double_Red_Sandstone_Slab=Podwójna płyta z czerwonego piaskowca
|
||||
Double_Sandstone_Slab=Podwójna płyta z piaskowca
|
||||
Double_Smooth_Quartz_Slab=Podwójna gładka płyta kwarcowa
|
||||
Double_Smooth_Red_Sandstone_Slab=Podwójna gładka płyta z czerwonego piaskowca
|
||||
Double_Smooth_Sandstone_Slab=Podwójna gładka płyta z piaskowca
|
||||
Double_Spruce_Bark_Slab=Podwójna płyta z kory świerkowej
|
||||
Double_Spruce_Slab=Podwójna płyta świerkowa
|
||||
Double_Stone_Brick_Slab=Płyta z podwójnego kamienia
|
||||
Double_Stone_Slab=Podwójna płyta kamienna
|
||||
Double_Tallgrass=Podwójna wysoka trawa
|
||||
Double_White_Concrete_Slab=Podwójna biała płyta betonowa
|
||||
Double_Yellow_Concrete_Slab=Podwójna żółta płyta betonowa
|
||||
Dragon_Egg=Smocze Jajko
|
||||
Dropper=Zakraplacz
|
||||
Emerald_Block=Szmaragdowy blok
|
||||
Emerald_Ore=Szmaragdowa Ruda
|
||||
Enchanting_Table=Czarujący Stół
|
||||
Ender_Chest=Skrzynia Endera
|
||||
End_Portal=Zakończ portal
|
||||
End_Portal_Frame=Zakończ ramę portalu
|
||||
End_Portal_Frame_with_Eye_of_Ender=Zakończ ramę portalu za pomocą Eye of Ender
|
||||
End_Rod=Koniec pręta
|
||||
End_Stone=Kamień końcowy
|
||||
End_Stone_Brick=Koniec Kamiennej Cegły
|
||||
End_Stone_Brick_Slab=Płytka końcowa z cegły kamiennej
|
||||
End_Stone_Brick_Stair=Końcówka Kamienna Klatka schodowa
|
||||
End_Stone_Brick_Wall=Kamienny mur z cegły końca
|
||||
Eternal_Fire=Wieczny ogień
|
||||
Faceless_Pumpkin=Dynia Bez Twarzy
|
||||
Farmland=Pole uprawne
|
||||
Fence=Płot
|
||||
Fern_Flower_Pot=Doniczka z paproci
|
||||
Fern=Paproć
|
||||
Fire=Ogień
|
||||
Flower_Pot=Doniczka
|
||||
Flowing_Lava=Płynąca Lawa
|
||||
Flowing_Nether_Lava=Flava Nether Lava
|
||||
Flowing_River_Water=Płynąca woda rzeczna
|
||||
Flowing_Water=Płynąca woda
|
||||
Frosted_Ice=Matowy lód
|
||||
Furnace=Piec
|
||||
Glass=Szkło
|
||||
Glass_Pane=Szklana tafla
|
||||
Glowstone=Świecący kamień
|
||||
Gold_Block=Złoty Blok
|
||||
Gold_Block_Slab=Złota płyta blokowa
|
||||
Gold_Block_Stair=Złoty blok schodowy
|
||||
Gold_Ore=Ruda złota
|
||||
Granite=Granit
|
||||
Granite_Slab=Płyta granitowa
|
||||
Granite_Stair=Schody Granitowe
|
||||
Granite_Wall=Ściana Granitowa
|
||||
Grass=Trawa
|
||||
Grass_Block=Blok trawy
|
||||
Grass_Dry=Trawa sucha
|
||||
Grass_Path=Ścieżka
|
||||
Gravel=Żwir
|
||||
Green_Bed=Zielone łóżko
|
||||
Green_Carpet=Zielony dywan
|
||||
Green_Concrete=Zielony beton
|
||||
Green_Concrete_Powder=Zielony proszek betonowy
|
||||
Green_Concrete_Slab=Zielona płyta betonowa
|
||||
Green_Concrete_Stair=Schody betonowe zielone
|
||||
Green_Glazed_Terracotta=Terakota zielona
|
||||
Green_Shulker_Box=Zielone pudełko Shulkera
|
||||
Green_Stained_Glass=Witraż zielony
|
||||
Green_Stained_Glass_Pane=Zielona witraż
|
||||
Green_Terracotta=Zielona terakota
|
||||
Green_Wool=Zielona wełna
|
||||
Grey_Bed=Szare łóżko
|
||||
Grey_Carpet=Szary dywan
|
||||
Grey_Concrete=Szary beton
|
||||
Grey_Concrete_Powder=Szary proszek betonowy
|
||||
Grey_Concrete_Slab=Szara płyta betonowa
|
||||
Grey_Concrete_Stair=Schody betonowe szary
|
||||
Grey_Glazed_Terracotta=Szara terakota
|
||||
Grey_Shulker_Box=Szare pudełko Shulkera
|
||||
Grey_Stained_Glass=Szary witraż
|
||||
Grey_Stained_Glass_Pane=Szary witraż
|
||||
Grey_Terracotta=Szara terakota
|
||||
Grey_Wool=Szara wełna
|
||||
Hay_Bale=Hay Bale
|
||||
Hopper=Zbiornik
|
||||
Huge_Brown_Mushroom_All-Faces_Stem=Ogromny brązowy grzybek na wszystkich twarzach
|
||||
Huge_Brown_Mushroom_Block=Ogromny brązowy grzybowy blok
|
||||
Huge_Brown_Mushroom_Stem=Ogromny brązowy grzybek
|
||||
Huge_Red_Mushroom_All-Faces_Stem=Ogromny czerwony grzybek na wszystkich twarzach
|
||||
Huge_Red_Mushroom_Block=Ogromny blok czerwonych grzybów
|
||||
Huge_Red_Mushroom_Stem=Ogromny czerwony grzybek
|
||||
Human_Head=Ludzka głowa
|
||||
Hydrated_Farmland=Uwodnione pola uprawne
|
||||
Ice=lód
|
||||
Ice_Slab=Płyta lodowa
|
||||
Ice_Stair=Schody Lodowe
|
||||
Infested_Chiseled_Stone_Brick=Zainfekowany rzeźbiony kamienny klocek
|
||||
Infested_Cobblestone=Zainfekowany bruk
|
||||
Infested_Cracked_Stone_Brick=Zainfekowany pęknięty kamień
|
||||
Infested_Mossy_Stone_Brick=Zainfekowana omszała kamienna cegła
|
||||
Infested_Stone=Zainfekowany Kamień
|
||||
Infested_Stone_Brick=Zainfekowany kamienny klocek
|
||||
Inverted_Daylight_Sensor=Odwrócony czujnik światła dziennego
|
||||
Iron_Bar=Żelazny Sztabka
|
||||
Iron_Block=Blok żelaza
|
||||
Iron_Block_Slab=Płyta żelazna
|
||||
Iron_Block_Stair=Żelazne schody
|
||||
Iron_Door=Żelazne drzwi
|
||||
Iron_Ore=Ruda żelaza
|
||||
Iron_Trapdoor=Iron Trapdoor
|
||||
Item_Frame=Rama produktu
|
||||
Jack_o_Lantern=Latarnia z dyni
|
||||
Jukebox=Szafa grająca
|
||||
Jungle_Bark=Jungle Bark
|
||||
Jungle_Bark_Slab=Płyta z kory dżungli
|
||||
Jungle_Bark_Stair=Schody z kory dżungli
|
||||
Jungle_Button=Przycisk dżungli
|
||||
Jungle_Fence=Ogrodzenie dżungli
|
||||
Jungle_Fence_Gate=Jungle Fence Gate
|
||||
Jungle_Leaves=Liście dżungli
|
||||
Jungle=Dżungla
|
||||
Jungle_Plank=Deska dżungli
|
||||
Jungle_Pressure_Plate=Tarcza dociskowa Jungle
|
||||
Jungle_Sapling_Flower_Pot=Doniczka Jungle Sapling
|
||||
Jungle_Sapling=Drzewko Dżungli
|
||||
Jungle_Slab=Płyta dżungli
|
||||
Jungle_Stair=Schody w dżungli
|
||||
Jungle_Trapdoor=Jungle Trapdoor
|
||||
Ladder=Drabina
|
||||
Lapis_Lazuli_Block=Lapis Lazuli Block
|
||||
Lapis_Lazuli_Ore=Lapis Lazuli Ore
|
||||
Lapis_Lazuli_Slab=Lapis Lazuli Slab
|
||||
Lapis_Lazuli_Stair=Lapis Lazuli Schody
|
||||
Large_Fern=Duża paproć
|
||||
Lava_Source=Źródło lawy
|
||||
Leaves=Odchodzi
|
||||
Lever=Dźwignia
|
||||
Light_Blue_Bed=Jasnoniebieskie łóżko
|
||||
Light_Blue_Carpet=Jasnoniebieski dywan
|
||||
Light_Blue_Concrete=Jasnoniebieski beton
|
||||
Light_Blue_Concrete_Powder=Jasnoniebieski proszek betonowy
|
||||
Light_Blue_Concrete_Slab=Jasnoniebieska płyta betonowa
|
||||
Light_Blue_Concrete_Stair=Jasnoniebieskie schody betonowe
|
||||
Light_Blue_Glazed_Terracotta=Jasnoniebieska szkliwiona terakota
|
||||
Light_Blue_Shulker_Box=Jasnoniebieskie pudełko Shulkera
|
||||
Light_Blue_Stained_Glass=Jasnoniebieskie witraże
|
||||
Light_Blue_Stained_Glass_Pane=Jasnoniebieska witraż
|
||||
Light_Blue_Terracotta=Jasnoniebieska terakota
|
||||
Light_Blue_Wool=Jasnoniebieska wełna
|
||||
Light_Grey_Bed=Jasnoszare łóżko
|
||||
Light_Grey_Carpet=Jasnoszary dywan
|
||||
Light_Grey_Concrete=Jasnoszary beton
|
||||
Light_Grey_Concrete_Powder=Jasnoszary proszek betonowy
|
||||
Light_Grey_Concrete_Slab=Jasnoszara płyta betonowa
|
||||
Light_Grey_Concrete_Stair=Jasnoszare schody betonowe
|
||||
Light_Grey_Glazed_Terracotta=Jasnoszara szkliwiona terakota
|
||||
Light_Grey_Shulker_Box=Jasnoszare pudełko Shulker
|
||||
Light_Grey_Stained_Glass=Jasnoszare witraże
|
||||
Light_Grey_Stained_Glass_Pane=Jasnoszara witraż
|
||||
Light_Grey_Terracotta=Jasnoszara terakota
|
||||
Light_Grey_Wool=Jasnoszara wełna
|
||||
Lilac=Liliowy
|
||||
Lime_Bed=Lime Bed
|
||||
Lime_Carpet=Dywan Wapienny
|
||||
Lime_Concrete=Wapno Betonowe
|
||||
Lime_Concrete_Powder=Proszek z betonu wapiennego
|
||||
Lime_Concrete_Slab=Płyta betonowa wapienna
|
||||
Lime_Concrete_Stair=Wapno Betonowe Schody
|
||||
Lime_Glazed_Terracotta=Glazurowana terakota
|
||||
Lime_Shulker_Box=Lime Shulker Box
|
||||
Lime_Stained_Glass=Witraż wapno
|
||||
Lime_Stained_Glass_Pane=Witraż wapno
|
||||
Lime_Terracotta=Wapna Terakota
|
||||
Lime_Wool=Wapno
|
||||
Lit_Redstone_Ore=Lit Ruda Czerwonego Kamienia
|
||||
Magenta_Bed=Magenta Bed
|
||||
Magenta_Carpet=Dywan Magenta
|
||||
Magenta_Concrete=Karmazynowy Beton
|
||||
Magenta_Concrete_Powder=Magenta Betonowy proszek
|
||||
Magenta_Concrete_Slab=Magenta Betonowa płyta
|
||||
Magenta_Concrete_Stair=Magenta Betonowe schody
|
||||
Magenta_Glazed_Terracotta=Magenta Glazed Terakotta
|
||||
Magenta_Shulker_Box=Magenta Shulker Box
|
||||
Magenta_Stained_Glass=Witraż Magenta
|
||||
Magenta_Stained_Glass_Pane=Witraż Magenta
|
||||
Magenta_Terracotta=Magenta Terakotowa
|
||||
Magenta_Wool=Magenta Wełna
|
||||
Magma_Block=Blok magmy
|
||||
Mature_Beetroot_Plant=Dojrzała roślina buraka
|
||||
Mature_Carrot_Plant=Dojrzała Marchewka
|
||||
Mature_Cocoa_Pod=Dojrzałe strąki kakaowe
|
||||
Mature_Melon_Stem=Dojrzały melon macierzysty
|
||||
Mature_Nether_Wart=Dojrzała Nether Brodawka
|
||||
Mature_Potato_Plant=Dojrzała roślina ziemniaczana
|
||||
Mature_Pumpkin_Stem=Dojrzały Łodyga Dyni
|
||||
Mature_Wheat_Plant=Dojrzała roślina pszenicy
|
||||
Medium_Cocoa_Pod=Średni strąk kakaowy
|
||||
Mob_Spawner=Mob Spawner
|
||||
Mossy_Cobblestone=Omszały bruk
|
||||
Mossy_Cobblestone_Wall=Omszały brukowiec
|
||||
Mossy_Stone_Brick=Mechata kamienna cegła
|
||||
Mossy_Stone_Brick_Slab=Mechata kamienna cegła płyta
|
||||
Mossy_Stone_Brick_Stair=Mechate kamienne schody z cegły
|
||||
Mossy_Stone_Brick_Wall=Mechaty kamienny mur z cegły
|
||||
Mossy_Stone_Slab=Omszała płyta kamienna
|
||||
Mossy_Stone_Stair=Mechate Kamienne Schody
|
||||
Mycelium=Grzybnia
|
||||
Nether_Brick_Block=Blok ceglany Netheru
|
||||
Nether_Brick_Fence=Płot z cegły pustki
|
||||
Nether_Brick_Fence_Gate=Brama ogrodzeniowa z cegły pustki
|
||||
Nether_Brick_Slab=Nether Brick Slab
|
||||
Nether_Brick_Stair=Schody Nether Brick
|
||||
Nether_Brick_Wall=Mur z cegły Nether
|
||||
Nether_Lava_Source=Źródło lawy Netheru
|
||||
Nether_Portal=Portal Nether
|
||||
Nether_Quartz_Ore=Ruda Kwarcu Netheru
|
||||
Nether_Wart_Block=Blok Brodawki Otchłani
|
||||
Note_Block=Uwaga Blok
|
||||
Oak=Dąb
|
||||
Oak_Bark=Kora dębu
|
||||
Oak_Bark_Slab=Płyta z kory dębu
|
||||
Oak_Bark_Stair=Schody z kory dębu
|
||||
Oak_Button=Dębowy guzik
|
||||
Oak_Door=Dębowe drzwi
|
||||
Oak_Fence_Gate=Dębowa brama ogrodzeniowa
|
||||
Oak_Ladder=Drabina Dębowa
|
||||
Oak_Plank=Deska dębowa
|
||||
Oak_Pressure_Plate=Dębowa płyta dociskowa
|
||||
Oak_Sapling=Sadzonka Dębu
|
||||
Oak_Sapling_Flower_Pot=Doniczka Sadzonka Dębu
|
||||
Oak_Slab=Płyta dębowa
|
||||
Oak_Stair=Dębowe Schody
|
||||
Oak_Wall_Sign=Znak ściany dębu
|
||||
Observer=Obserwator
|
||||
Obsidian=Obsydian
|
||||
Obsidian_Glass_Pane=Obsydianowa tafla szkła
|
||||
Obsidian_Glass_Slab=Obsidian Glass Slab
|
||||
Obsidian_Glass_Stair=Obsydianowe schody szklane
|
||||
Obsidian_Slab=Płyta obsydianowa
|
||||
Obsidian_Stair=Obsydianowe schody
|
||||
Orange_Bed=Pomarańczowe łóżko
|
||||
Orange_Carpet=Dywan Pomarańczowy
|
||||
Orange_Concrete=Beton Pomarańczowy
|
||||
Orange_Concrete_Powder=Pomarańczowy proszek betonowy
|
||||
Orange_Concrete_Slab=Pomarańczowa płyta betonowa
|
||||
Orange_Concrete_Stair=Pomarańczowe schody betonowe
|
||||
Orange_Glazed_Terracotta=Terakota pomarańczowa
|
||||
Orange_Shulker_Box=Pomarańczowe pudełko Shulkera
|
||||
Orange_Stained_Glass=Witraż Pomarańczowy
|
||||
Orange_Stained_Glass_Pane=Pomarańczowa witraż
|
||||
Orange_Terracotta=Pomarańczowa Terakota
|
||||
Orange_Tulip_Flower_Pot=Doniczka Pomarańczowy Tulipan
|
||||
Orange_Tulip=Pomarańczowy Tulipan
|
||||
Orange_Wool=Wełna Pomarańczowa
|
||||
Oxeye_Daisy_Flower_Pot=Doniczka Oxeye Daisy
|
||||
Oxeye_Daisy=Oxeye Daisy
|
||||
Packed_Ice=Lód Pakowany
|
||||
Peony=Piwonia
|
||||
Pillar_Quartz_Block=Filar Kwarcowy Blok
|
||||
Pink_Bed=Różowe łóżko
|
||||
Pink_Carpet=Różowy dywan
|
||||
Pink_Concrete=Różowy beton
|
||||
Pink_Concrete_Powder=Różowy proszek betonowy
|
||||
Pink_Concrete_Slab=Różowa płyta betonowa
|
||||
Pink_Concrete_Stair=Różowe schody betonowe
|
||||
Pink_Glazed_Terracotta=Różowa Glazurowana Terakota
|
||||
Pink_Shulker_Box=Różowe pudełko Shulkera
|
||||
Pink_Stained_Glass=Różowe witraże
|
||||
Pink_Stained_Glass_Pane=Różowa witraż
|
||||
Pink_Terracotta=Różowa terakota
|
||||
Pink_Tulip_Flower_Pot=Doniczka z różowym tulipanem
|
||||
Pink_Tulip=Różowy tulipan
|
||||
Pink_Wool=Różowa wełna
|
||||
Piston=Tłok
|
||||
Polished_Andesite=Polerowany Andezyt
|
||||
Polished_Andesite_Slab=Polerowana płyta andezytowa
|
||||
Polished_Andesite_Stair=Polerowane schody andezytowe
|
||||
Polished_Diorite=Polerowany Dioryt
|
||||
Polished_Diorite_Slab=Polerowana płyta Diorite
|
||||
Polished_Diorite_Stair=Polerowane schody Diorite
|
||||
Polished_Granite=Polerowany granit
|
||||
Polished_Granite_Slab=Polerowana płyta granitowa
|
||||
Polished_Granite_Stair=Schody z polerowanego granitu
|
||||
Polished_Stone=Polerowany kamień
|
||||
Poppy=MAK
|
||||
Poppy_Flower_Pot=Doniczka z makiem
|
||||
Powered_Rail=Zasilane tory
|
||||
Powered_Redstone_Spot=Zasilany punkt Redstone
|
||||
Powered_Redstone_Trail=Zasilany szlak Redstone
|
||||
Prismarine_Brick=Cegła Prismarine
|
||||
Prismarine_Brick_Slab=Cegła Prismarine
|
||||
Prismarine_Brick_Stair=Cegła schodowa Prismarine
|
||||
Prismarine_Dark=Prismarine Dark
|
||||
Prismarine_Slab=Płyta Prismarine
|
||||
Prismarine_Stair=Schody Prismarine
|
||||
Prismarine_Wall=Ściana Prismarine
|
||||
Pumpkin=Dynia
|
||||
Purple_Bed=Fioletowe łóżko
|
||||
Purple_Carpet=Fioletowy dywan
|
||||
Purple_Concrete=Fioletowy Beton
|
||||
Purple_Concrete_Powder=Fioletowy proszek betonowy
|
||||
Purple_Concrete_Slab=Fioletowa płyta betonowa
|
||||
Purple_Concrete_Stair=Fioletowy Schody Betonowe
|
||||
Purple_Glazed_Terracotta=Fioletowa szkliwiona terakota
|
||||
Purple_Shulker_Box=Fioletowe pudełko Shulkera
|
||||
Purple_Stained_Glass=Fioletowe witraże
|
||||
Purple_Stained_Glass_Pane=Fioletowa witraż
|
||||
Purple_Terracotta=Fioletowa terakota
|
||||
Purple_Wool=Fioletowa wełna
|
||||
Purpur_Block=Blok Purpur
|
||||
Purpur_Pillar=Filar Purpur
|
||||
Purpur_Slab=Płyta Purpur
|
||||
Purpur_Stair=Schody Purpur
|
||||
Quartz_Block=Blok kwarcowy
|
||||
Quartz_Slab=Płyta kwarcowa
|
||||
Quartz_Stair=Schody Kwarcowe
|
||||
Rail=Szyna
|
||||
Realm_Barrier=Bariera Królestwa
|
||||
Red_Bed=Czerwone łóżko
|
||||
Red_Carpet=Czerwony dywan
|
||||
Red_Concrete=Czerwony beton
|
||||
Red_Concrete_Powder=Czerwony proszek betonowy
|
||||
Red_Concrete_Slab=Czerwona płyta betonowa
|
||||
Red_Concrete_Stair=Schody z czerwonego betonu
|
||||
Red_Glazed_Terracotta=Terakota czerwona szkliwiona
|
||||
Red_Mushroom=Czerwony grzyb
|
||||
Red_Mushroom_Flower_Pot=Doniczka z czerwonym grzybem
|
||||
Red_Nether_Brick_Block=Blok z czerwonej siatki pustki
|
||||
Red_Nether_Brick_Fence_Gate=Brama z czerwonej cegły Nether
|
||||
Red_Nether_Brick_Fence=Ogrodzenie z czerwonej cegły Nether
|
||||
Red_Nether_Brick_Slab=Płyta z czerwonej cegły Nether
|
||||
Red_Nether_Brick_Stair=Schody z czerwonej siatki Netheru
|
||||
Red_Nether_Brick_Wall=Mur z czerwonej cegły Nether
|
||||
Red_Sand=Czerwony piasek
|
||||
Red_Sandstone=Czerwony piaskowiec
|
||||
Red_Sandstone_Slab=Płyta z czerwonego piaskowca
|
||||
Red_Sandstone_Stair=Schody z czerwonego piaskowca
|
||||
Red_Sandstone_Wall=Ściana z czerwonego piaskowca
|
||||
Red_Shulker_Box=Czerwone pudełko Shulkera
|
||||
Red_Stained_Glass=Witraż czerwony
|
||||
Red_Stained_Glass_Pane=Czerwona witraż
|
||||
Redstone=Czerwony kamień
|
||||
Redstone_Block=Blok Redstone
|
||||
Redstone_Comparator_(Off)=Komparator Redstone (Wyłącz)
|
||||
Redstone_Comparator_(On)=Komparator Redstone (włączony)
|
||||
Redstone_Lamp=Lampa Redstone
|
||||
Redstone_Ore=Ruda Redstone
|
||||
Redstone_Repeater=Redstone Repeater
|
||||
Redstone_Repeater_(Powered)=Redstone Repeater (zasilany)
|
||||
Redstone_Torch=Pochodnia Redstone'a
|
||||
Redstone_Torch_(off)=Pochodnia Redstone (wyłączona)
|
||||
Redstone_Trail=Szlak Redstone
|
||||
Red_Terracotta=Czerwona terakota
|
||||
Red_Tulip_Flower_Pot=Doniczka z czerwonym tulipanem
|
||||
Red_Tulip=Czerwony tulipan
|
||||
Red_Wool=Czerwona wełna
|
||||
Riverwaterlogged_Sponge=Gąbka Riverwaterloglog
|
||||
River_Water_Source=Źródło wody rzecznej
|
||||
Rose_Bush=Krzak róży
|
||||
Sand=Piasek
|
||||
Sandstone=Piaskowiec
|
||||
Sandstone_Carved=Rzeźbiony piaskowiec
|
||||
Sandstone_Slab=Płyta z piaskowca
|
||||
Sandstone_Smooth=Gładki piaskowiec
|
||||
Sandstone_Stair=Schody z piaskowca
|
||||
Sandstone_Wall=Ściana z piaskowca
|
||||
Sea_Lantern=Latarnia morska
|
||||
Side_Hopper=Boczny kosz zasypowy
|
||||
Skeleton_Skull=Szkielet czaszki
|
||||
Slime_Block=Blok śluzu
|
||||
Smooth_Quartz=Gładki kwarc
|
||||
Smooth_Quartz_Slab=Gładka płyta kwarcowa
|
||||
Smooth_Quartz_Stair=Gładkie schody kwarcowe
|
||||
Smooth_Red_Sandstone=Gładki czerwony piaskowiec
|
||||
Smooth_Red_Sandstone_Slab=Gładka płyta z czerwonego piaskowca
|
||||
Smooth_Red_Sandstone_Stair=Gładkie schody z czerwonego piaskowca
|
||||
Smooth_Sandstone=Gładki piaskowiec
|
||||
Smooth_Sandstone_Slab=Gładka płyta z piaskowca
|
||||
Smooth_Sandstone_Stair=Gładkie schody z piaskowca
|
||||
Snow_Block=Blok śniegu
|
||||
Snow_Layer=Warstwa śniegu
|
||||
Soul_Sand=Piasek dusz
|
||||
Sponge=Gąbka
|
||||
Spruce_Bark=Świerkowa Kora
|
||||
Spruce_Bark_Slab=Płyta z kory świerkowej
|
||||
Spruce_Bark_Stair=Schody z kory świerkowej
|
||||
Spruce_Button=Przycisk Świerk
|
||||
Spruce_Fence=Płot świerkowy
|
||||
Spruce_Fence_Gate=Świerkowa brama ogrodzeniowa
|
||||
Spruce_Leaves=Świerkowe Liście
|
||||
Spruce_Log=Świerk
|
||||
Spruce=Świerk
|
||||
Spruce_Pressure_Plate=Świerkowa płyta dociskowa
|
||||
Spruce_Sapling_Flower_Pot=Doniczka ze świerkowym drzewkiem
|
||||
Spruce_Sapling=Sadzonka Świerka
|
||||
Spruce_Slab=Płyta świerkowa
|
||||
Spruce_Stair=Świerkowe Schody
|
||||
Spruce_Stair=Świerkowe Schody
|
||||
Spruce_Trapdoor=Świerkowa Klapa
|
||||
Sticky_Piston=Lepki tłok
|
||||
Stone=Kamień
|
||||
Stone_Brick=Kamienna cegła
|
||||
Stone_Brick_Carved=Cegła rzeźbiona w kamieniu
|
||||
Stone_Brick_Cracked=Pęknięty kamień
|
||||
Stone_Brick_Slab=Płyta z cegły kamiennej
|
||||
Stone_Brick_Stair=Kamienne schody z cegły
|
||||
Stone_Brick_Stair=Kamienne schody z cegły
|
||||
Stone_Brick_Wall=Kamienny mur z cegły
|
||||
Stone_Button=Kamienny Guzik
|
||||
Stone_Pressure_Plate=Kamienna płyta dociskowa
|
||||
Stone_Slab=Kamienna płyta
|
||||
Stone_Stair=Kamienne Schody
|
||||
Sugar_Canes=Trzcina cukrowa
|
||||
Sunflower=Słonecznik
|
||||
Tall_Grass=Wysoka trawa
|
||||
Terracotta=Terakota
|
||||
Torch=Pochodnia
|
||||
Trapdoor=Klapa w podłodze
|
||||
Trapped_Chest=Kłopoty z klatką piersiową, bóle w klatce piersiowej
|
||||
Vines=Winorośl
|
||||
Void=Unieważnić
|
||||
Waterlily=Lilia wodna
|
||||
Waterlogged_Sponge=Podmokła gąbka
|
||||
Water_Source=Źródło wody
|
||||
White_Bed=Białe łóżko
|
||||
White_Carpet=Biały dywan
|
||||
White_Concrete=Biały beton
|
||||
White_Concrete_Powder=Biały proszek betonowy
|
||||
White_Concrete_Slab=Biała płyta betonowa
|
||||
White_Concrete_Stair=Schody z białego betonu
|
||||
White_Glass_Pane=Biała tafla szkła
|
||||
White_Glazed_Terracotta=Terakota biała
|
||||
White_Shulker_Box=Białe pudełko Shulkera
|
||||
White_Stained_Glass=Białe witraże
|
||||
White_Stained_Glass_Pane=Biała witraż
|
||||
White_Terracotta=Biała terakota
|
||||
White_Tulip_Flower_Pot=Doniczka z białego tulipana
|
||||
White_Tulip=Biały tulipan
|
||||
Wither_Skeleton_Skull=Wither Skeleton Skull
|
||||
Wool=Wełna
|
||||
Yellow_Bed=Żółte łóżko
|
||||
Yellow_Carpet=Żółty dywan
|
||||
Yellow_Concrete=Żółty beton
|
||||
Yellow_Concrete_Powder=Żółty proszek betonowy
|
||||
Yellow_Concrete_Slab=Żółta płyta betonowa
|
||||
Yellow_Concrete_Stair=Żółte schody betonowe
|
||||
Yellow_Glazed_Terracotta=Żółta szkliwiona terakota
|
||||
Yellow_Shulker_Box=Żółte pudełko Shulkera
|
||||
Yellow_Stained_Glass=Żółte witraże
|
||||
Yellow_Stained_Glass_Pane=Żółta witraż
|
||||
Yellow_Terracotta=Żółta terakota
|
||||
Yellow_Wool=Żółta wełna
|
||||
Zombie_Head=Głowa Zombie
|
|
@ -0,0 +1,657 @@
|
|||
Acacia_Bark=Кора акации
|
||||
Acacia_Bark_Slab=Плита коры акации
|
||||
Acacia_Bark_Stair=Лестница из коры акации
|
||||
Acacia_Button=Акация Баттон
|
||||
Acacia_Fence=Акация Забор
|
||||
Acacia_Fence_Gate=Ворота акации
|
||||
Acacia_Leaves=Листья акации
|
||||
Acacia=Акация
|
||||
Acacia_Plank=Акация Планка
|
||||
Acacia_Pressure_Plate=Прижимная плита акации
|
||||
Acacia_Sapling_Flower_Pot=Цветочный горшок саженца акации
|
||||
Acacia_Sapling=Саженец акации
|
||||
Acacia_Slab=Плита Акации
|
||||
Acacia_Stair=Лестница акации
|
||||
Acacia_Trapdoor=Акация Trapdoor
|
||||
Activator_Rail=Активатор Рейл
|
||||
Allium_Flower_Pot=Allium Цветочный горшок
|
||||
Andesite=Андезит
|
||||
Andesite_Slab=Андезитовая плита
|
||||
Andesite_Stair=Андезитовая лестница
|
||||
Andesite_Wall=Андезитовая стена
|
||||
Anvil=Наковальня
|
||||
Azure_Bluet_Flower_Pot=Лазурный Блют цветочный горшок
|
||||
Azure_Bluet=Лазурный Блют
|
||||
Barrier=барьерный
|
||||
Bed_Red=Красная кровать
|
||||
Bedrock=бедрок
|
||||
Bell=Колокол
|
||||
Birch_Bark=Березовая кора
|
||||
Birch_Bark_Slab=Берестяная плита
|
||||
Birch_Bark_Stair=Лестница из бересты
|
||||
Birch_Button=Березовая пуговица
|
||||
Birch_Door=Березовая дверь
|
||||
Birch_Fence=Березовый Забор
|
||||
Birch_Fence_Gate=Березовые ворота
|
||||
Birch_Leaves=Листья березы
|
||||
Birch=березовый
|
||||
Birch_Plank=Березовая доска
|
||||
Birch_Pressure_Plate=Прижимная плита березы
|
||||
Birch_Sapling_Flower_Pot=Цветочный горшок
|
||||
Birch_Sapling=Саженец березы
|
||||
Birch_Slab=Березовая плита
|
||||
Birch_Stair=Березовая лестница
|
||||
Birch_Trapdoor=Березовый Люк
|
||||
Black_Bed=Черная кровать
|
||||
Black_Carpet=Черный ковер
|
||||
Black_Concrete=Черный бетон
|
||||
Black_Concrete_Powder=Черный бетонный порошок
|
||||
Black_Concrete_Slab=Черная бетонная плита
|
||||
Black_Concrete_Stair=Черная бетонная лестница
|
||||
Black_Glazed_Terracotta=Черная глазурованная терракота
|
||||
Black_Shulker_Box=Черная шулькерная шкатулка
|
||||
Black_Stained_Glass=Черный витраж
|
||||
Black_Stained_Glass_Pane=Черное витражное стекло
|
||||
Black_Terracotta=Черная терракота
|
||||
Black_Wool=Черная шерсть
|
||||
Blue_Bed=Синяя кровать
|
||||
Blue_Carpet=Синий ковер
|
||||
Blue_Concrete=Синий бетон
|
||||
Blue_Concrete_Powder=Синий бетонный порошок
|
||||
Blue_Concrete_Slab=Синяя бетонная плита
|
||||
Blue_Concrete_Stair=Голубая бетонная лестница
|
||||
Blue_Glazed_Terracotta=Голубая глазурованная терракота
|
||||
Blue_Orchid_Flower_Pot=Голубая орхидея
|
||||
Blue_Orchid=Голубая Орхидея
|
||||
Blue_Shulker_Box=Синяя шулькерная коробка
|
||||
Blue_Stained_Glass=Синий витраж
|
||||
Blue_Stained_Glass_Pane=Синяя витражная панель
|
||||
Blue_Terracotta=Голубая терракота
|
||||
Blue_Wool=Голубая шерсть
|
||||
Bone_Block=Костный блок
|
||||
Bookshelf=Книжная полка
|
||||
Brewing_Stand=Пивоваренный стенд
|
||||
Brick_Block=Кирпичный Блок
|
||||
Brick_Slab=Кирпичная плита
|
||||
Brick_Stair=Кирпичная лестница
|
||||
Brick_Wall=Кирпичная стена
|
||||
Brown_Bed=Коричневая кровать
|
||||
Brown_Carpet=Коричневый ковер
|
||||
Brown_Concrete=Коричневый бетон
|
||||
Brown_Concrete_Powder=Коричневый бетонный порошок
|
||||
Brown_Concrete_Slab=Коричневая бетонная плита
|
||||
Brown_Concrete_Stair=Лестница из коричневого бетона
|
||||
Brown_Glazed_Terracotta=Коричневая глазурованная терракота
|
||||
Brown_Mushroom=Коричневый гриб
|
||||
Brown_Mushroom_Flower_Pot=Коричневый грибной цветочный горшок
|
||||
Brown_Shulker_Box=Коричневая шулькерная коробка
|
||||
Brown_Stained_Glass=Коричневый витраж
|
||||
Brown_Stained_Glass_Pane=Браун Витраж
|
||||
Brown_Terracotta=Коричневая терракота
|
||||
Brown_Wool=Коричневая шерсть
|
||||
Burning_Furnace=Горящая Печь
|
||||
Cactus=Кактус
|
||||
Cactus_Flower_Pot=Кактус Цветочный горшок
|
||||
Cake=Торт
|
||||
Cauldron=Котелок
|
||||
Chest=Грудь
|
||||
Chiseled_Quartz_Block=Точеный кварцевый блок
|
||||
Chiseled_Red_Sandstone=Точеный красный песчаник
|
||||
Chorus_Flower=Цветок хора
|
||||
Chorus_Plant_Stem=Стебель хоруса
|
||||
Clay=Глина
|
||||
Coal_Block=Блок угля
|
||||
Coal_Ore=Угольная руда
|
||||
Coarse_Dirt=Грубая Грязь
|
||||
Cobblestone=булыжник
|
||||
Cobblestone_Slab=Плита булыжника
|
||||
Cobblestone_Stair=Лестница из булыжника
|
||||
Cobblestone_Wall=Стена булыжника
|
||||
Cobweb=Паутина
|
||||
Command_Block=Блок команд
|
||||
Cracked_Stone_Brick_Slab=Трещины каменная кирпичная плита
|
||||
Cracked_Stone_Brick_Stair=Лестница из потрескавшегося кирпича
|
||||
Crafting_Table=Верстак
|
||||
Creeper_Head=Рептилия
|
||||
Cut_Red_Sandstone=Вырезать красный песчаник
|
||||
Cyan_Bed=Голубая кровать
|
||||
Cyan_Carpet=Голубой ковер
|
||||
Cyan_Concrete=Голубой бетон
|
||||
Cyan_Concrete_Powder=Голубой бетонный порошок
|
||||
Cyan_Concrete_Slab=Голубая бетонная плита
|
||||
Cyan_Concrete_Stair=Голубая бетонная лестница
|
||||
Cyan_Glazed_Terracotta=Голубая глазурованная терракота
|
||||
Cyan_Shulker_Box=Голубой Шулькер Бокс
|
||||
Cyan_Stained_Glass=Голубой Витраж
|
||||
Cyan_Stained_Glass_Pane=Голубой Витраж
|
||||
Cyan_Terracotta=Голубая терракота
|
||||
Cyan_Wool=Голубая шерсть
|
||||
Dandelion=Одуванчик
|
||||
Dandelion_Flower_Pot=Цветочный горшок одуванчика
|
||||
Dark_Oak=Темный дуб
|
||||
Dark_Oak_Bark=Кора темного дуба
|
||||
Dark_Oak_Bark_Slab=Плита из коры темного дуба
|
||||
Dark_Oak_Bark_Stair=Лестница из темного дуба
|
||||
Dark_Oak_Button=Пуговица из темного дуба
|
||||
Dark_Oak_Fence=Темный дубовый забор
|
||||
Dark_Oak_Fence_Gate=Ворота Темного Дуба
|
||||
Dark_Oak_Leaves=Темные листья дуба
|
||||
Dark_Oak_Plank=Доска Темного Дуба
|
||||
Dark_Oak_Pressure_Plate=Нажимная плита темного дуба
|
||||
Dark_Oak_Sapling_Flower_Pot=Цветочный горшок Саженец темного дуба
|
||||
Dark_Oak_Sapling=Саженец темного дуба
|
||||
Dark_Oak_Slab=Плита Темного Дуба
|
||||
Dark_Oak_Stair=Лестница из темного дуба
|
||||
Dark_Oak_Trapdoor=Темный Дуб Ловушка
|
||||
Dark_Prismarine_Slab=Темная Присмариновая Плита
|
||||
Dark_Prismarine_Stair=Темная Присмаринская Лестница
|
||||
Daylight_Sensor=Датчик дневного света
|
||||
Dead_Bush=Мертвый куст
|
||||
Dead_Bush_Flower_Pot=Мертвый куст цветочный горшок
|
||||
Dead_Chorus_Flower=Цветок мертвого хора
|
||||
Detector_Rail=Детектор рельс
|
||||
Diamond_Block=Алмазный блок
|
||||
Diamond_Ore=Алмазная руда
|
||||
Diorite=Диорит
|
||||
Diorite_Slab=Диоритовая плита
|
||||
Diorite_Stair=Диоритная лестница
|
||||
Diorite_Wall=Диорит Стена
|
||||
Dirt=Грязь
|
||||
Disabled_Hopper=Бункер для инвалидов
|
||||
Disabled_Side_Hopper=Боковой бункер для инвалидов
|
||||
Dispenser=Распылитель
|
||||
Double_Acacia_Bark_Slab=Двойная плита коры акации
|
||||
Double_Acacia_Slab=Двойная плита акации
|
||||
Double_Andesite_Slab=Двойная плита андезита
|
||||
Double_Birch_Bark_Slab=Двойная плита из бересты
|
||||
Double_Birch_Slab=Двойная березовая плита
|
||||
Double_Black_Concrete_Slab=Двойная черная бетонная плита
|
||||
Double_Blue_Concrete_Slab=Двойная синяя бетонная плита
|
||||
Double_Brick_Slab=Двойная Кирпичная Плита
|
||||
Double_Brown_Concrete_Slab=Двойная коричневая бетонная плита
|
||||
Double_Cobblestone_Slab=Двойная плита булыжника
|
||||
Double_Cracked_Stone_Brick_Slab=Плита с двойными трещинами из каменного кирпича
|
||||
Double_Cyan_Concrete_Slab=Двойная голубая бетонная плита
|
||||
Double_Dark_Oak_Bark_Slab=Двойная темная плита коры дуба
|
||||
Double_Dark_Oak_Slab=Двойная темная дубовая плита
|
||||
Double_Dark_Prismarine_Slab=Двойная темная призмариновая плита
|
||||
Double_Diorite_Slab=Двойная Диоритовая Плита
|
||||
Double_End_Stone_Brick_Slab=Каменная кирпичная плита с двойным концом
|
||||
Double_Gold_Block_Slab=Двойной золотой блок плиты
|
||||
Double_Granite_Slab=Двойная гранитная плита
|
||||
Double_Green_Concrete_Slab=Двойная зеленая бетонная плита
|
||||
Double_Grey_Concrete_Slab=Двойная серая бетонная плита
|
||||
Double_Iron_Block_Slab=Двойная железобетонная плита
|
||||
Double_Jungle_Bark_Slab=Двойная плита коры джунглей
|
||||
Double_Jungle_Slab=Двойная плита джунглей
|
||||
Double_Lapis_Lazuli_Slab=Двойная плита лазурита
|
||||
Double_Light_Blue_Concrete_Slab=Двойная светло-голубая бетонная плита
|
||||
Double_Light_Grey_Concrete_Slab=Двойная светло-серая бетонная плита
|
||||
Double_Lime_Concrete_Slab=Двойная известь бетонная плита
|
||||
Double_Magenta_Concrete_Slab=Двойная пурпурная бетонная плита
|
||||
Double_Mossy_Stone_Brick_Slab=Двойная Мшистая Каменная Кирпичная Плита
|
||||
Double_Mossy_Stone_Slab=Двойная Мшистая Каменная Плита
|
||||
Double_Nether_Brick_Slab=Кирпичная Плита Двойной Пустоты
|
||||
Double_Oak_Bark_Slab=Двойная плита коры дуба
|
||||
Double_Oak_Slab=Двойная плита дуба
|
||||
Double_Orange_Concrete_Slab=Двойная оранжевая бетонная плита
|
||||
Double_Pink_Concrete_Slab=Двойная розовая бетонная плита
|
||||
Double_Polished_Andesite_Slab=Двойная полированная плита андезита
|
||||
Double_Polished_Diorite_Slab=Двойная полированная плита диорита
|
||||
Double_Polished_Granite_Slab=Двойная полированная гранитная плита
|
||||
Double_Polished_Stone_Slab=Двойная полированная каменная плита
|
||||
Double_Prismarine_Brick_Slab=Двойная Присмаринская Кирпичная Плита
|
||||
Double_Prismarine_Slab=Двойная Присмаринская Плита
|
||||
Double_Purple_Concrete_Slab=Двойная фиолетовая бетонная плита
|
||||
Double_Purpur_Slab=Двойная Пурпурная Плита
|
||||
Double_Quartz_Slab=Двойная кварцевая плита
|
||||
Double_Red_Concrete_Slab=Двойная красная бетонная плита
|
||||
Double_Red_Nether_Brick_Slab=Двойная красная кирпичная плита Пустоты
|
||||
Double_Red_Sandstone_Slab=Двойная плита из красного песчаника
|
||||
Double_Sandstone_Slab=Двойная плита из песчаника
|
||||
Double_Smooth_Quartz_Slab=Двойная гладкая кварцевая плита
|
||||
Double_Smooth_Red_Sandstone_Slab=Двойная гладкая плита из красного песчаника
|
||||
Double_Smooth_Sandstone_Slab=Двойная гладкая плита из песчаника
|
||||
Double_Spruce_Bark_Slab=Двойная еловая кора
|
||||
Double_Spruce_Slab=Двойная еловая плита
|
||||
Double_Stone_Brick_Slab=Двойная каменная кирпичная плита
|
||||
Double_Stone_Slab=Двойная каменная плита
|
||||
Double_Tallgrass=Двойной Талльграс
|
||||
Double_White_Concrete_Slab=Двойная белая бетонная плита
|
||||
Double_Yellow_Concrete_Slab=Двойная желтая бетонная плита
|
||||
Dragon_Egg=Яйцо дракона
|
||||
Dropper=Пипетка
|
||||
Emerald_Block=Изумрудный блок
|
||||
Emerald_Ore=Изумрудная руда
|
||||
Enchanting_Table=Феерический стол
|
||||
Ender_Chest=Сундук Эндер
|
||||
End_Portal=Конец портала
|
||||
End_Portal_Frame=Конец портала
|
||||
End_Portal_Frame_with_Eye_of_Ender=Концевая рама портала с глазом Эндера
|
||||
End_Rod=Конец стержня
|
||||
End_Stone=Конец Камень
|
||||
End_Stone_Brick=Конец Каменный Кирпич
|
||||
End_Stone_Brick_Slab=Конец Каменная Кирпичная Плита
|
||||
End_Stone_Brick_Stair=Лестница из каменного кирпича
|
||||
End_Stone_Brick_Wall=Конец каменная кирпичная стена
|
||||
Eternal_Fire=Вечный Огонь
|
||||
Faceless_Pumpkin=Безликая тыква
|
||||
Farmland=Приусадебный участок
|
||||
Fence=Ограда
|
||||
Fern_Flower_Pot=Папоротник Цветочный горшок
|
||||
Fern=Папоротник
|
||||
Fire=Пожар
|
||||
Flower_Pot=Цветочный горшок
|
||||
Flowing_Lava=Текущая лава
|
||||
Flowing_Nether_Lava=Плавная Пустота Лава
|
||||
Flowing_River_Water=Проточная речная вода
|
||||
Flowing_Water=Текущая вода
|
||||
Frosted_Ice=Матовый лед
|
||||
Furnace=Печь
|
||||
Glass=Стекло
|
||||
Glass_Pane=Стеклянная панель
|
||||
Glowstone=Светящийся камень
|
||||
Gold_Block=Золотой блок
|
||||
Gold_Block_Slab=Золотая плита
|
||||
Gold_Block_Stair=Золотая лестница
|
||||
Gold_Ore=Золотая руда
|
||||
Granite=Гранит
|
||||
Granite_Slab=Гранитная плита
|
||||
Granite_Stair=Гранитная лестница
|
||||
Granite_Wall=Гранитная стена
|
||||
Grass=Трава
|
||||
Grass_Block=Блок травы
|
||||
Grass_Dry=Трава сухая
|
||||
Grass_Path=Трава путь
|
||||
Gravel=галечник
|
||||
Green_Bed=Зеленая Кровать
|
||||
Green_Carpet=Зеленый ковер
|
||||
Green_Concrete=Зеленый Бетон
|
||||
Green_Concrete_Powder=Зеленый бетонный порошок
|
||||
Green_Concrete_Slab=Зеленая бетонная плита
|
||||
Green_Concrete_Stair=Зеленая бетонная лестница
|
||||
Green_Glazed_Terracotta=Зеленая глазурованная терракота
|
||||
Green_Shulker_Box=Зеленая шулькерная коробка
|
||||
Green_Stained_Glass=Зеленый витраж
|
||||
Green_Stained_Glass_Pane=Зеленый Витраж
|
||||
Green_Terracotta=Зеленая терракота
|
||||
Green_Wool=Зеленая шерсть
|
||||
Grey_Bed=Серая кровать
|
||||
Grey_Carpet=Серый ковер
|
||||
Grey_Concrete=Серый бетон
|
||||
Grey_Concrete_Powder=Серый бетонный порошок
|
||||
Grey_Concrete_Slab=Серая бетонная плита
|
||||
Grey_Concrete_Stair=Серая бетонная лестница
|
||||
Grey_Glazed_Terracotta=Серая глазурованная терракота
|
||||
Grey_Shulker_Box=Серая шулькерная коробка
|
||||
Grey_Stained_Glass=Серый витраж
|
||||
Grey_Stained_Glass_Pane=Серая витражная панель
|
||||
Grey_Terracotta=Серая терракота
|
||||
Grey_Wool=Серая шерсть
|
||||
Hay_Bale=Стог сена
|
||||
Hopper=хоппер
|
||||
Huge_Brown_Mushroom_All-Faces_Stem=Огромный коричневый грибной стебель анфаса
|
||||
Huge_Brown_Mushroom_Block=Огромный коричневый грибной блок
|
||||
Huge_Brown_Mushroom_Stem=Огромный коричневый грибной стебель
|
||||
Huge_Red_Mushroom_All-Faces_Stem=Огромный красный грибной анфас
|
||||
Huge_Red_Mushroom_Block=Огромный красный грибной блок
|
||||
Huge_Red_Mushroom_Stem=Огромный красный грибной стебель
|
||||
Human_Head=Человеческая голова
|
||||
Hydrated_Farmland=Гидратированные сельскохозяйственные угодья
|
||||
Ice=Лед
|
||||
Ice_Slab=Ледяная плита
|
||||
Ice_Stair=Лестничная Лестница
|
||||
Infested_Chiseled_Stone_Brick=Зараженный точеный каменный кирпич
|
||||
Infested_Cobblestone=Зараженный булыжник
|
||||
Infested_Cracked_Stone_Brick=Зараженный треснувший каменный кирпич
|
||||
Infested_Mossy_Stone_Brick=Зараженный Мшистый Каменный Кирпич
|
||||
Infested_Stone=Зараженный камень
|
||||
Infested_Stone_Brick=Зараженный каменный кирпич
|
||||
Inverted_Daylight_Sensor=Инвертированный датчик дневного света
|
||||
Iron_Bar=Железный слиток
|
||||
Iron_Block=Железный блок
|
||||
Iron_Block_Slab=Железобетонная плита
|
||||
Iron_Block_Stair=Лестница из железного блока
|
||||
Iron_Door=Железная дверь
|
||||
Iron_Ore=Железная руда
|
||||
Iron_Trapdoor=Железная Люк
|
||||
Item_Frame=Рамка товара
|
||||
Jack_o_Lantern=Джек о фонарь
|
||||
Jukebox=Проигрыватель-автомат
|
||||
Jungle_Bark=Кора джунглей
|
||||
Jungle_Bark_Slab=Плита коры джунглей
|
||||
Jungle_Bark_Stair=Лестница из коры джунглей
|
||||
Jungle_Button=Кнопка джунглей
|
||||
Jungle_Fence=Забор джунглей
|
||||
Jungle_Fence_Gate=Ворота Забора Джунглей
|
||||
Jungle_Leaves=Листья джунглей
|
||||
Jungle=Джунгли
|
||||
Jungle_Plank=Планка джунглей
|
||||
Jungle_Pressure_Plate=Прижимная плита джунглей
|
||||
Jungle_Sapling_Flower_Pot=Цветочный горшок саженца джунглей
|
||||
Jungle_Sapling=Саженец джунглей
|
||||
Jungle_Slab=Плита джунглей
|
||||
Jungle_Stair=Лестница в джунглях
|
||||
Jungle_Trapdoor=Люк джунглей
|
||||
Ladder=Трап
|
||||
Lapis_Lazuli_Block=Блок лазурита
|
||||
Lapis_Lazuli_Ore=Лазурит руда
|
||||
Lapis_Lazuli_Slab=Плита лазурита
|
||||
Lapis_Lazuli_Stair=Лестница из лазурита
|
||||
Large_Fern=Большой папоротник
|
||||
Lava_Source=Источник лавы
|
||||
Leaves=Уходит
|
||||
Lever=Рычаг
|
||||
Light_Blue_Bed=Голубая кровать
|
||||
Light_Blue_Carpet=Голубой ковер
|
||||
Light_Blue_Concrete=Голубой бетон
|
||||
Light_Blue_Concrete_Powder=Светло-синий бетонный порошок
|
||||
Light_Blue_Concrete_Slab=Светло-голубая бетонная плита
|
||||
Light_Blue_Concrete_Stair=Голубая бетонная лестница
|
||||
Light_Blue_Glazed_Terracotta=Голубая глазурованная терракота
|
||||
Light_Blue_Shulker_Box=Голубая шулькерная коробка
|
||||
Light_Blue_Stained_Glass=Светло-голубой витраж
|
||||
Light_Blue_Stained_Glass_Pane=Светло-голубой Витраж
|
||||
Light_Blue_Terracotta=Голубая терракота
|
||||
Light_Blue_Wool=Голубая шерсть
|
||||
Light_Grey_Bed=Светло-серая кровать
|
||||
Light_Grey_Carpet=Светло-серый ковер
|
||||
Light_Grey_Concrete=Светло-серый бетон
|
||||
Light_Grey_Concrete_Powder=Светло-серый бетонный порошок
|
||||
Light_Grey_Concrete_Slab=Светло-серая бетонная плита
|
||||
Light_Grey_Concrete_Stair=Светло-серая бетонная лестница
|
||||
Light_Grey_Glazed_Terracotta=Светло-серая глазурованная терракота
|
||||
Light_Grey_Shulker_Box=Светло-серая шулькерная коробка
|
||||
Light_Grey_Stained_Glass=Светло-серый витраж
|
||||
Light_Grey_Stained_Glass_Pane=Светло-серый Витраж
|
||||
Light_Grey_Terracotta=Светло-серая терракота
|
||||
Light_Grey_Wool=Светло-серая шерсть
|
||||
Lilac=Сирень
|
||||
Lime_Bed=Лайм кровать
|
||||
Lime_Carpet=Лайм ковер
|
||||
Lime_Concrete=Известь Бетон
|
||||
Lime_Concrete_Powder=Известь бетонный порошок
|
||||
Lime_Concrete_Slab=Известь бетонная плита
|
||||
Lime_Concrete_Stair=Лестничная бетонная лестница
|
||||
Lime_Glazed_Terracotta=Известь глазированная терракота
|
||||
Lime_Shulker_Box=Лайм Шулкер Бокс
|
||||
Lime_Stained_Glass=Витраж извести
|
||||
Lime_Stained_Glass_Pane=Витраж извести
|
||||
Lime_Terracotta=Лайм Терракотовый
|
||||
Lime_Wool=Лайм шерсть
|
||||
Lit_Redstone_Ore=Освещенная Редстоун Руда
|
||||
Magenta_Bed=Пурпурная кровать
|
||||
Magenta_Carpet=Пурпурный ковер
|
||||
Magenta_Concrete=Пурпурный бетон
|
||||
Magenta_Concrete_Powder=Пурпурный бетонный порошок
|
||||
Magenta_Concrete_Slab=Пурпурная бетонная плита
|
||||
Magenta_Concrete_Stair=Пурпурная бетонная лестница
|
||||
Magenta_Glazed_Terracotta=Пурпурная глазурованная терракота
|
||||
Magenta_Shulker_Box=Пурпурная шулькерная коробка
|
||||
Magenta_Stained_Glass=Пурпурный витраж
|
||||
Magenta_Stained_Glass_Pane=Пурпурный витраж
|
||||
Magenta_Terracotta=Пурпурный терракота
|
||||
Magenta_Wool=Пурпурный шерсть
|
||||
Magma_Block=Магма Блок
|
||||
Mature_Beetroot_Plant=Зрелый свекольный завод
|
||||
Mature_Carrot_Plant=Зрелый Морковный Завод
|
||||
Mature_Cocoa_Pod=Зрелый какао
|
||||
Mature_Melon_Stem=Зрелая дыня Стебель
|
||||
Mature_Nether_Wart=Зрелая Пустоверть Бородавка
|
||||
Mature_Potato_Plant=Зрелый картофельный завод
|
||||
Mature_Pumpkin_Stem=Зрелый стебель тыквы
|
||||
Mature_Wheat_Plant=Зрелая пшеница
|
||||
Melon=Дыня
|
||||
Mob_Spawner=Моб Спавнер
|
||||
Mossy_Cobblestone=Мшистый булыжник
|
||||
Mossy_Cobblestone_Wall=Мшистая булыжная стена
|
||||
Mossy_Stone_Brick=Мшистый Каменный Кирпич
|
||||
Mossy_Stone_Brick_Slab=Мшистая каменная кирпичная плита
|
||||
Mossy_Stone_Brick_Stair=Лестница из мшистого камня
|
||||
Mossy_Stone_Brick_Wall=Мшистая каменная кирпичная стена
|
||||
Mossy_Stone_Slab=Мшистая каменная плита
|
||||
Mossy_Stone_Stair=Мшистая каменная лестница
|
||||
Mycelium=Мицелий
|
||||
Nether_Brick_Block=Пустотелый кирпичный блок
|
||||
Nether_Brick_Fence=Забор Пустоты
|
||||
Nether_Brick_Fence_Gate=Ворота Забора Пустоты
|
||||
Nether_Brick_Slab=Кирпичная плита Пустоты
|
||||
Nether_Brick_Stair=Лестница Пустоты
|
||||
Nether_Brick_Wall=Пустотная кирпичная стена
|
||||
Nether_Lava_Source=Источник лавы Пустоты
|
||||
Nether_Portal=Портал Пустоты
|
||||
Nether_Quartz_Ore=Кварцевая руда Пустоты
|
||||
Nether_Wart_Block=Блок Пустоты
|
||||
Note_Block=Блокнот
|
||||
Oak=Дуб
|
||||
Oak_Bark=Кора дуба
|
||||
Oak_Bark_Slab=Плита из коры дуба
|
||||
Oak_Bark_Stair=Лестница из дубовой коры
|
||||
Oak_Button=Дубовая Пуговица
|
||||
Oak_Door=Дубовая дверь
|
||||
Oak_Fence_Gate=Дубовые ворота
|
||||
Oak_Ladder=Дубовая Лестница
|
||||
Oak_Plank=Дубовая доска
|
||||
Oak_Pressure_Plate=Прижимная плита дуба
|
||||
Oak_Sapling=Саженец дуба
|
||||
Oak_Sapling_Flower_Pot=Цветочный горшок Саженец дуба
|
||||
Oak_Slab=Дубовая плита
|
||||
Oak_Stair=Дубовая лестница
|
||||
Oak_Wall_Sign=Дубовая Стена
|
||||
Observer=наблюдатель
|
||||
Obsidian=Обсидиан
|
||||
Obsidian_Glass_Pane=Обсидиановое стекло
|
||||
Obsidian_Glass_Slab=Обсидиановая стеклянная плита
|
||||
Obsidian_Glass_Stair=Обсидиановая стеклянная лестница
|
||||
Obsidian_Slab=Обсидиановая плита
|
||||
Obsidian_Stair=Обсидиановая лестница
|
||||
Orange_Bed=Оранжевая кровать
|
||||
Orange_Carpet=Оранжевый ковер
|
||||
Orange_Concrete=Оранжевый бетон
|
||||
Orange_Concrete_Powder=Оранжевый бетонный порошок
|
||||
Orange_Concrete_Slab=Оранжевая бетонная плита
|
||||
Orange_Concrete_Stair=Оранжевая бетонная лестница
|
||||
Orange_Glazed_Terracotta=Терракота с глазурью оранжевого цвета
|
||||
Orange_Shulker_Box=Оранжевая шулькерная коробка
|
||||
Orange_Stained_Glass=Оранжевый витраж
|
||||
Orange_Stained_Glass_Pane=Оранжевая витражная панель
|
||||
Orange_Terracotta=Апельсиновая терракота
|
||||
Orange_Tulip_Flower_Pot=Оранжевый тюльпан Цветочный горшок
|
||||
Orange_Tulip=Оранжевый тюльпан
|
||||
Orange_Wool=Оранжевая шерсть
|
||||
Packed_Ice=Упакованный Лед
|
||||
Peony=Пион
|
||||
Pillar_Quartz_Block=Столб кварцевый блок
|
||||
Pink_Bed=Розовая Кровать
|
||||
Pink_Carpet=Розовый ковер
|
||||
Pink_Concrete=Розовый бетон
|
||||
Pink_Concrete_Powder=Розовый бетонный порошок
|
||||
Pink_Concrete_Slab=Розовая бетонная плита
|
||||
Pink_Concrete_Stair=Розовая бетонная лестница
|
||||
Pink_Glazed_Terracotta=Розовая глазурованная терракота
|
||||
Pink_Shulker_Box=Розовая шулькерная коробка
|
||||
Pink_Stained_Glass=Розовые витражи
|
||||
Pink_Stained_Glass_Pane=Розовый витраж
|
||||
Pink_Terracotta=Розовая терракота
|
||||
Pink_Tulip_Flower_Pot=Розовый тюльпан Цветочный горшок
|
||||
Pink_Tulip=Розовый тюльпан
|
||||
Pink_Wool=Розовая шерсть
|
||||
Piston=Поршень
|
||||
Podzol=Подзолообразование
|
||||
Polished_Andesite=Полированный андезит
|
||||
Polished_Andesite_Slab=Полированная плита андезита
|
||||
Polished_Andesite_Stair=Полированная андезитовая лестница
|
||||
Polished_Diorite=Полированный диорит
|
||||
Polished_Diorite_Slab=Полированная плита из диорита
|
||||
Polished_Diorite_Stair=Полированная диоритовая лестница
|
||||
Polished_Granite=Полированный гранит
|
||||
Polished_Granite_Slab=Полированная гранитная плита
|
||||
Polished_Granite_Stair=Полированная гранитная лестница
|
||||
Polished_Stone=Полированный камень
|
||||
Poppy=Мак
|
||||
Poppy_Flower_Pot=Мак цветочный горшок
|
||||
Powered_Rail=Приведенный в действие рельс
|
||||
Prismarine_Brick=Присмаринский кирпич
|
||||
Prismarine_Brick_Slab=Присмарная кирпичная плита
|
||||
Prismarine_Brick_Stair=Присмаринская кирпичная лестница
|
||||
Prismarine_Dark=Присмарин Темный
|
||||
Prismarine_Slab=Присмарная плита
|
||||
Prismarine_Stair=Присмарная лестница
|
||||
Prismarine_Wall=Присмарин Стена
|
||||
Pumpkin=Тыква
|
||||
Purple_Bed=Фиолетовая кровать
|
||||
Purple_Carpet=Фиолетовый ковер
|
||||
Purple_Concrete=Фиолетовый бетон
|
||||
Purple_Concrete_Powder=Фиолетовый бетонный порошок
|
||||
Purple_Concrete_Slab=Фиолетовая бетонная плита
|
||||
Purple_Concrete_Stair=Фиолетовая бетонная лестница
|
||||
Purple_Glazed_Terracotta=Фиолетовая глазурованная терракота
|
||||
Purple_Shulker_Box=Фиолетовая шулькерная коробка
|
||||
Purple_Stained_Glass=Фиолетовый витраж
|
||||
Purple_Stained_Glass_Pane=Фиолетовый витраж
|
||||
Purple_Terracotta=Фиолетовая терракота
|
||||
Purple_Wool=Фиолетовая шерсть
|
||||
Purpur_Block=Пурпур Блок
|
||||
Purpur_Pillar=Пурпурный столб
|
||||
Purpur_Slab=Пурпур Плита
|
||||
Purpur_Stair=Лестница Пурпур
|
||||
Quartz_Block=Кварцевый блок
|
||||
Quartz_Slab=Кварцевая плита
|
||||
Quartz_Stair=Кварцевая лестница
|
||||
Rail=Рельсовый
|
||||
Realm_Barrier=Барьер Царства
|
||||
Red_Bed=Красная кровать
|
||||
Red_Carpet=Красный ковер
|
||||
Red_Concrete=Красный бетон
|
||||
Red_Concrete_Powder=Красный бетонный порошок
|
||||
Red_Concrete_Slab=Красная бетонная плита
|
||||
Red_Concrete_Stair=Красная бетонная лестница
|
||||
Red_Glazed_Terracotta=Красная глазурованная терракота
|
||||
Red_Mushroom=Красный гриб
|
||||
Red_Mushroom_Flower_Pot=Красный грибной горшок
|
||||
Red_Nether_Brick_Block=Кирпичный блок Красной Пустоты
|
||||
Red_Nether_Brick_Fence_Gate=Кирпичные ворота забора Красной Пустоты
|
||||
Red_Nether_Brick_Fence=Кирпичный Забор Красной Пустоты
|
||||
Red_Nether_Brick_Slab=Красная кирпичная плита Пустоты
|
||||
Red_Nether_Brick_Stair=Лестница из красного кирпича
|
||||
Red_Nether_Brick_Wall=Красная Пустота Кирпичная стена
|
||||
Red_Sand=Красный песок
|
||||
Red_Sandstone=Красный песчаник
|
||||
Red_Sandstone_Slab=Плита красного песчаника
|
||||
Red_Sandstone_Stair=Лестница из красного песчаника
|
||||
Red_Sandstone_Wall=Красная стена из песчаника
|
||||
Red_Shulker_Box=Красная шулькерная коробка
|
||||
Red_Stained_Glass=Красный витраж
|
||||
Red_Stained_Glass_Pane=Красный Витраж
|
||||
Redstone=Редстоун
|
||||
Redstone_Block=Редстоун Блок
|
||||
Redstone_Comparator_(Off)=Редстоун Компаратор (выкл)
|
||||
Redstone_Comparator_(On)=Редстоун Компаратор (Вкл)
|
||||
Redstone_Lamp=Редстоун Лампа
|
||||
Redstone_Ore=Редстоун Руда
|
||||
Redstone_Repeater=Редстоун Репитер
|
||||
Redstone_Repeater_(Powered)=Редстоун Репитер (работает)
|
||||
Redstone_Torch=Редстоун Факел
|
||||
Redstone_Torch_(off)=Редстоун факел (выкл)
|
||||
Redstone_Trail=Редстоун Трейл
|
||||
Red_Terracotta=Красная терракота
|
||||
Red_Tulip_Flower_Pot=Красный тюльпан Цветочный горшок
|
||||
Red_Tulip=Красный тюльпан
|
||||
Red_Wool=Красная шерсть
|
||||
Riverwaterlogged_Sponge=Река с водой Губка
|
||||
River_Water_Source=Источник речной воды
|
||||
Rose_Bush=Розовый куст
|
||||
Sand=Песок
|
||||
Sandstone=Песчаник
|
||||
Sandstone_Carved=Резной песчаник
|
||||
Sandstone_Slab=Плита песчаника
|
||||
Sandstone_Smooth=Песчаник гладкий
|
||||
Sandstone_Stair=Лестница из песчаника
|
||||
Sandstone_Wall=Стена из песчаника
|
||||
Sea_Lantern=Морской фонарь
|
||||
Side_Hopper=Боковой бункер
|
||||
Skeleton_Skull=Скелет Черепа
|
||||
Slime_Block=Блок слизи
|
||||
Smooth_Quartz=Гладкий Кварц
|
||||
Smooth_Quartz_Slab=Гладкая кварцевая плита
|
||||
Smooth_Quartz_Stair=Гладкая кварцевая лестница
|
||||
Smooth_Red_Sandstone=Гладкий красный песчаник
|
||||
Smooth_Red_Sandstone_Slab=Гладкая плита из красного песчаника
|
||||
Smooth_Red_Sandstone_Stair=Гладкая лестница из красного песчаника
|
||||
Smooth_Sandstone=Гладкий песчаник
|
||||
Smooth_Sandstone_Slab=Гладкая плита из песчаника
|
||||
Smooth_Sandstone_Stair=Гладкая песчаная лестница
|
||||
Snow_Block=Снежная глыба
|
||||
Snow_Layer=Слой снега
|
||||
Soul_Sand=Песок души
|
||||
Sponge=Губка
|
||||
Spruce_Bark=Ель кора
|
||||
Spruce_Bark_Slab=Плита из еловой коры
|
||||
Spruce_Bark_Stair=Лестница из еловой коры
|
||||
Spruce_Button=Еловая пуговица
|
||||
Spruce_Fence=Еловый забор
|
||||
Spruce_Fence_Gate=Еловые ворота
|
||||
Spruce_Leaves=Еловые листья
|
||||
Spruce_Log=Еловая бревна
|
||||
Spruce=Ель
|
||||
Spruce_Pressure_Plate=Еловая прижимная плита
|
||||
Spruce_Sapling_Flower_Pot=Еловый Саженец Цветочный Горшок
|
||||
Spruce_Sapling=Саженец ели
|
||||
Spruce_Slab=Еловая плита
|
||||
Spruce_Stair=Еловая лестница
|
||||
Spruce_Stair=Еловая лестница
|
||||
Spruce_Trapdoor=Еловый Люк
|
||||
Sticky_Piston=Липкий Поршень
|
||||
Stone=Камень
|
||||
Stone_Brick=Каменный кирпич
|
||||
Stone_Brick_Carved=Камень Кирпич Резной
|
||||
Stone_Brick_Cracked=Каменный кирпич треснул
|
||||
Stone_Brick_Slab=Плита каменного кирпича
|
||||
Stone_Brick_Stair=Лестница из каменного кирпича
|
||||
Stone_Brick_Stair=Лестница из каменного кирпича
|
||||
Stone_Brick_Wall=Каменная кирпичная стена
|
||||
Stone_Button=Каменная кнопка
|
||||
Stone_Pressure_Plate=Каменная прижимная плита
|
||||
Stone_Slab=Каменная плита
|
||||
Stone_Stair=Каменная лестница
|
||||
Sugar_Canes=Сахарные тростники
|
||||
Sunflower=Подсолнух
|
||||
Tall_Grass=Высокая трава
|
||||
Terracotta=Терракотовый
|
||||
TNT=Тротил
|
||||
Torch=факел
|
||||
Trapdoor=Люк
|
||||
Trapped_Chest=Сундук с ловушкой
|
||||
Void=Пустота
|
||||
Waterlily=Водяная лилия
|
||||
Waterlogged_Sponge=Затопленная губка
|
||||
Water_Source=Источник воды
|
||||
White_Bed=Белая Кровать
|
||||
White_Carpet=Белый ковер
|
||||
White_Concrete=Белый бетон
|
||||
White_Concrete_Powder=Белый бетонный порошок
|
||||
White_Concrete_Slab=Белая бетонная плита
|
||||
White_Concrete_Stair=Белая бетонная лестница
|
||||
White_Glass_Pane=Белая стеклянная панель
|
||||
White_Glazed_Terracotta=Белая глазурованная терракота
|
||||
White_Shulker_Box=Белая шулькерная шкатулка
|
||||
White_Stained_Glass=Белый витраж
|
||||
White_Stained_Glass_Pane=Белая витражная панель
|
||||
White_Terracotta=Белая терракота
|
||||
White_Tulip_Flower_Pot=Белый тюльпан Цветочный горшок
|
||||
White_Tulip=Белый тюльпан
|
||||
Wither_Skeleton_Skull=Увядший скелет черепа
|
||||
Wool=шерсть
|
||||
Yellow_Bed=Желтая кровать
|
||||
Yellow_Carpet=Желтый ковер
|
||||
Yellow_Concrete=Желтый бетон
|
||||
Yellow_Concrete_Powder=Желтый бетонный порошок
|
||||
Yellow_Concrete_Slab=Желтая бетонная плита
|
||||
Yellow_Concrete_Stair=Желтая бетонная лестница
|
||||
Yellow_Glazed_Terracotta=Желтая глазурованная терракота
|
||||
Yellow_Shulker_Box=Желтая шулькерная коробка
|
||||
Yellow_Stained_Glass=Желтое витражное стекло
|
||||
Yellow_Stained_Glass_Pane=Желтое витражное стекло
|
||||
Yellow_Terracotta=Желтая терракота
|
||||
Yellow_Wool=Желтая шерсть
|
||||
Zombie_Head=Голова зомби
|
|
@ -37,6 +37,8 @@ define the name of the block mapping.
|
|||
| 3rd | string | an optional biome specific name for the block (like "biome:node_stone") |
|
||||
| 4th+ | string | block's name in the mapping (this coloumn may be repated as many times as you like) |
|
||||
|
||||
Block mapping are also referenced as palette.
|
||||
|
||||
Block Images
|
||||
------------
|
||||
|
||||
|
@ -52,3 +54,12 @@ are only used for blocks that can be rotated upside-down too, like stairs, but I
|
|||
|
||||
Hint: the MTSEdit tool can generate slab and stair images from block pictures using the `-g` option. This will only generate the
|
||||
first 4 orientation, a slab, and a mirrored verion of the original block.
|
||||
|
||||
Translations
|
||||
------------
|
||||
|
||||
The MTSEdit user interface is multilingual, but blocks.csv is not. If you want to translate block names too, you'll have to
|
||||
provide translation files in the `data` directory. These are plain text files, by the name "blocks_(lang).txt", and with
|
||||
lines each of "(1st coloumn)=(translated name)". As with blocks.csv, the lines are ended by a newline '\\n' character, '\\r'
|
||||
is optional.
|
||||
|
||||
|
|
|
@ -59,9 +59,9 @@ the format is as follows:
|
|||
| 3*X*Y*Z | X*Y*Z | rotation info (param2) |
|
||||
|
||||
To get the block ID from `param0` for a given coordinate (x,y,z), you should calculate the index param0\[(Z-z)*Z*Y + y*X + x\].
|
||||
That is right, Z axis is mirrored for some reason unknown to me. Each block ID is stored on a big endian 2 bytes, although I
|
||||
haven't seen any MTS files yet that used more than 255 block types per file. Also most files store "air" block type in the first
|
||||
type (block ID being 0), but this is not mandatory unfortunately.
|
||||
That is right, Z axis is mirrored for some reason unknown to me. THat's simply not right if you catch my drift :-) Each block ID
|
||||
is stored on a big endian 2 bytes, although I haven't seen any MTS files yet that used more than 255 block types per file. Also
|
||||
most files store "air" block type in the first type (block ID being 0), but this is not mandatory unfortunately.
|
||||
|
||||
Orientation is NOT defined in any way, there's absolutely no convention. MTSEdit however prefers to save schematics in a
|
||||
standardized way, that is, the entrance is on the South side. You can use the "Change Oriantation" icon in the editor to
|
||||
|
|
BIN
docs/mtsedit.png
Before Width: | Height: | Size: 85 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
|
@ -6,6 +6,20 @@ will ask the user for a file name. All the others print a usage to stdout.
|
|||
|
||||
See also [batch mode usage](https://gitlab.com/bztsrc/mtsedit/blob/master/docs/batch.md).
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
See [blocks.csv](https://gitlab.com/bztsrc/mtsedit/blob/master/docs/blocks.md).
|
||||
|
||||
The User Interface is translatable. It should detect your computer's language automatically, but if not, set the `LANG`
|
||||
environment variable. Supported languages: "en" English, "hu" Magyar, "es" Español, "fr" Français, "de" Deutch, "pl" Polski,
|
||||
"ru" русский. Note that block names are user provided, there's no translation for those, unless you provide translate.(lang).txt
|
||||
files.
|
||||
|
||||
```
|
||||
LANG=hu ./mtsedit monkeyisland.mts
|
||||
```
|
||||
|
||||
Interactive Mode
|
||||
----------------
|
||||
|
||||
|
@ -54,8 +68,7 @@ Main editor window:
|
|||
| arrows | select current block |
|
||||
| <kbd>Space</kbd> | place selected block |
|
||||
| <kbd>Backspace</kbd> | erase current block |
|
||||
| <kbd>Z</kbd> | undo last node placement / erase |
|
||||
| <kbd>Y</kbd> | redo node placement from history |
|
||||
| <kbd>Enter</kbd> | flood fill (or erase) entire areas |
|
||||
| <kbd>Ctrl</kbd> + arrows | scroll the editor area |
|
||||
| <kbd>Shift</kbd> + up / down | move the upper layers up and down |
|
||||
| <kbd>Shift</kbd> + left | rotate the current block counter clock-wise |
|
||||
|
@ -66,9 +79,21 @@ Main editor window:
|
|||
| <kbd>Shift</kbd> + <kbd>S</kbd> | open save as window |
|
||||
| <kbd>P</kbd> | save preview PNG |
|
||||
| <kbd>Shift</kbd> + <kbd>P</kbd> | save preview with structure cut in half |
|
||||
| <kbd>F</kbd> | flip the entire structure along the Z axis |
|
||||
| <kbd>R</kbd> | change orientation, rotate entire structure CCW |
|
||||
| <kbd>Shift</kbd> + <kbd>R</kbd> | change orientation, rotate entire structure CW |
|
||||
| <kbd>F</kbd> | flip the entire structure along the Z axis |
|
||||
| <kbd>Y</kbd> | redo node placement from history |
|
||||
| <kbd>Z</kbd> | undo last node placement / erase |
|
||||
| <kbd>X</kbd> | insert a new, emtpy Y layer |
|
||||
| <kbd>Shift</kbd> + <kbd>X</kbd> | duplicate current Y layer |
|
||||
| <kbd>Ctrl</kbd> + <kbd>X</kbd> | remove current Y layer |
|
||||
| <kbd>C</kbd> | insert a new, empty X layer |
|
||||
| <kbd>Shift</kbd> + <kbd>C</kbd> | duplicate current X layer |
|
||||
| <kbd>Ctrl</kbd> + <kbd>C</kbd> | remove current X layer |
|
||||
| <kbd>V</kbd> | insert a new , empty Z layer |
|
||||
| <kbd>Shift</kbd> + <kbd>V</kbd> | duplicate current Z layer |
|
||||
| <kbd>Ctrl</kbd> + <kbd>V</kbd> | remove current Z layer |
|
||||
| <kbd>B</kbd> | select brush (use geometric objects) |
|
||||
| <kbd>M</kbd> / <kbd>Tab</kbd> | open block map, search all available blocks |
|
||||
| <kbd>0</kbd>, <kbd>Backquote</kbd> | select Air block (erase mode) |
|
||||
| <kbd>1</kbd> - <kbd>9</kbd> | quickly access one of the blocks from the palette |
|
||||
|
|
|
@ -5,7 +5,7 @@ This is a little mod that connects MTSEdit to Minetest. With the "/mtsedit" chat
|
|||
[blocks.csv](https://gitlab.com/bztsrc/mtsedit/blob/master/docs/blocks.md), which is used to correlate block types
|
||||
between different Minetest games and Minecraft.
|
||||
|
||||
You can also save and MTS files from your world, but most importantly, you can load the MTS files that you edited with MTSEdit.
|
||||
You can also save and MTS files from your world, but most importantly, you can load the MTS files that you've created with MTSEdit.
|
||||
|
||||
Installation
|
||||
------------
|
||||
|
@ -19,7 +19,7 @@ None. This mod works on its own, has absolutely zero dependency.
|
|||
__IMPORTANT__: the Lua API can't access files outside of the world directory, so you have to copy your existing blocks.csv
|
||||
there (on Linux "~/.minetest/worlds/(world name)"), run the chat command, then copy the result back to /usr/share/mtsedit.
|
||||
|
||||
Likewise, you have to place your schematic files under "(world directory)/schems/".
|
||||
Likewise, you have to place your schematic files under "(world directory)/schems/", other directories are not reachable from Lua.
|
||||
|
||||
Usage
|
||||
-----
|
||||
|
@ -35,7 +35,7 @@ or
|
|||
```
|
||||
/mtsedit help
|
||||
```
|
||||
to get help. When you first issue this command, it will give you a "MTSEdit Magic Placement Wand Tool" (TM) :-)
|
||||
to get help. When you first run this command, it will give you a "MTSEdit Magic Placement Wand Tool" (TM) :-)
|
||||
|
||||
### Exporting node data for MTSEdit
|
||||
|
||||
|
@ -45,8 +45,8 @@ In the chat window issue the following command
|
|||
/mtsedit export Minetest Game
|
||||
```
|
||||
Where the argument is one of the coloumns in block.csv, so called node palette. If the csv exists, then this mod will read
|
||||
it, and it will only update one coloumn. If the file does not exists, then it will be created. If it exists, but there's
|
||||
no such coloumn as specified in the argument, then a new palette will be created.
|
||||
it, and it will only update that particular one coloumn. If the file does not exists, then it will be created. If it exists,
|
||||
but there's no such coloumn as specified in the argument, then a new node palette will be created.
|
||||
|
||||
The Lua script tries to figure out which node is which, but because you can enable lots of mods in Minetest (each allowed to
|
||||
register it's own node types), that's not an easy task. It does a pretty decent job though, usually about 80% of the records
|
||||
|
@ -55,12 +55,12 @@ which also contains the Minecraft NBT .schematic files' Block IDs.
|
|||
|
||||
### Importing MTS files
|
||||
|
||||
For that, enter chat and issue
|
||||
For that, enter chat and run
|
||||
|
||||
```
|
||||
/mtsedit load (file name)
|
||||
```
|
||||
Exit chat (with <kbd>Esc</kbd>) and use the mtsedit wand with right clicking on a node where you want to build the structure.
|
||||
Exit chat (with <kbd>Esc</kbd>) and use the MTSEdit Wand with right clicking on a node where you want to build the structure.
|
||||
That's all. Depending on which direction you're looking at your punched node, the structure's orientation will change. You can
|
||||
repeat this right click as many times as you want. The same structure will be placed until you issue another "/mtsedit load"
|
||||
command.
|
||||
|
@ -70,17 +70,24 @@ To help you with the files,
|
|||
```
|
||||
/mtsedit list
|
||||
```
|
||||
will list the contents of your world directory's "schems" sub-dir.
|
||||
will list the available MTS files in your world directory's "schems" sub-dir.
|
||||
|
||||
### Exporting MTS files
|
||||
|
||||
First, select one corner of the area that you want to save. Left click on that node with the mtsedit wand. Then go to the opposite
|
||||
corner of the area (you probably want to get fly priv), and left click on the air (without selecting any particular nodes). A
|
||||
green selection cube will appear arround the area. You can modify it as many times as you'd like. When you're satisfied, go
|
||||
to the chat window, and
|
||||
First, select one corner of the area that you want to save: left click on a node with the MTSEdit Wand. Then go to the opposite
|
||||
corner of the area (you probably want to get fly priv), and left click on the air (without selecting any particular node). A
|
||||
green selection cube will appear arround the area. You can modify this as many times as you'd like. If by any chance you can't
|
||||
reach the exact edges of the desired area, then you can grow (or with negative values, shrink) it using chat commands:
|
||||
|
||||
```
|
||||
/mtsedit grow (delta)
|
||||
```
|
||||
|
||||
When you're satisfied with the selection, go to the chat window, and
|
||||
|
||||
```
|
||||
/mtsedit save (file name)
|
||||
```
|
||||
will save that area into an MTS file. After that you can open it with MTSEdit outside of the game.
|
||||
will save that area into an MTS file into the "schems" directory. After that you can open it with MTSEdit outside of the game.
|
||||
|
||||
Enjoy!
|
||||
|
|
|
@ -335,6 +335,21 @@ function mtsedit.save(name, param)
|
|||
return false, S("Unable to write @1", fn)
|
||||
end
|
||||
|
||||
-- Grow or shrink the selected area
|
||||
function mtsedit.grow(name, param)
|
||||
if param == nil or param == "" then
|
||||
return false, S("Specify <delta> value")
|
||||
end
|
||||
if mtsedit.savestat[name] ~= nil and mtsedit.savestat[name][1] ~= nil then
|
||||
local props = mtsedit.savestat[name][1]:get_properties()
|
||||
if props ~= nil and props["visual_size"] ~= nil then
|
||||
local siz = props["visual_size"]
|
||||
mtsedit.savestat[name][1]:set_properties({visual_size={x=siz.x + param, y=siz.y + param, z=siz.z + param}})
|
||||
end
|
||||
end
|
||||
return true, ""
|
||||
end
|
||||
|
||||
-- Register selected area marker
|
||||
minetest.register_entity(":mtsedit:selection", {
|
||||
initial_properties = {
|
||||
|
@ -412,6 +427,7 @@ minetest.register_chatcommand("mtsedit", {
|
|||
minetest.chat_send_player(name, " /mtsedit load <mts> - " .. S("Load an MTS file from \"(world directory)/schems/<schematic>.mts\" into the world"))
|
||||
minetest.chat_send_player(name, " /mtsedit list - " .. S("Show available schematic files"))
|
||||
minetest.chat_send_player(name, " /mtsedit save <mts> - " .. S("Save the selected area into an MTS file"))
|
||||
minetest.chat_send_player(name, " /mtsedit grow <delta> - " .. S("Grow or shrink the selected area"))
|
||||
minetest.chat_send_player(name, " /mtsedit export <palette> - " .. S("Export node data to <palette> column of \"(world directory)/blocks.csv\""))
|
||||
minetest.chat_send_player(name, " /mtsedit imgs - " .. S("Export node texture data to \"(world directory)/blockimgs.csv\""))
|
||||
else
|
||||
|
@ -420,6 +436,7 @@ minetest.register_chatcommand("mtsedit", {
|
|||
if string.sub(param, 1, 4) == "load" then return mtsedit.load(name, arg)
|
||||
elseif string.sub(param, 1, 4) == "list" then return mtsedit.list(name)
|
||||
elseif string.sub(param, 1, 4) == "save" then return mtsedit.save(name, arg)
|
||||
elseif string.sub(param, 1, 4) == "grow" then return mtsedit.grow(name, arg)
|
||||
elseif string.sub(param, 1, 6) == "export" then return mtsedit.export(arg)
|
||||
elseif string.sub(param, 1, 4) == "imgs" then return mtsedit.imgs()
|
||||
else return false, S("Unknown mtsedit command") end
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
# textdomain: mtsedit
|
||||
Specify <palette> (like "Mineclone2", "Minetest Game" etc.)=Spezifiziere <palette> (zum Beispiel "Mineclone2", "Minetest Game" usw.)
|
||||
Unable to write @1=@1 kann nicht geschrieben werden
|
||||
@1 saved.=@1 gespeichert.
|
||||
Specify <schematic> file=Schemadatei <schematisch> angeben
|
||||
Failed to load @1=Laden von @1 fehlgeschlagen
|
||||
Schematic loaded, use right click with the placement tool in your inventory=Wenn das Schema geladen ist, klicken Sie mit der rechten Maustaste auf das Placement-Tool in Ihrem Inventar
|
||||
Select an area first by left clicking with the placement tool=Wählen Sie zuerst einen Bereich aus, indem Sie mit dem Platzierungswerkzeug auf die linke Maustaste klicken
|
||||
Area=Bereich
|
||||
Specify <delta> value=Geben Sie den Wert <Delta> an
|
||||
Place the loaded structure=Platzieren Sie die geladene Struktur
|
||||
Failed to place the schematic @1=Schaltplan @1 konnte nicht platziert werden
|
||||
First use the "/mtsedit load" chat command to load a schematic=Verwenden Sie zuerst den Chat-Befehl "/mtsedit load", um einen Schemadaten zu laden
|
||||
Load and save MTS files easily or export MTSEdit block data=Laden und speichern Sie MTS-Dateien einfach oder exportieren Sie MTSEdit-Blockdaten
|
||||
[load|list|save|export|imgs|help] [file]=[load|list|save|export|imgs|help] [Datei]
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=Laden Sie eine MTS-Datei aus "(Weltverzeichnis)/schems/<schematisch>.mts" in die Welt
|
||||
Show available schematic files=Verfügbare Schemadateien anzeigen
|
||||
Save the selected area into an MTS file=Speichern Sie den ausgewählten Bereich in einer MTS-Datei
|
||||
Grow or shrink the selected area=Vergrößern oder verkleinern Sie den ausgewählten Bereich
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=Knotendaten in die Spalte <palette> von "(Weltverzeichnis)/blocks.csv" exportieren
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=Knotentexturdaten nach "(Weltverzeichnis)/blockimgs.csv" exportieren
|
||||
Unknown mtsedit command=Unbekannter mtsedit Befehl
|
|
@ -0,0 +1,22 @@
|
|||
# textdomain: mtsedit
|
||||
Specify <palette> (like "Mineclone2", "Minetest Game" etc.)=Especifique <paleta> (como "Mineclone2", "Minetest Game", etc.)
|
||||
Unable to write @1=No se puede escribir @1
|
||||
@1 saved.=@1 guardado.
|
||||
Specify <schematic> file=Especificar archivo <esquemático>
|
||||
Failed to load @1=Error al cargar @1
|
||||
Schematic loaded, use right click with the placement tool in your inventory=Esquema cargado, use el botón derecho con la herramienta de colocación en su inventario
|
||||
Select an area first by left clicking with the placement tool=Seleccione un área primero haciendo clic izquierdo con la herramienta de colocación
|
||||
Area=Zona
|
||||
Specify <delta> value=Especifique el valor <delta>
|
||||
Place the loaded structure=Coloque la estructura cargada
|
||||
Failed to place the schematic @1=Error al colocar el esquema @1
|
||||
First use the "/mtsedit load" chat command to load a schematic=Primero use el comando de chat "/mtsedit load" para cargar un esquema
|
||||
Load and save MTS files easily or export MTSEdit block data=Cargue y guarde archivos MTS fácilmente o exporte datos de bloque MTSEdit
|
||||
[load|list|save|export|imgs|help] [file]=[load|list|save|export|imgs|help] [archivo]
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=Cargue un archivo MTS de "(directorio mundial)/schems/<esquemático>.mts" en el mundo
|
||||
Show available schematic files=Mostrar archivos esquemáticos disponibles
|
||||
Save the selected area into an MTS file=Guardar el área seleccionada en un archivo MTS
|
||||
Grow or shrink the selected area=Crecer o reducir el área seleccionada
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=Exportar datos de nodo a la columna <paleta> de "(directorio mundial)/blocks.csv"
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=Exportar datos de textura de nodo a "(directorio mundial)/blockimgs.csv"
|
||||
Unknown mtsedit command=Comando mtsedit desconocido
|
|
@ -0,0 +1,22 @@
|
|||
# textdomain: mtsedit
|
||||
Specify <palette> (like "Mineclone2", "Minetest Game" etc.)=Spécifiez <palette> (comme "Mineclone2", "Minetest Game" etc.)
|
||||
Unable to write @1=Impossible d'écrire @1
|
||||
@1 saved.=@1 enregistré.
|
||||
Specify <schematic> file=Spécifier le fichier <schématique>
|
||||
Failed to load @1=Impossible de charger @1
|
||||
Schematic loaded, use right click with the placement tool in your inventory=Schéma chargé, utilisez le clic droit avec l'outil de placement dans votre inventaire
|
||||
Select an area first by left clicking with the placement tool=Sélectionnez d'abord une zone en cliquant à gauche avec l'outil de placement
|
||||
Area=Région
|
||||
Specify <delta> value=Spécifiez la valeur <delta>
|
||||
Place the loaded structure=Placez la structure chargée
|
||||
Failed to place the schematic @1=Impossible de placer le schéma @1
|
||||
First use the "/mtsedit load" chat command to load a schematic=Commencez par utiliser la commande de discussion "/mtsedit load" pour charger un schéma
|
||||
Load and save MTS files easily or export MTSEdit block data=Chargez et enregistrez facilement des fichiers MTS ou exportez des données de bloc MTSEdit
|
||||
[load|list|save|export|imgs|help] [file]=[load|list|save|export|imgs|help] [fichier]
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=Charger un fichier MTS de "(répertoire du monde)/schems/<schématique>.mts" dans le monde
|
||||
Show available schematic files=Afficher les fichiers schématiques disponibles
|
||||
Save the selected area into an MTS file=Enregistrer la zone sélectionnée dans un fichier MTS
|
||||
Grow or shrink the selected area=Agrandir ou réduire la zone sélectionnée
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=Exporter les données du noeud dans la colonne <palette> de "(répertoire mondial)/blocks.csv"
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=Exporter les données de texture du nœud vers "(répertoire mondial)/blockimgs.csv"
|
||||
Unknown mtsedit command=Commande mtsedit inconnue
|
|
@ -0,0 +1,22 @@
|
|||
# textdomain: mtsedit
|
||||
Specify <palette> (like "Mineclone2", "Minetest Game" etc.)=Adj meg <palettát> (pl. "Mineclone2", "Minetest Game" stb.)
|
||||
Unable to write @1=Nem tudom írni @1
|
||||
@1 saved.=@1 elmentve.
|
||||
Specify <schematic> file=Adj meg <sematika> fájlt
|
||||
Failed to load @1=Nem tudom betölteni @1
|
||||
Schematic loaded, use right click with the placement tool in your inventory=Betöltve, jobbkattints az eszköztáradban lévő elhelyező pálcával
|
||||
Select an area first by left clicking with the placement tool=Előbb jelölj ki egy területet az elhelyező pálcával
|
||||
Area=Terület
|
||||
Specify <delta> value=Adj meg <delta> értéket
|
||||
Place the loaded structure=Betöltött struktúra elhelyezése
|
||||
Failed to place the schematic @1=Nem sikerült elhelyezni @1
|
||||
First use the "/mtsedit load" chat command to load a schematic=Előbb tölts be valamit a "/mtsedit load" paranccsal
|
||||
Load and save MTS files easily or export MTSEdit block data=MTS fájlok mentése és betöltése, MTSEdit adatok exportálása
|
||||
[load|list|save|export|imgs|help] [file]=[load|list|save|export|imgs|help] [fájl]
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=MTS fájl betöltése a "(világ mappa)/schems" könyvtárból
|
||||
Show available schematic files=Elérhető sematika fájlok listázása
|
||||
Save the selected area into an MTS file=Kijelölt terület elmentése MTS fájlba
|
||||
Grow or shrink the selected area=Kijelölt terület növelése vagy csökkentése
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=Blokkadatok exportálása a "(világ mappa)/blocks.csv" fájl <paletta> oszlopába
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=Textúraadatok exportálása a "(világ mappa)/blockimgs.csv" fájlba
|
||||
Unknown mtsedit command=Ismeretlen mtsedit parancs
|
|
@ -0,0 +1,22 @@
|
|||
# textdomain: mtsedit
|
||||
Specify <palette> (like "Mineclone2", "Minetest Game" etc.)=Podaj <palette> (jak „Mineclone2”, „Minetest Game” itp.)
|
||||
Unable to write @1=Nie można napisać @1
|
||||
@1 saved.=@1 zapisane.
|
||||
Specify <schematic> file=Podaj plik <schematyczny>
|
||||
Failed to load @1=Nie udało się załadować @1
|
||||
Schematic loaded, use right click with the placement tool in your inventory=Załadowany schemat, kliknij prawym przyciskiem myszy narzędzie do rozmieszczania w ekwipunku
|
||||
Select an area first by left clicking with the placement tool=Najpierw wybierz obszar, klikając lewym przyciskiem myszy za pomocą narzędzia rozmieszczania
|
||||
Area=Powierzchnia
|
||||
Specify <delta> value=Podaj wartość <delta>
|
||||
Place the loaded structure=Umieść załadowaną strukturę
|
||||
Failed to place the schematic @1=Nie udało się umieścić schematu @1
|
||||
First use the "/mtsedit load" chat command to load a schematic=Najpierw użyj polecenia czatu „/mtsedit load”, aby załadować schemat
|
||||
Load and save MTS files easily or export MTSEdit block data=Łatwe ładowanie i zapisywanie plików MTS lub eksport danych bloku MTSEdit
|
||||
[load|list|save|export|imgs|help] [file]=[load|list|save|export|imgs|help] [plik]
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=Załaduj plik MTS z „(światowy katalog)/schems/<schematyczny>.mts” na świat
|
||||
Show available schematic files=Pokaż dostępne pliki schematów
|
||||
Save the selected area into an MTS file=Zapisz wybrany obszar w pliku MTS
|
||||
Grow or shrink the selected area=Powiększ lub zmniejsz wybrany obszar
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=Eksportuj dane węzła do kolumny <palette> w katalogu „(światowy katalog)/blocks.csv”
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=Eksportuj dane tekstury węzła do „(światowy katalog)/blockimgs.csv”
|
||||
Unknown mtsedit command=Nieznane mtsedit polecenie
|
|
@ -0,0 +1,22 @@
|
|||
# textdomain: mtsedit
|
||||
Specify <palette> (like "Mineclone2", "Minetest Game" etc.)=Укажите <palette> (например, «Mineclone2», «Minetest Game» и т. Д.)
|
||||
Unable to write @1=Невозможно написать @1
|
||||
@1 saved.=@1 сохранено.
|
||||
Specify <schematic> file=Укажите файл <схематический>
|
||||
Failed to load @1=Не удалось загрузить @1
|
||||
Schematic loaded, use right click with the placement tool in your inventory=Схема загружена, используйте правую кнопку мыши с инструментом размещения в вашем инвентаре
|
||||
Select an area first by left clicking with the placement tool=Сначала выберите область, щелкнув левой кнопкой мыши с помощью инструмента размещения
|
||||
Area=Площадь
|
||||
Specify <delta> value=Укажите значение <delta>
|
||||
Place the loaded structure=Поместите загруженную структуру
|
||||
Failed to place the schematic @1=Не удалось разместить схему @1
|
||||
First use the "/mtsedit load" chat command to load a schematic=Сначала используйте команду чата "/mtsedit load", чтобы загрузить схему
|
||||
Load and save MTS files easily or export MTSEdit block data=Легко загружайте и сохраняйте файлы MTS или экспортируйте данные блока MTSEdit
|
||||
[load|list|save|export|imgs|help] [file]=[load|list|save|export|imgs|help] [файл]
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=Загрузите файл MTS из "(мировой каталог)/schems/<схематический>.mts" в мир
|
||||
Show available schematic files=Показать доступные файлы схемы
|
||||
Save the selected area into an MTS file=Сохранить выбранную область в файл MTS
|
||||
Grow or shrink the selected area=Расти или уменьшай выделенную область
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=Экспорт данных узла в столбец <palette> в "(мировой каталог)/blocks.csv"
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=Экспорт данных текстуры узла в "(мировой каталог)/blockimgs.csv"
|
||||
Unknown mtsedit command=Неизвестная mtsedit команда
|
|
@ -1,19 +1,22 @@
|
|||
# textdomain: mtsedit
|
||||
Load and save MTS files easily or export MTSEdit block data=
|
||||
[load|export|imgs|help] [file]=
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=
|
||||
Show available schematic files=
|
||||
Save the selected area into an MTS file=
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=
|
||||
Unknown mtsedit command=
|
||||
Specify <palette> (like "Mineclone2", "Minetest Game" etc.)=
|
||||
Unable to write @1=
|
||||
@1 saved.=
|
||||
Specify <schematic> file=
|
||||
Failed to load @1=
|
||||
Schematic loaded, use the placement tool in your inventory=
|
||||
Schematic loaded, use right click with the placement tool in your inventory=
|
||||
Select an area first by left clicking with the placement tool=
|
||||
Area=
|
||||
Specify <delta> value=
|
||||
Place the loaded structure=
|
||||
Failed to place the schematic @1=
|
||||
First use the "/mtsedit load" chat command to load a schematic=
|
||||
Select an area first by left clicking with the placement tool
|
||||
Area=
|
||||
Load and save MTS files easily or export MTSEdit block data=
|
||||
[load|list|save|export|imgs|help] [file]=
|
||||
Load an MTS file from "(world directory)/schems/<schematic>.mts" into the world=
|
||||
Show available schematic files=
|
||||
Save the selected area into an MTS file=
|
||||
Grow or shrink the selected area=
|
||||
Export node data to <palette> column of "(world directory)/blocks.csv"=
|
||||
Export node texture data to "(world directory)/blockimgs.csv"=
|
||||
Unknown mtsedit command=
|
||||
|
|
19
src/Makefile
|
@ -1,12 +1,20 @@
|
|||
TARGET = mtsedit
|
||||
# --- set these according to your configuration ---
|
||||
MINGWSDL = ../..
|
||||
MACSDL = /Library/Frameworks/SDL2.framework/Headers
|
||||
# -------------------------------------------------
|
||||
|
||||
TARGET = mtsedit
|
||||
SRCS = $(wildcard *.c)
|
||||
|
||||
CFLAGS = -Wall -Wextra -ansi -pedantic -g
|
||||
|
||||
# MacOSX
|
||||
ifneq ("$(wildcard /Library/Frameworks/SDL*)","")
|
||||
CFLAGS += -I/usr/include/SDL2
|
||||
ifneq ("$(wildcard $(MACSDL)/SDL.h)","")
|
||||
CFLAGS += -I/usr/include/SDL2 -I$(MACSDL)
|
||||
LIBS = -framework SDL
|
||||
else
|
||||
ifneq ("$(wildcard ~/Libraru/Frameworks/SDL2.framework/Headers/SDL2/SDL.h)","")
|
||||
CFLAGS += -I/usr/include/SDL2 -I~/Libraru/Frameworks/SDL2.framework/Headers/SDL2
|
||||
LIBS = -framework SDL
|
||||
else
|
||||
# Linux
|
||||
|
@ -22,6 +30,7 @@ LIBS = -lSDL2 -lcomdlg32 -luser32
|
|||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
OBJS = icons.o font.o $(SRCS:.c=.o)
|
||||
|
||||
|
@ -29,7 +38,9 @@ all: configure $(OBJS) $(TARGET)
|
|||
|
||||
configure:
|
||||
ifeq ("$(LIBS)","")
|
||||
@echo "No ui driver can be detected. Install libsdl2-dev."
|
||||
@echo "No headers found, ui driver cannot be detected. Install libsdl2-dev."
|
||||
@echo "Also check if the header files are in MINGSDL or MACSDL paths."
|
||||
@echo "Try to run 'find / -name SDL.h' in a terminal to find the header."
|
||||
@false
|
||||
endif
|
||||
|
||||
|
|
73
src/blocks.c
|
@ -126,14 +126,15 @@ void parseblocks()
|
|||
{
|
||||
stbi__context sc;
|
||||
stbi__result_info ri;
|
||||
int w, h, l;
|
||||
unsigned int numfiles = 0, i, j, k;
|
||||
int w, h, l, r;
|
||||
unsigned int numfiles = 0, i, j, k, m, *tmp;
|
||||
char **files = NULL, *used, c, *s, *e;
|
||||
DIR *dir;
|
||||
struct dirent *de;
|
||||
unsigned int size;
|
||||
unsigned char *img;
|
||||
char *data = (char*)readfile("blocks.csv", &size);
|
||||
char *tr, trname[16], *t, **trl = NULL;
|
||||
|
||||
if(!data || !size) error(lang[ERR_CSV]);
|
||||
|
||||
|
@ -159,6 +160,22 @@ void parseblocks()
|
|||
if(!used) error(lang[ERR_MEM]);
|
||||
memset(used, 0, numfiles);
|
||||
|
||||
/* read block name dictionary if exists */
|
||||
sprintf(trname, "blocks_%c%c.txt", lang[-1][0], lang[-1][1]);
|
||||
tr = (char*)readfile(trname, &size);
|
||||
if(tr) {
|
||||
for(e = tr, i = 0; *e; e++) {
|
||||
while(*e == '\r' || *e == '\n' || *e == ' ' || *e == '\t') e++;
|
||||
trl = (char**)realloc(trl, (i+2) * sizeof(char*));
|
||||
if(!trl) error(lang[ERR_MEM]);
|
||||
trl[i++] = e;
|
||||
while(*e && *e != '\r' && *e != '\n') e++;
|
||||
if(!*e) break;
|
||||
*e = 0;
|
||||
}
|
||||
if(trl && i) trl[i] = NULL;
|
||||
}
|
||||
|
||||
/* parse header */
|
||||
for(e = data, i = j = 0; *e && *e != '\r' && *e != '\n' && i < 3; e++) {
|
||||
if(*e == '\"') j ^= 1;
|
||||
|
@ -187,9 +204,12 @@ void parseblocks()
|
|||
blocks = (mtsblock_t*)realloc(blocks, numblocks * sizeof(mtsblock_t));
|
||||
if(!blocks) error(lang[ERR_MEM]);
|
||||
memset(&blocks[0], 0, sizeof(mtsblock_t));
|
||||
blocks[0].name = (char*)malloc(4);
|
||||
for(m = 0, t = NULL; trl && trl[m]; m++)
|
||||
if(!memcmp(trl[m], "Air=", 4)) { t = trl[m] + 4; break; }
|
||||
if(!t) t = lang[AIR];
|
||||
blocks[0].name = (char*)malloc(strlen(t)+1);
|
||||
if(!blocks[0].name) error(lang[ERR_MEM]);
|
||||
memcpy(blocks[0].name, "Air", 4);
|
||||
strcpy(blocks[0].name, t);
|
||||
blocks[0].blocknames = (char**)malloc((numpalettes + 1) * sizeof(char*));
|
||||
if(!blocks[0].blocknames) error(lang[ERR_MEM]);
|
||||
blocks[0].blocknames[0] = NULL;
|
||||
|
@ -214,15 +234,18 @@ void parseblocks()
|
|||
blocks = (mtsblock_t*)realloc(blocks, numblocks * sizeof(mtsblock_t));
|
||||
if(!blocks) error(lang[ERR_MEM]);
|
||||
memset(&blocks[j], 0, sizeof(mtsblock_t));
|
||||
blocks[j].name = (char*)malloc(e - s + 1);
|
||||
if(!blocks[j].name) error(lang[ERR_MEM]);
|
||||
blocks[j].blocknames = (char**)malloc((numpalettes + 1) * sizeof(char*));
|
||||
if(!blocks[j].blocknames) error(lang[ERR_MEM]);
|
||||
memset(blocks[j].blocknames, 0, (numpalettes + 1) * sizeof(char*));
|
||||
for(i = 0; s + i < e; i++) {
|
||||
blocks[j].name[i] = s[i] == '_' ? ' ' : s[i];
|
||||
if(s[i] == ' ' || s[i] == '\'') s[i] = '_';
|
||||
}
|
||||
for(k = 0; s + k < e; k++)
|
||||
if(s[k] == ' ' || s[k] == '\'') s[k] = '_';
|
||||
/* translate block name */
|
||||
for(m = 0, t = s; trl && trl[m]; m++)
|
||||
if(!memcmp(trl[m], s, k) && trl[m][k] == '=') { t = trl[m] + k + 1; k = strlen(t); break; }
|
||||
blocks[j].name = (char*)malloc(k + 1);
|
||||
if(!blocks[j].name) error(lang[ERR_MEM]);
|
||||
for(i = 0; i < k; i++)
|
||||
blocks[j].name[i] = t[i] == '_' ? ' ' : t[i];
|
||||
blocks[j].name[i] = 0;
|
||||
/* get block images and possible param2 values */
|
||||
memset(blocks[j].img, 0, sizeof(blocks[j].img));
|
||||
|
@ -236,10 +259,31 @@ void parseblocks()
|
|||
sc.img_buffer = sc.img_buffer_original = img;
|
||||
sc.img_buffer_end = sc.img_buffer_original_end = img + size;
|
||||
ri.bits_per_channel = 8;
|
||||
blocks[j].img[k] = (unsigned char*)stbi__png_load(&sc, &w, &h, &l, 0, &ri);
|
||||
blocks[j].img[k] = (unsigned char*)stbi__png_load(&sc, &w, &h, &r, 0, &ri);
|
||||
if(blocks[j].img[k]) {
|
||||
if(r != 4) {
|
||||
tmp = (unsigned int *)malloc(32 * 32 * 4);
|
||||
if(!tmp) error(lang[ERR_MEM]);
|
||||
for(m = 0; m < 32 * 32; m++)
|
||||
switch(r) {
|
||||
case 1:
|
||||
tmp[m] = 0xFF000000 | (blocks[j].img[k][m] << 16) | (blocks[j].img[k][m] << 8)
|
||||
| (blocks[j].img[k][m]);
|
||||
break;
|
||||
case 2:
|
||||
tmp[m] = (blocks[j].img[k][(m<<1)+1] << 24) | (blocks[j].img[k][m<<1] << 16) |
|
||||
(blocks[j].img[k][m<<1] << 8) | (blocks[j].img[k][m<<1]);
|
||||
break;
|
||||
case 3:
|
||||
tmp[m] = 0xFF000000 | (blocks[j].img[k][m*3+2] << 16) | (blocks[j].img[k][m*3+1] << 8)
|
||||
| (blocks[j].img[k][m*3]);
|
||||
break;
|
||||
}
|
||||
free(blocks[j].img[k]);
|
||||
blocks[j].img[k] = (unsigned char*)tmp;
|
||||
}
|
||||
l++;
|
||||
if(!dx || !dz || !memcmp(blocks[j].name, "Cobblestone", 12)) {
|
||||
if(!dx || !dz || (!memcmp(s, "Cobblestone", 11) && s[11] != '_' && s[11] != ' ')) {
|
||||
detcube(32, 32, blocks[j].img[k]);
|
||||
dx = x1 - x0;
|
||||
dz = y1 - y0;
|
||||
|
@ -249,9 +293,8 @@ void parseblocks()
|
|||
}
|
||||
}
|
||||
}
|
||||
if(!l && verbose)
|
||||
fprintf(stderr, "mtsedit: blocks.csv(%d): %s '%s'\r\n", j+1, lang[ERR_IMG], blocks[j].name);
|
||||
while(*e && *e != ',' && *e != ';' && *e != '\t' && *e != '\r' && *e != '\n') e++;
|
||||
if(!l && verbose) { *e = 0; fprintf(stderr, "mtsedit: blocks.csv(%d): %s '%s'\r\n", j+1, lang[ERR_IMG], s); }
|
||||
while(*e == ' ') e++;
|
||||
if(*e != ',' && *e != ';' && *e != '\t') errorcsv(j+1);
|
||||
e++;
|
||||
|
@ -298,6 +341,8 @@ void parseblocks()
|
|||
fprintf(stderr, "mtsedit: '%s'?\r\n", files[i]);
|
||||
free(files[i]);
|
||||
}
|
||||
if(tr) free(tr);
|
||||
if(trl) free(trl);
|
||||
free(files);
|
||||
free(used);
|
||||
free(data);
|
||||
|
|
|
@ -0,0 +1,400 @@
|
|||
/*
|
||||
* mtsedit/brush.c
|
||||
*
|
||||
* Copyright (C) 2019 bzt (bztsrc@gitlab)
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use, copy,
|
||||
* modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||
* of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
* DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* @brief Select Brush window and other brush functions
|
||||
*
|
||||
*/
|
||||
|
||||
#include "main.h"
|
||||
|
||||
#define BRUSHTYPEMAX 7
|
||||
#define BRUSHCOORDMAX 127
|
||||
|
||||
int brush_type = 0, brush_hollow = 0, brush_x = 1, brush_y = 1, brush_z = 1;
|
||||
int brushfld = 0, brushmax = 0;
|
||||
|
||||
char brushmask[BRUSHCOORDMAX*BRUSHCOORDMAX/8], brushmaskmax[BRUSHCOORDMAX];
|
||||
|
||||
/**
|
||||
* Set the selected brush's mask. Only needed for globe really
|
||||
*/
|
||||
void brush_setmask(int needmax)
|
||||
{
|
||||
int i, x, y = 0, r, err;
|
||||
|
||||
memset(brushmask, 0, sizeof(brushmask));
|
||||
if(needmax) memset(brushmaskmax, 0, sizeof(brushmaskmax));
|
||||
if(brush_type && brush_type < 4 && brush_x >= 1) {
|
||||
brush_x--;
|
||||
/* one might think that it would be enough to solve the circle's equation, but they couldn't be more wrong. There are
|
||||
* problems with rounding and accumulated errors, also there are spurious pixels. So we draw into a bitmask instead. */
|
||||
x = -brush_x; err = 2 - 2 * brush_x;
|
||||
do {
|
||||
if(needmax && brushmaskmax[y] < -x) brushmaskmax[y] = -x;
|
||||
if(brush_hollow)
|
||||
brushmask[(y<<4)|((-x)>>3)] |= 1<<((-x)&7);
|
||||
else
|
||||
for(i = 0; i <= -x; i++)
|
||||
brushmask[(y<<4)|(i>>3)] |= 1<<(i&7);
|
||||
r = err;
|
||||
if (r <= y) err += ++y * 2 + 1;
|
||||
if (r > x || err > y) err += ++x * 2 + 1;
|
||||
} while (x <= 0);
|
||||
brush_x++;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Insert a brush at cursor position
|
||||
*/
|
||||
void brush_place(int blk)
|
||||
{
|
||||
int x, z, y, i, j;
|
||||
|
||||
switch(brush_type) {
|
||||
case 0:
|
||||
/* single node */
|
||||
hist_prepare(HIST_NODE, 0);
|
||||
edit_placenode(currlayer, cz, cx, blk);
|
||||
break;
|
||||
case 1:
|
||||
/* globe */
|
||||
hist_prepare(HIST_BRUSH, 2 * brush_x * 2 * brush_x * 2 * brush_x);
|
||||
i = brush_x;
|
||||
for(y = 0; brushmaskmax[y]; y++) {
|
||||
if(brushmaskmax[y] + 1 != brush_x) {
|
||||
brush_x = brushmaskmax[y] + 1;
|
||||
brush_setmask(0);
|
||||
}
|
||||
for(z = 0; z <= brush_x; z++)
|
||||
for(x = 0; x <= brush_x; x++)
|
||||
if(brushmask[(z<<4)|(x>>3)] & (1<<(x&7))) {
|
||||
edit_placenode(currlayer + y, cz - z, cx + x, blk);
|
||||
edit_placenode(currlayer + y, cz + z, cx + x, blk);
|
||||
edit_placenode(currlayer + y, cz - z, cx - x, blk);
|
||||
edit_placenode(currlayer + y, cz + z, cx - x, blk);
|
||||
edit_placenode(currlayer - y, cz - z, cx + x, blk);
|
||||
edit_placenode(currlayer - y, cz + z, cx + x, blk);
|
||||
edit_placenode(currlayer - y, cz - z, cx - x, blk);
|
||||
edit_placenode(currlayer - y, cz + z, cx - x, blk);
|
||||
if(brush_hollow) {
|
||||
edit_placenode(currlayer + x, cz - z, cx + y, blk);
|
||||
edit_placenode(currlayer + x, cz + z, cx + y, blk);
|
||||
edit_placenode(currlayer + x, cz - z, cx - y, blk);
|
||||
edit_placenode(currlayer + x, cz + z, cx - y, blk);
|
||||
edit_placenode(currlayer - x, cz - z, cx + y, blk);
|
||||
edit_placenode(currlayer - x, cz + z, cx + y, blk);
|
||||
edit_placenode(currlayer - x, cz - z, cx - y, blk);
|
||||
edit_placenode(currlayer - x, cz + z, cx - y, blk);
|
||||
}
|
||||
}
|
||||
}
|
||||
brush_x = i;
|
||||
brush_setmask(0);
|
||||
break;
|
||||
case 2:
|
||||
/* dome */
|
||||
hist_prepare(HIST_BRUSH, 2 * brush_x * 2 * brush_x * (brush_x + 1));
|
||||
i = brush_x;
|
||||
for(y = 0; brushmaskmax[y]; y++) {
|
||||
if(brushmaskmax[y] + 1 != brush_x) {
|
||||
brush_x = brushmaskmax[y] + 1;
|
||||
brush_setmask(0);
|
||||
}
|
||||
for(z = 0; z <= brush_x; z++)
|
||||
for(x = 0; x <= brush_x; x++)
|
||||
if(brushmask[(z<<4)|(x>>3)] & (1<<(x&7))) {
|
||||
edit_placenode(currlayer + y, cz - z, cx + x, blk);
|
||||
edit_placenode(currlayer + y, cz + z, cx + x, blk);
|
||||
edit_placenode(currlayer + y, cz - z, cx - x, blk);
|
||||
edit_placenode(currlayer + y, cz + z, cx - x, blk);
|
||||
if(brush_hollow) {
|
||||
edit_placenode(currlayer + x, cz - z, cx + y, blk);
|
||||
edit_placenode(currlayer + x, cz + z, cx + y, blk);
|
||||
edit_placenode(currlayer + x, cz - z, cx - y, blk);
|
||||
edit_placenode(currlayer + x, cz + z, cx - y, blk);
|
||||
}
|
||||
}
|
||||
}
|
||||
brush_x = i;
|
||||
brush_setmask(0);
|
||||
break;
|
||||
case 3:
|
||||
/* cylinder */
|
||||
hist_prepare(HIST_BRUSH, brush_x * brush_x * brush_x);
|
||||
for(y = 0; y < brush_z; y++)
|
||||
for(z = 0; z <= brush_x; z++)
|
||||
for(x = 0; x <= brush_x; x++)
|
||||
if(brushmask[(z<<4)|(x>>3)] & (1<<(x&7))) {
|
||||
edit_placenode(currlayer + y, cz - z, cx + x, blk);
|
||||
edit_placenode(currlayer + y, cz + z, cx + x, blk);
|
||||
edit_placenode(currlayer + y, cz - z, cx - x, blk);
|
||||
edit_placenode(currlayer + y, cz + z, cx - x, blk);
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
/* cuboid */
|
||||
hist_prepare(HIST_BRUSH, brush_x * brush_x * brush_x);
|
||||
for(y = 0; y < brush_y; y++)
|
||||
for(z = 0; z < brush_z; z++)
|
||||
for(x = 0; x < brush_x; x++)
|
||||
if(!brush_hollow || (brush_y > 1 && (!y || y == brush_y - 1)) ||
|
||||
!x || !z || x == brush_x - 1 || z == brush_z - 1)
|
||||
edit_placenode(currlayer + y, cz - z, cx + x, blk);
|
||||
break;
|
||||
case 5:
|
||||
/* pyramid */
|
||||
hist_prepare(HIST_BRUSH, brush_x * brush_x * brush_x);
|
||||
for(y = 0; y <= brush_y; y++) {
|
||||
i = (brush_z - 1) * y / brush_y;
|
||||
j = (brush_x - 1) * y / brush_y;
|
||||
for(z = i; z < brush_z - i; z++)
|
||||
for(x = j; x < brush_x - j; x++)
|
||||
if(!brush_hollow || !y || x == j || z == i || x == brush_x - j - 1 || z == brush_z - i - 1)
|
||||
edit_placenode(currlayer + y, cz - z, cx + x, blk);
|
||||
}
|
||||
break;
|
||||
case 6:
|
||||
/* upside-down pyramid */
|
||||
hist_prepare(HIST_BRUSH, brush_x * brush_x * brush_x);
|
||||
for(y = 0; y <= brush_y; y++) {
|
||||
i = (brush_z - 1) * y / brush_y;
|
||||
j = (brush_x - 1) * y / brush_y;
|
||||
for(z = i; z < brush_z - i; z++)
|
||||
for(x = j; x < brush_x - j; x++)
|
||||
if(!brush_hollow || !y || x == j || z == i || x == brush_x - j - 1 || z == brush_z - i - 1)
|
||||
edit_placenode(currlayer - y, cz - z, cx + x, blk);
|
||||
}
|
||||
break;
|
||||
case 7:
|
||||
/* roof / tent */
|
||||
hist_prepare(HIST_BRUSH, brush_x * brush_x * brush_x);
|
||||
for(y = 0; y <= brush_y; y++) {
|
||||
j = (brush_x - 1) * y / brush_y;
|
||||
for(z = 0; z < brush_z; z++)
|
||||
for(x = j; x < brush_x - j; x++)
|
||||
if(!brush_hollow || !y || x == j || !z || x == brush_x - j - 1 || z == brush_z - 1)
|
||||
edit_placenode(currlayer + y, cz - z, cx + x, blk);
|
||||
}
|
||||
break;
|
||||
}
|
||||
hist_commit();
|
||||
}
|
||||
|
||||
/**
|
||||
* Reentrant filler
|
||||
*/
|
||||
void brush_dofill(int y, int z, int x, int old, int blk)
|
||||
{
|
||||
if(x >= 0 && x < 256 && y >= 0 && y < 256 && z >=0 && z < 256 && nodes[y][z][x].param0 == old) {
|
||||
edit_placenode(y, z, x, blk);
|
||||
nodes[y][z][x].param2 = 0;
|
||||
brush_dofill(y - 1, z, x, old, blk);
|
||||
brush_dofill(y + 1, z, x, old, blk);
|
||||
brush_dofill(y, z - 1, x, old, blk);
|
||||
brush_dofill(y, z + 1, x, old, blk);
|
||||
brush_dofill(y, z, x - 1, old, blk);
|
||||
brush_dofill(y, z, x + 1, old, blk);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Replace an entire area of the same block
|
||||
*/
|
||||
void brush_floodfill(int blk)
|
||||
{
|
||||
if(nodes[currlayer][cz][cx].param0 && blk != nodes[currlayer][cz][cx].param0 && nodes[currlayer][cz][cx].param0) {
|
||||
hist_prepare(HIST_BRUSH, 1024);
|
||||
brush_dofill(currlayer, cz, cx, nodes[currlayer][cz][cx].param0, blk);
|
||||
hist_commit();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Return brush's height
|
||||
*/
|
||||
int brush_height()
|
||||
{
|
||||
return !brush_type ? 1 : (brush_type < 2 ? brush_x : (brush_type == 2 ? brush_z : brush_y));
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns true if coordinates are inside the brush or on the edge (if hollow)
|
||||
*/
|
||||
int brush_selected(int x, int z)
|
||||
{
|
||||
int X = x - cx, Z = cz - z;
|
||||
if(!brush_type || activetool != -1) return (!X && !Z);
|
||||
if(brush_type && brush_type < 4) {
|
||||
if(X < 0) X = -X;
|
||||
if(Z < 0) Z = -Z;
|
||||
return X > brush_x || Z > brush_x ? 0 : brushmask[(Z<<4)|(X>>3)] & (1<<(X&7));
|
||||
}
|
||||
return x < cx || z > cz || X >= brush_x || Z >= brush_z ? 0 :
|
||||
(brush_hollow ? (!X || X == brush_x - 1 || !Z || Z == brush_z - 1) : 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Decrease one of the brush parameters
|
||||
*/
|
||||
void brush_dec()
|
||||
{
|
||||
switch(brushfld) {
|
||||
case 0: if(brush_type) brush_type--; else brush_type = BRUSHTYPEMAX; break;
|
||||
case 1: brush_hollow ^= 1; break;
|
||||
case 2: if(brush_x > 1) brush_x--; break;
|
||||
case 3: if(brush_z > 1) brush_z--; break;
|
||||
case 4: if(brush_y > 1) brush_y--; break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Increase one of the brush parameters
|
||||
*/
|
||||
void brush_inc()
|
||||
{
|
||||
switch(brushfld) {
|
||||
case 0: if(brush_type < BRUSHTYPEMAX) brush_type++; else brush_type = 0; break;
|
||||
case 1: brush_hollow ^= 1; break;
|
||||
case 2: if(brush_x < BRUSHCOORDMAX) brush_x++; break;
|
||||
case 3: if(brush_z < BRUSHCOORDMAX) brush_z++; break;
|
||||
case 4: if(brush_y < BRUSHCOORDMAX) brush_y++; break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Redraw the Select Brush window
|
||||
*/
|
||||
void brush_redraw()
|
||||
{
|
||||
char str[8] = "\xC2\x80\xC2\x80";
|
||||
SDL_Rect src, dst;
|
||||
|
||||
brushmax = !brush_type ? 1 : (brush_type < 3 ? 3 : (brush_type == 3 ? 4 : 5));
|
||||
|
||||
src.x = src.y = dst.y = 0; dst.x = 36; src.w = dst.w = bg->w; src.h = dst.h = bg->h;
|
||||
SDL_BlitSurface(bg, &src, screen, &dst);
|
||||
SDL_BlitSurface(cl, &src, screen, &dst);
|
||||
SDL_BlitSurface(fg, &src, screen, &dst);
|
||||
|
||||
dst.x = 38; dst.h = brushmax * (font->height + 2) + 6; dst.y = 84 + (3 * 36); dst.w = 128 + 6 * font->width + 6;
|
||||
src.x = dst.x + 128; src.h = font->height;
|
||||
SDL_FillRect(screen, &dst, theme[THEME_BG]);
|
||||
|
||||
strmaxw = 34 + dst.w; dst.y += 4;
|
||||
sdlprint(dst.x + 4, dst.y, THEME_FG, THEME_BG, lang[TYPE]);
|
||||
src.y = dst.y;
|
||||
src.w = 4 * font->width + 4;
|
||||
SDL_FillRect(screen, &src, theme[THEME_INPBG]);
|
||||
sdlprint(src.x, dst.y, THEME_BG, !brushfld ? THEME_INPUT : THEME_FG, "\033");
|
||||
strsep = 0;
|
||||
str[1] = 0x80 + (4*brush_type) + (2*brush_hollow);
|
||||
str[3] = 0x81 + (4*brush_type) + (2*brush_hollow);
|
||||
sdlprint(src.x + font->width + font->width/2 + 1, dst.y, !brushfld ? THEME_INPUT : THEME_FG, THEME_INPBG, str);
|
||||
sdlprint(src.x + 4*font->width + 4, dst.y, THEME_BG, !brushfld ? THEME_INPUT : THEME_FG, "\032");
|
||||
strsep = 1; dst.y += font->height + 2;
|
||||
|
||||
if(brush_type) {
|
||||
sdlprint(dst.x + 4, dst.y, THEME_FG, THEME_BG, lang[HOLLOW]);
|
||||
src.y = dst.y;
|
||||
src.w = font->width + font->width/2 + 2;
|
||||
SDL_FillRect(screen, &src, theme[THEME_INPBG]);
|
||||
sdlprint(src.x + font->width/4 + 1, src.y, brushfld == 1 ? THEME_INPUT : THEME_FG, THEME_INPBG, brush_hollow ? "x" : " ");
|
||||
dst.y += font->height + 2;
|
||||
|
||||
sdlprint(dst.x + 4, dst.y, THEME_FG, THEME_BG, brush_type < 4 ? lang[RADIUS] : lang[WIDTH]);
|
||||
src.y = dst.y;
|
||||
src.w = 4 * font->width + 4;
|
||||
SDL_FillRect(screen, &src, theme[THEME_INPBG]);
|
||||
sprintf(str, "%3d", brush_x);
|
||||
sdlprint(src.x, dst.y, THEME_BG, brushfld == 2 ? THEME_INPUT : THEME_FG, "-");
|
||||
sdlprint(src.x + font->width + 1, dst.y, brushfld == 2 ? THEME_INPUT : THEME_FG, THEME_INPBG, str);
|
||||
sdlprint(src.x + 4*font->width + 4, dst.y, THEME_BG, brushfld == 2 ? THEME_INPUT : THEME_FG, "+");
|
||||
dst.y += font->height + 2;
|
||||
|
||||
if(brush_type > 2) {
|
||||
sdlprint(dst.x + 4, dst.y, THEME_FG, THEME_BG, brush_type == 3 ? lang[HEIGHT] : lang[LENGTH]);
|
||||
src.y = dst.y;
|
||||
src.w = 4 * font->width + 4;
|
||||
SDL_FillRect(screen, &src, theme[THEME_INPBG]);
|
||||
sprintf(str, "%3d", brush_z);
|
||||
sdlprint(src.x, dst.y, THEME_BG, brushfld == 3 ? THEME_INPUT : THEME_FG, "-");
|
||||
sdlprint(src.x + font->width + 1, dst.y, brushfld == 3 ? THEME_INPUT : THEME_FG, THEME_INPBG, str);
|
||||
sdlprint(src.x + 4*font->width + 4, dst.y, THEME_BG, brushfld == 3 ? THEME_INPUT : THEME_FG, "+");
|
||||
dst.y += font->height + 2;
|
||||
|
||||
if(brush_type > 3) {
|
||||
sdlprint(dst.x + 4, dst.y, THEME_FG, THEME_BG, lang[HEIGHT]);
|
||||
src.y = dst.y;
|
||||
src.w = 4 * font->width + 4;
|
||||
SDL_FillRect(screen, &src, theme[THEME_INPBG]);
|
||||
sprintf(str, "%3d", brush_y);
|
||||
sdlprint(src.x, dst.y, THEME_BG, brushfld == 4 ? THEME_INPUT : THEME_FG, "-");
|
||||
sdlprint(src.x + font->width + 1, dst.y, brushfld == 4 ? THEME_INPUT : THEME_FG, THEME_INPBG, str);
|
||||
sdlprint(src.x + 4*font->width + 4, dst.y, THEME_BG, brushfld == 4 ? THEME_INPUT : THEME_FG, "+");
|
||||
dst.y += font->height + 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Select Brush window mouse down event handler
|
||||
*/
|
||||
int brush_mousedown(SDL_Event *event)
|
||||
{
|
||||
if(event->button.x > 38 + 128 + 6 * (int)font->width + 6 || event->button.y < 84 + (3 * 36) ||
|
||||
event->button.y > brushmax * ((int)font->height + 2) + 8 + 84 + (3 * 36)) {
|
||||
brush_setmask(1);
|
||||
return 0;
|
||||
}
|
||||
brushfld = (event->button.y - 84 - (3 * 36) - 4) / (font->height + 2);
|
||||
if(event->button.x >= 38+128 && event->button.x < 38+128 + 2 * (int)font->width) brush_dec();
|
||||
else if(event->button.x >= 38+128 + 2 * (int)font->width) brush_inc();
|
||||
brush_redraw();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Select Brush window keypress event handler
|
||||
*/
|
||||
void brush_key(SDL_Event *event)
|
||||
{
|
||||
switch(event->type) {
|
||||
case SDL_KEYUP:
|
||||
switch (event->key.keysym.sym) {
|
||||
case SDLK_UP: if(!brushfld) brushfld = brushmax - 1; else brushfld--; break;
|
||||
case SDLK_DOWN: if(brushfld == brushmax - 1) brushfld = 0; else brushfld++; break;
|
||||
case SDLK_LEFT: brush_dec(); break;
|
||||
case SDLK_RIGHT: brush_inc(); break;
|
||||
case SDLK_SPACE: brush_hollow ^= 1; break;
|
||||
default:
|
||||
brush_setmask(1);
|
||||
sdldo(-1);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
362
src/edit.c
|
@ -29,70 +29,35 @@
|
|||
|
||||
#include "main.h"
|
||||
|
||||
int dx = 0, dz = 0, cx = 0, cz = 0, ox = 0, oy = 0, up = 0;
|
||||
int histcurr = 0, histmax = 0;
|
||||
hist_t history[HISTORYMAX];
|
||||
int dx = 0, dz = 0, cx = 0, cz = 0, ox = 0, oy = 0, up = 0, zoom = 32;
|
||||
char dstr[32];
|
||||
|
||||
/**
|
||||
* Add to history
|
||||
*/
|
||||
void edit_addhistory(int y, int z, int x, unsigned short op0, unsigned char op2, unsigned short np0, unsigned char np2)
|
||||
{
|
||||
if(op0 == np0 && op2 == np2) return;
|
||||
if(histcurr != 0) {
|
||||
memcpy(&history[0], &history[histcurr], (histmax - histcurr) * sizeof(hist_t));
|
||||
histmax -= histcurr;
|
||||
if(histmax < 0) histmax = 0;
|
||||
}
|
||||
if(histmax)
|
||||
memmove(&history[1], &history[0], histmax * sizeof(hist_t));
|
||||
if(histmax + 1< HISTORYMAX) histmax++;
|
||||
history[0].x = x;
|
||||
history[0].y = y;
|
||||
history[0].z = z;
|
||||
history[0].oldparam0 = op0;
|
||||
history[0].oldparam2 = op2;
|
||||
history[0].newparam0 = np0;
|
||||
history[0].newparam2 = np2;
|
||||
histcurr = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Undo from history
|
||||
*/
|
||||
void edit_undo()
|
||||
{
|
||||
if(histcurr < histmax) {
|
||||
nodes[history[histcurr].y][history[histcurr].z][history[histcurr].x].param0 = history[histcurr].oldparam0;
|
||||
nodes[history[histcurr].y][history[histcurr].z][history[histcurr].x].param2 = history[histcurr].oldparam2;
|
||||
if(currlayer == history[histcurr].y && cz == history[histcurr].z && cx == history[histcurr].x)
|
||||
status = history[histcurr].oldparam0 ? blocks[history[histcurr].oldparam0].name : NULL;
|
||||
histcurr++;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Redo from history
|
||||
*/
|
||||
void edit_redo()
|
||||
{
|
||||
if(histcurr) {
|
||||
histcurr--;
|
||||
nodes[history[histcurr].y][history[histcurr].z][history[histcurr].x].param0 = history[histcurr].newparam0;
|
||||
nodes[history[histcurr].y][history[histcurr].z][history[histcurr].x].param2 = history[histcurr].newparam2;
|
||||
if(currlayer == history[histcurr].y && cz == history[histcurr].z && cx == history[histcurr].x)
|
||||
status = history[histcurr].newparam0 ? blocks[history[histcurr].newparam0].name : NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Place a node
|
||||
*/
|
||||
void edit_placenode(int y, int z, int x, int i)
|
||||
{
|
||||
if(i != nodes[y][z][x].param0) {
|
||||
edit_addhistory(y, z, x, nodes[y][z][x].param0, nodes[y][z][x].param2, i, nodes[y][z][x].param2);
|
||||
int j, k;
|
||||
|
||||
if(x >= 0 && x < 256 && y >= 0 && y < 256 && z >=0 && z < 256 && i != nodes[y][z][x].param0) {
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
hist_add(y, z, x, nodes[y][z][x].param0, nodes[y][z][x].param2, i, nodes[y][z][x].param2);
|
||||
if(i) {
|
||||
if(x < mix) mix = x;
|
||||
if(x > max) max = x;
|
||||
if(y < miy) miy = y;
|
||||
if(y > may) may = y;
|
||||
if(z < miz) miz = z;
|
||||
if(z > maz) maz = z;
|
||||
if(nodes[y][z][x].param0) {
|
||||
for(k = 0, j = 1; j < 15; j++)
|
||||
if(palette[j] == nodes[y][z][x].param0) { k = j; break; }
|
||||
if(!k) {
|
||||
for(j = 15; j > activeblock + 1; j--) palette[j] = palette[j - 1];
|
||||
palette[activeblock + 1] = nodes[y][z][x].param0;
|
||||
}
|
||||
}
|
||||
}
|
||||
blocks[nodes[y][z][x].param0].numref--;
|
||||
blocks[i].numref++;
|
||||
nodes[y][z][x].param0 = i;
|
||||
|
@ -104,196 +69,122 @@ void edit_placenode(int y, int z, int x, int i)
|
|||
/**
|
||||
* Redraw the Edit Area
|
||||
*/
|
||||
void edit_redraw()
|
||||
void edit_redraw(int full)
|
||||
{
|
||||
int i, j, k = 160, l, X, Z, x, y, z, sx, sy, mx;
|
||||
unsigned char *b = (uint8_t*)&theme[THEME_TABBG];
|
||||
SDL_Rect dst, src;
|
||||
|
||||
if(!dx || !dz) {
|
||||
dst.x = 36; dst.y = 0; dst.w = screen->w - 36; dst.h = screen->h - font->height;
|
||||
SDL_FillRect(screen, &dst, theme[THEME_TABBG]);
|
||||
return;
|
||||
}
|
||||
|
||||
mx = ((bg->w / 2 / dx) + (bg->h / 2 / dz)) /2;
|
||||
sx = bg->w / 2;
|
||||
sy = bg->h / 2;
|
||||
|
||||
dst.x = dst.y = 0; dst.w = bg->w; dst.h = bg->h;
|
||||
SDL_FillRect(bg, &dst, theme[THEME_TABBG]);
|
||||
src.x = 0; src.y = 4 * 32; dst.x = bg->w - 32; dst.y = bg->h - 32;
|
||||
src.w = src.h = dst.w = dst.h = 32;
|
||||
SDL_BlitSurface(icons, &src, bg, &dst);
|
||||
memset(fg->pixels, 0, bg->pitch * fg->h);
|
||||
src.w = src.h = dst.w = dst.h = 32; src.x = src.y = 0;
|
||||
for(y = mx > currlayer ? 0 : currlayer - mx; y < currlayer; y++) {
|
||||
for(z = -mx; z < mx; z++) {
|
||||
for(x = -mx; x < mx; x++) {
|
||||
dst.x = sx + dx * (x - z);
|
||||
dst.y = sy + dz * (z + x + 2*(currlayer - y));
|
||||
X = 127 + x + oy + ox;
|
||||
Z = 127 + z + oy - ox;
|
||||
if(X < 0 || X > 255 || Z < 0 || Z > 255 ||
|
||||
dst.x + 32 < 0 || dst.x > bg->w || dst.y + 32 < 0 || dst.y > bg->h) continue;
|
||||
i = nodes[y][Z][X].param0;
|
||||
j = nodes[y][Z][X].param2 & 0x1F;
|
||||
if(i) {
|
||||
if(!blocks[i].dr[j]) {
|
||||
blocks[i].dr[j] = (unsigned char *)malloc(32 * 32 * 4);
|
||||
if(!blocks[i].dr[j]) error(lang[ERR_MEM]);
|
||||
memcpy(blocks[i].dr[j], blocks[i].img[j] ? blocks[i].img[j] : (blocks[i].img[0] ? blocks[i].img[0] :
|
||||
(uint8_t*)icons->pixels + 32 * icons->pitch), 32 * 32 * 4);
|
||||
for(l = 0; l < 32 * 32 * 4; l += 4) {
|
||||
blocks[i].dr[j][l+0] = (b[0]*k + (256 - k)*blocks[i].dr[j][l+0])>>8;
|
||||
blocks[i].dr[j][l+1] = (b[0]*k + (256 - k)*blocks[i].dr[j][l+1])>>8;
|
||||
blocks[i].dr[j][l+2] = (b[0]*k + (256 - k)*blocks[i].dr[j][l+2])>>8;
|
||||
if(full) {
|
||||
dst.x = dst.y = 0; dst.w = bg->w; dst.h = bg->h;
|
||||
SDL_FillRect(bg, &dst, theme[THEME_TABBG]);
|
||||
src.x = 0; src.y = 4 * 32; dst.x = bg->w - 32; dst.y = bg->h - 32;
|
||||
src.w = src.h = dst.w = dst.h = 32;
|
||||
SDL_BlitSurface(icons, &src, bg, &dst);
|
||||
src.x = src.y = 0;
|
||||
/* background, layers below */
|
||||
for(y = mx > currlayer ? 0 : currlayer - mx; y < currlayer; y++) {
|
||||
for(z = -mx; z < mx; z++) {
|
||||
for(x = -mx; x < mx; x++) {
|
||||
dst.x = sx + dx * (x - z);
|
||||
dst.y = sy + dz * (z + x + 2*(currlayer - y));
|
||||
X = 127 + x + oy + ox;
|
||||
Z = 127 + z + oy - ox;
|
||||
if(X < 0 || X > 255 || Z < 0 || Z > 255 ||
|
||||
dst.x + 32 < 0 || dst.x > bg->w || dst.y + 32 < 0 || dst.y > bg->h) continue;
|
||||
i = nodes[y][Z][X].param0;
|
||||
j = nodes[y][Z][X].param2 & 0x1F;
|
||||
if(i) {
|
||||
if(!blocks[i].dr[j]) {
|
||||
blocks[i].dr[j] = (unsigned char *)malloc(32 * 32 * 4);
|
||||
if(!blocks[i].dr[j]) error(lang[ERR_MEM]);
|
||||
memcpy(blocks[i].dr[j], blocks[i].img[j] ? blocks[i].img[j] : (blocks[i].img[0] ? blocks[i].img[0] :
|
||||
(uint8_t*)icons->pixels + 32 * icons->pitch), 32 * 32 * 4);
|
||||
for(l = 0; l < 32 * 32 * 4; l += 4) {
|
||||
blocks[i].dr[j][l+0] = (b[0]*k + (256 - k)*blocks[i].dr[j][l+0])>>8;
|
||||
blocks[i].dr[j][l+1] = (b[0]*k + (256 - k)*blocks[i].dr[j][l+1])>>8;
|
||||
blocks[i].dr[j][l+2] = (b[0]*k + (256 - k)*blocks[i].dr[j][l+2])>>8;
|
||||
}
|
||||
}
|
||||
blk->pixels = blocks[i].dr[j];
|
||||
SDL_BlitSurface(blk, &src, bg, &dst);
|
||||
}
|
||||
blk->pixels = blocks[i].dr[j];
|
||||
SDL_BlitSurface(blk, &src, bg, &dst);
|
||||
}
|
||||
}
|
||||
}
|
||||
/* foreground, layers above */
|
||||
memset(fg->pixels, 0, fg->pitch * fg->h);
|
||||
if(up > mx) up = mx;
|
||||
for(y = currlayer + 1; y < (currlayer + mx < 255 ? currlayer + mx : 255); y++) {
|
||||
for(z = -mx; z < mx; z++) {
|
||||
for(x = -mx; x < mx; x++) {
|
||||
dst.x = sx + dx * (x - z);
|
||||
dst.y = sy + dz * (z + x + (currlayer - y - 1) - mx + up);
|
||||
X = 127 + x + oy + ox;
|
||||
Z = 127 + z + oy - ox;
|
||||
if(X < 0 || X > 255 || Z < 0 || Z > 255 ||
|
||||
dst.x + 32 < 36 || dst.x > fg->w || dst.y + 32 < 0 || dst.y > fg->h) continue;
|
||||
i = nodes[y][Z][X].param0;
|
||||
j = nodes[y][Z][X].param2 & 0x1F;
|
||||
if(i) {
|
||||
if(!blocks[i].tr[j]) {
|
||||
blocks[i].tr[j] = (unsigned char *)malloc(32 * 32 *4);
|
||||
if(!blocks[i].tr[j]) error(lang[ERR_MEM]);
|
||||
memcpy(blocks[i].tr[j], blocks[i].img[j] ? blocks[i].img[j] : (blocks[i].img[0] ? blocks[i].img[0] :
|
||||
(uint8_t*)icons->pixels + 32 * icons->pitch), 32 * 32 * 4);
|
||||
for(l = 0; l < 32 * 32 * 4; l += 4) blocks[i].tr[j][l+3] >>= 2;
|
||||
}
|
||||
blk->pixels = blocks[i].tr[j];
|
||||
SDL_BlitSurface(blk, &src, fg, &dst);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
for(i = 0; i < fg->pitch * fg->h; i += 4) ((uint8_t*)fg->pixels)[i + 3] >>= 1;
|
||||
}
|
||||
/* current layer */
|
||||
memset(cl->pixels, 0, cl->pitch * cl->h);
|
||||
for(z = -mx; z < mx; z++) {
|
||||
for(x = -mx; x < mx; x++) {
|
||||
src.w = src.h = dst.w = dst.h = 32; src.x = src.y = 0;
|
||||
dst.x = sx + dx * (x - z);
|
||||
dst.y = sy + dz * (z + x);
|
||||
X = 127 + x + oy + ox;
|
||||
Z = 127 + z + oy - ox;
|
||||
if(X < 0 || X > 255 || Z < 0 || Z > 255 ||
|
||||
dst.x + 32 < 0 || dst.x > bg->w || dst.y + 32 < 0 || dst.y > bg->h) continue;
|
||||
dst.x + 32 < 0 || dst.x > cl->w || dst.y + 32 < 0 || dst.y > cl->h) continue;
|
||||
if(dst.x < 0) { src.x = -dst.x; src.w += dst.x; dst.w += dst.x; dst.x = 0; }
|
||||
if(dst.y < 0) { src.y = -dst.y; src.h += dst.y; dst.h += dst.y; dst.y = 0; }
|
||||
i = nodes[currlayer][Z][X].param0;
|
||||
j = nodes[currlayer][Z][X].param2 & 0x1F;
|
||||
if((X == cx && Z == cz) || brush_selected(X, Z)) {
|
||||
blk->pixels = (uint8_t*)icons->pixels + 64 * icons->pitch;
|
||||
SDL_BlitSurface(blk, &src, cl, &dst);
|
||||
}
|
||||
if(i) {
|
||||
blk->pixels = blocks[i].img[j] ? blocks[i].img[j] : (blocks[i].img[0] ? blocks[i].img[0] :
|
||||
(uint8_t*)icons->pixels + 32 * icons->pitch);
|
||||
SDL_BlitSurface(blk, &src, bg, &dst);
|
||||
SDL_BlitSurface(blk, &src, cl, &dst);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(up > mx) up = mx;
|
||||
for(y = currlayer + 1; y < (currlayer + mx < 255 ? currlayer + mx : 255); y++) {
|
||||
for(z = -mx; z < mx; z++) {
|
||||
for(x = -mx; x < mx; x++) {
|
||||
dst.x = sx + dx * (x - z);
|
||||
dst.y = sy + dz * (z + x + (currlayer - y - 1) - mx + up);
|
||||
X = 127 + x + oy + ox;
|
||||
Z = 127 + z + oy - ox;
|
||||
if(X < 0 || X > 255 || Z < 0 || Z > 255 ||
|
||||
dst.x + 32 < 36 || dst.x > fg->w || dst.y + 32 < 0 || dst.y > fg->h) continue;
|
||||
i = nodes[y][Z][X].param0;
|
||||
j = nodes[y][Z][X].param2 & 0x1F;
|
||||
if(i) {
|
||||
if(!blocks[i].tr[j]) {
|
||||
blocks[i].tr[j] = (unsigned char *)malloc(32 * 32 *4);
|
||||
if(!blocks[i].tr[j]) error(lang[ERR_MEM]);
|
||||
memcpy(blocks[i].tr[j], blocks[i].img[j] ? blocks[i].img[j] : (blocks[i].img[0] ? blocks[i].img[0] :
|
||||
(uint8_t*)icons->pixels + 32 * icons->pitch), 32 * 32 * 4);
|
||||
for(l = 0; l < 32 * 32 * 4; l += 4) blocks[i].tr[j][l+3] >>= 2;
|
||||
}
|
||||
blk->pixels = blocks[i].tr[j];
|
||||
SDL_BlitSurface(blk, &src, fg, &dst);
|
||||
}
|
||||
if((X == cx && Z == cz) || brush_selected(X, Z)) {
|
||||
blk->pixels = (uint8_t*)icons->pixels + 96 * icons->pitch;
|
||||
SDL_BlitSurface(blk, &src, cl, &dst);
|
||||
}
|
||||
}
|
||||
}
|
||||
src.x = src.y = dst.y = 0; dst.x = 36; src.w = dst.w = bg->w; src.h = dst.h = bg->h;
|
||||
SDL_BlitSurface(bg, &src, screen, &dst);
|
||||
SDL_BlitSurface(fg, &src, screen, &dst);
|
||||
edit_showcursor(0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Hide the block cursor
|
||||
*/
|
||||
void edit_hidecursor()
|
||||
{
|
||||
SDL_Rect src, dst;
|
||||
int z = cz - 127 - oy + ox, x = cx - 127 - oy - ox;
|
||||
|
||||
src.x = dst.x = ((screen->w - 36) / 2) + dx * (x - z);
|
||||
src.y = dst.y = ((screen->h - font->height) / 2) + dz * (z + x);
|
||||
dst.x += 36; src.w = dst.w = src.h = dst.h = 32;
|
||||
if(src.y < 0) { src.h += src.y; dst.h += src.y; src.y = dst.y = 0; }
|
||||
SDL_BlitSurface(bg, &src, screen, &dst);
|
||||
SDL_BlitSurface(fg, &src, screen, &dst);
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate the block cursor
|
||||
*/
|
||||
void edit_gencursor(int onlybg)
|
||||
{
|
||||
SDL_Rect src, dst;
|
||||
SDL_Surface *surface = onlybg ? bg : screen;
|
||||
int i, j, x, z, sx = bg->w / 2, sy = bg->h / 2;
|
||||
|
||||
src.w = dst.w = src.h = dst.h = 32;
|
||||
src.x = src.y = 0;
|
||||
dst.x = sx + dx * ((cx - 127 - oy - ox) - (cz - 127 - oy + ox)) + (!onlybg ? 36 : 0);
|
||||
dst.y = sy + dz * ((cz - 127 - oy + ox) + (cx - 127 - oy - ox));
|
||||
SDL_SetClipRect(surface, &dst);
|
||||
if(onlybg) {
|
||||
SDL_FillRect(surface, &dst, theme[THEME_TABBG]);
|
||||
if(currlayer > 0)
|
||||
for(z = cz - 2; z <= cz + 2; z++) {
|
||||
for(x = cx - 2; x <= cx + 2; x++) {
|
||||
dst.w = dst.h = 32; src.y = 0;
|
||||
dst.x = sx + dx * ((x - 127 - oy - ox) - (z - 127 - oy + ox)) + (!onlybg ? 36 : 0);
|
||||
dst.y = sy + dz * ((z - 127 - oy + ox) + (x - 127 - oy - ox) + 2);
|
||||
if(dst.y < 0) { src.y = -dst.y; dst.y = 0; }
|
||||
if(x < 0 || x > 255 || z < 0 || z > 255 || dst.x + 32 < 0 || dst.x > surface->w || dst.y > surface->h)
|
||||
continue;
|
||||
i = nodes[currlayer-1][z][x].param0;
|
||||
j = nodes[currlayer-1][z][x].param2 & 0x1F;
|
||||
if(i) {
|
||||
blk->pixels = blocks[i].dr[j];
|
||||
SDL_BlitSurface(blk, &src, surface, &dst);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/* display 5 x 5 surrounding of the cursor block */
|
||||
for(z = cz - 2; z <= cz + 2; z++) {
|
||||
for(x = cx - 2; x <= cx + 2; x++) {
|
||||
dst.w = dst.h = 32; src.y = 0;
|
||||
dst.x = sx + dx * ((x - 127 - oy - ox) - (z - 127 - oy + ox)) + (!onlybg ? 36 : 0);
|
||||
dst.y = sy + dz * ((z - 127 - oy + ox) + (x - 127 - oy - ox));
|
||||
if(dst.y < 0) { src.y = -dst.y; dst.y = 0; }
|
||||
if(x < 0 || x > 255 || z < 0 || z > 255 || dst.x + 32 < 0 || dst.x > surface->w || dst.y > surface->h) continue;
|
||||
i = nodes[currlayer][z][x].param0;
|
||||
j = nodes[currlayer][z][x].param2 & 0x1F;
|
||||
if(!onlybg && z == cz && x == cx) {
|
||||
blk->pixels = (uint8_t*)icons->pixels + 64 * icons->pitch;
|
||||
SDL_BlitSurface(blk, &src, surface, &dst);
|
||||
}
|
||||
if(i) {
|
||||
blk->pixels = blocks[i].img[j] ? blocks[i].img[j] : (blocks[i].img[0] ? blocks[i].img[0] :
|
||||
(uint8_t*)icons->pixels + 32 * icons->pitch);
|
||||
SDL_BlitSurface(blk, &src, surface, &dst);
|
||||
}
|
||||
if(!onlybg && z == cz && x == cx) {
|
||||
blk->pixels = (uint8_t*)icons->pixels + 96 * icons->pitch;
|
||||
SDL_BlitSurface(blk, &src, surface, &dst);
|
||||
}
|
||||
}
|
||||
}
|
||||
SDL_SetClipRect(surface, NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
* Show the block cursor
|
||||
*/
|
||||
void edit_showcursor(int painting)
|
||||
{
|
||||
SDL_Rect src, dst, rect;
|
||||
int z = cz - 127 - oy + ox, x = cx - 127 - oy - ox;
|
||||
|
||||
src.w = dst.w = src.h = dst.h = rect.w = rect.h = 32;
|
||||
src.x = dst.x = ((screen->w - 36) / 2) + dx * (x - z);
|
||||
src.y = dst.y = ((screen->h - font->height) / 2) + dz * (z + x);
|
||||
rect.x = rect.y = 0; dst.x += 36;
|
||||
if(src.y < 0) { src.h += src.y; dst.h += src.y; src.y = dst.y = 0; }
|
||||
/* save back to the background when we're placing new blocks */
|
||||
if(painting) edit_gencursor(1);
|
||||
SDL_BlitSurface(bg, &src, screen, &dst);
|
||||
edit_gencursor(0);
|
||||
SDL_BlitSurface(cl, &src, screen, &dst);
|
||||
SDL_BlitSurface(fg, &src, screen, &dst);
|
||||
}
|
||||
|
||||
|
@ -326,13 +217,14 @@ void edit_scroll(SDL_Event *event)
|
|||
*/
|
||||
void edit_mouseover(SDL_Event *event)
|
||||
{
|
||||
int l, k;
|
||||
int l, k, x, y, X = cx, Z = cz;
|
||||
x = event->type == SDL_MOUSEMOTION ? event->motion.x : event->button.x;
|
||||
y = event->type == SDL_MOUSEMOTION ? event->motion.y : event->button.y;
|
||||
|
||||
edit_hidecursor();
|
||||
l = (int)(event->motion.y - (bg->h / 2));
|
||||
l = (int)(y - (bg->h / 2));
|
||||
if(l < 0) l -= dz;
|
||||
l /= dz; l--;
|
||||
k = (int)(event->motion.x - 36 - (bg-> w / 2) - dx/2);
|
||||
k = (int)(x - 36 - (bg-> w / 2) - dx/2);
|
||||
if(k < 0) k -= dx;
|
||||
k -= (l & 1 ? dx/2 : 0);
|
||||
k /= dx;
|
||||
|
@ -340,24 +232,20 @@ void edit_mouseover(SDL_Event *event)
|
|||
cx = l - cz;
|
||||
cz += 127 + oy - ox;
|
||||
cx += 127 + oy + ox;
|
||||
if(event->motion.state)
|
||||
edit_placenode(currlayer, cz, cx, event->motion.state == 1 ? palette[activeblock] : 0);
|
||||
if((cx != X || cz != Z) && event->type == SDL_MOUSEMOTION && event->motion.state)
|
||||
brush_place(event->motion.state == 1 ? palette[activeblock] : 0);
|
||||
status = nodes[currlayer][cz][cx].param0 ? blocks[nodes[currlayer][cz][cx].param0].name : NULL;
|
||||
edit_showcursor(event->button.button == 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Edit Area mouse down event handler
|
||||
*/
|
||||
void edit_mousedown(_unused SDL_Event *event)
|
||||
void edit_mousedown(SDL_Event *event)
|
||||
{
|
||||
if(event->button.button != 1)
|
||||
edit_rotate(currlayer, cz, cx, 1 - shift);
|
||||
else {
|
||||
edit_hidecursor();
|
||||
edit_placenode(currlayer, cz, cx, palette[activeblock]);
|
||||
edit_showcursor(1);
|
||||
}
|
||||
else
|
||||
brush_place(palette[activeblock]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -368,10 +256,10 @@ void edit_key(SDL_Event *event)
|
|||
switch (event->key.keysym.sym) {
|
||||
case SDLK_ESCAPE:
|
||||
case SDLK_q: quitting = 1; break;
|
||||
case SDLK_s: if(!shift) sdldosave(); break;
|
||||
case SDLK_l: sdldoload(); break;
|
||||
case SDLK_p: sdldopreview(); break;
|
||||
case SDLK_r: sdldorotate(1 - shift); break;
|
||||
case SDLK_l: sdldo(0); break;
|
||||
case SDLK_s: if(!shift) sdldo(1); break;
|
||||
case SDLK_p: sdldo(2); break;
|
||||
case SDLK_r: sdldo(4 - shift); break;
|
||||
case SDLK_g: gndlayer = currlayer; break;
|
||||
case SDLK_PLUS: case SDLK_EQUALS: mts_layerprob(+1); break;
|
||||
case SDLK_MINUS: mts_layerprob(-1); break;
|
||||
|
@ -383,6 +271,9 @@ void edit_key(SDL_Event *event)
|
|||
if(palette[event->key.keysym.sym - SDLK_0])
|
||||
activeblock = event->key.keysym.sym - SDLK_0;
|
||||
break;
|
||||
case SDLK_x: sdldo(6 + ctrl); break;
|
||||
case SDLK_c: sdldo(8 + ctrl); break;
|
||||
case SDLK_v: sdldo(10 + ctrl); break;
|
||||
case SDLK_h: dx--; sprintf(dstr, "dx %d dz %d", dx, dz); status = dstr; break;
|
||||
case SDLK_k: dx++; sprintf(dstr, "dx %d dz %d", dx, dz); status = dstr; break;
|
||||
case SDLK_u: dz--; sprintf(dstr, "dx %d dz %d", dx, dz); status = dstr; break;
|
||||
|
@ -434,10 +325,11 @@ void edit_key(SDL_Event *event)
|
|||
case SDLK_BACKSPACE:
|
||||
case SDLK_DELETE:
|
||||
case SDLK_SPACE:
|
||||
edit_placenode(currlayer, cz, cx, event->key.keysym.sym == SDLK_SPACE && !shift ? palette[activeblock] : 0);
|
||||
brush_place(event->key.keysym.sym == SDLK_SPACE && !shift ? palette[activeblock] : 0);
|
||||
break;
|
||||
case SDLK_z: edit_undo(); break;
|
||||
case SDLK_y: edit_redo(); break;
|
||||
case SDLK_RETURN: brush_floodfill(!shift ? palette[activeblock] : 0); break;
|
||||
case SDLK_z: hist_undo(); break;
|
||||
case SDLK_y: hist_redo(); break;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -491,5 +383,5 @@ void edit_rotate(int y, int z, int x, int ccw)
|
|||
if(!blocks[nodes[y][z][x].param0].img[nodes[y][z][x].param2])
|
||||
nodes[y][z][x].param2 = nodes[y][z][x].param2 == 3 && blocks[nodes[y][z][x].param0].img[1] ? 1 : 0;
|
||||
if(oldparam2 != nodes[y][z][x].param2)
|
||||
edit_addhistory(y, x, z, nodes[y][z][x].param0, oldparam2, nodes[y][z][x].param0, nodes[y][z][x].param2);
|
||||
hist_add(y, x, z, nodes[y][z][x].param0, oldparam2, nodes[y][z][x].param0, nodes[y][z][x].param2);
|
||||
}
|
||||
|
|
BIN
src/font.psf.gz
|
@ -0,0 +1,380 @@
|
|||
/*
|
||||
* mtsedit/hist.c
|
||||
*
|
||||
* Copyright (C) 2019 bzt (bztsrc@gitlab)
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person
|
||||
* obtaining a copy of this software and associated documentation
|
||||
* files (the "Software"), to deal in the Software without
|
||||
* restriction, including without limitation the rights to use, copy,
|
||||
* modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||
* of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be
|
||||
* included in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
* DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* @brief History (undo / redo) functions
|
||||
*
|
||||
*/
|
||||
|
||||
#include "main.h"
|
||||
|
||||
#define HISTORYMAX 256
|
||||
|
||||
int histtop = 0, histmax = 0, histcapacity = 0;
|
||||
histlist_t history[HISTORYMAX];
|
||||
histlist_t histcurr;
|
||||
|
||||
/**
|
||||
* Prepare for a history transaction
|
||||
*/
|
||||
void hist_prepare(int type, int volume)
|
||||
{
|
||||
int i, x, y, z;
|
||||
|
||||
if(histcurr.type != HIST_EMPTY) hist_commit();
|
||||
if(type > HIST_NODE)
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
switch(type) {
|
||||
case HIST_NODE: volume = 0; break;
|
||||
case HIST_BRUSH:
|
||||
if(volume < 1) volume = (may - miy + 1) * (maz - miz + 1) * (max - mix + 1);
|
||||
histcurr.data.multiple.entry = (hist_t*)malloc(volume * sizeof(hist_t));
|
||||
if(!histcurr.data.multiple.entry) error(lang[ERR_MEM]);
|
||||
break;
|
||||
case HIST_ADDY:
|
||||
case HIST_DELY:
|
||||
histcurr.y = volume;
|
||||
histcurr.x = mix;
|
||||
histcurr.z = miz;
|
||||
histcurr.data.bulk.pitch = max - mix + 1;
|
||||
histcurr.data.bulk.numentry = volume = (maz - miz + 1) * (max - mix + 1);
|
||||
histcurr.data.bulk.entry = (node_t*)malloc(volume * sizeof(hist_t));
|
||||
if(!histcurr.data.bulk.entry) error(lang[ERR_MEM]);
|
||||
if(type == HIST_DELY) {
|
||||
for(i = 0, z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++, i++)
|
||||
memcpy(&histcurr.data.bulk.entry[i], &nodes[currlayer][z][x], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_ADDZ:
|
||||
case HIST_DELZ:
|
||||
histcurr.z = volume;
|
||||
histcurr.x = mix;
|
||||
histcurr.y = miy;
|
||||
histcurr.data.bulk.pitch = max - mix + 1;
|
||||
histcurr.data.bulk.numentry = volume = (may - miy + 1) * (max - mix + 1);
|
||||
histcurr.data.bulk.entry = (node_t*)malloc(volume * sizeof(hist_t));
|
||||
if(!histcurr.data.bulk.entry) error(lang[ERR_MEM]);
|
||||
if(type == HIST_DELZ) {
|
||||
for(i = 0, y = miy; y <= may; y++)
|
||||
for(x = mix; x <= max; x++, i++)
|
||||
memcpy(&histcurr.data.bulk.entry[i], &nodes[y][cz][x], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_ADDX:
|
||||
case HIST_DELX:
|
||||
histcurr.x = volume;
|
||||
histcurr.y = miy;
|
||||
histcurr.z = miz;
|
||||
histcurr.data.bulk.pitch = maz - miz + 1;
|
||||
histcurr.data.bulk.numentry = volume = (may - miy + 1) * (maz - miz + 1);
|
||||
histcurr.data.bulk.entry = (node_t*)malloc(volume * sizeof(hist_t));
|
||||
if(!histcurr.data.bulk.entry) error(lang[ERR_MEM]);
|
||||
if(type == HIST_DELX) {
|
||||
for(i = 0, y = miy; y <= may; y++)
|
||||
for(z = miz; z <= maz; z++, i++)
|
||||
memcpy(&histcurr.data.bulk.entry[i], &nodes[y][z][cx], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
}
|
||||
histcurr.type = type;
|
||||
histcapacity = volume;
|
||||
}
|
||||
|
||||
/**
|
||||
* Commit a history transaction
|
||||
*/
|
||||
void hist_commit()
|
||||
{
|
||||
int i, j, x, y, z, op0, op2, np0, np2;
|
||||
|
||||
if(histcurr.type > HIST_BRUSH && !histcurr.data.bulk.numentry) {
|
||||
if(histcurr.data.bulk.entry) free(histcurr.data.bulk.entry);
|
||||
memset(&histcurr, 0, sizeof(histlist_t));
|
||||
histcapacity = 0;
|
||||
return;
|
||||
}
|
||||
if(histcurr.type == HIST_BRUSH) {
|
||||
if(!histcurr.data.multiple.numentry) {
|
||||
if(histcurr.data.multiple.entry) free(histcurr.data.multiple.entry);
|
||||
memset(&histcurr, 0, sizeof(histlist_t));
|
||||
histcapacity = 0;
|
||||
return;
|
||||
}
|
||||
/* if there's only one node in the list, convert it to single node to save memory */
|
||||
if(histcurr.data.multiple.numentry == 1) {
|
||||
histcurr.x = histcurr.data.multiple.entry[0].x;
|
||||
histcurr.y = histcurr.data.multiple.entry[0].y;
|
||||
histcurr.z = histcurr.data.multiple.entry[0].z;
|
||||
op0 = histcurr.data.multiple.entry[0].oldparam0;
|
||||
op2 = histcurr.data.multiple.entry[0].oldparam2;
|
||||
np0 = histcurr.data.multiple.entry[0].newparam0;
|
||||
np2 = histcurr.data.multiple.entry[0].newparam2;
|
||||
free(histcurr.data.multiple.entry);
|
||||
histcurr.data.node.oldparam0 = op0;
|
||||
histcurr.data.node.oldparam2 = op2;
|
||||
histcurr.data.node.newparam0 = np0;
|
||||
histcurr.data.node.newparam2 = np2;
|
||||
} else
|
||||
if(histcurr.data.multiple.numentry != histcapacity) {
|
||||
histcurr.data.multiple.entry = (hist_t*)realloc(histcurr.data.multiple.entry,
|
||||
histcurr.data.multiple.numentry * sizeof(hist_t));
|
||||
if(!histcurr.data.multiple.entry) error(lang[ERR_MEM]);
|
||||
}
|
||||
}
|
||||
if(histcurr.type == HIST_EMPTY || (histcurr.type == HIST_NODE &&
|
||||
histcurr.data.node.oldparam0 == histcurr.data.node.newparam0 &&
|
||||
histcurr.data.node.oldparam2 == histcurr.data.node.newparam2)) {
|
||||
memset(&histcurr, 0, sizeof(histlist_t));
|
||||
return;
|
||||
}
|
||||
if(histcurr.type == HIST_ADDY) {
|
||||
for(i = j = 0, z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++, i++)
|
||||
if(nodes[currlayer][z][x].param0) {
|
||||
memcpy(&histcurr.data.bulk.entry[i], &nodes[currlayer][z][x], sizeof(node_t));
|
||||
j++;
|
||||
}
|
||||
if(!j) {
|
||||
free(histcurr.data.bulk.entry);
|
||||
histcurr.data.bulk.entry = NULL;
|
||||
histcurr.data.bulk.numentry = 0;
|
||||
}
|
||||
}
|
||||
if(histcurr.type == HIST_ADDZ) {
|
||||
for(i = j = 0, y = miy; y <= may; y++)
|
||||
for(x = mix; x <= max; x++, i++)
|
||||
if(nodes[y][cz][x].param0) {
|
||||
memcpy(&histcurr.data.bulk.entry[i], &nodes[y][cz][x], sizeof(node_t));
|
||||
j++;
|
||||
}
|
||||
if(!j) {
|
||||
free(histcurr.data.bulk.entry);
|
||||
histcurr.data.bulk.entry = NULL;
|
||||
histcurr.data.bulk.numentry = 0;
|
||||
}
|
||||
}
|
||||
if(histcurr.type == HIST_ADDX) {
|
||||
for(i = j = 0, y = miy; y <= may; y++)
|
||||
for(z = miz; z <= maz; z++, i++)
|
||||
if(nodes[y][z][cx].param0) {
|
||||
memcpy(&histcurr.data.bulk.entry[i], &nodes[y][z][cx], sizeof(node_t));
|
||||
j++;
|
||||
}
|
||||
if(!j) {
|
||||
free(histcurr.data.bulk.entry);
|
||||
histcurr.data.bulk.entry = NULL;
|
||||
histcurr.data.bulk.numentry = 0;
|
||||
}
|
||||
}
|
||||
if(histtop != 0) {
|
||||
hist_free(0, histtop);
|
||||
memcpy(&history[0], &history[histtop], (histmax - histtop) * sizeof(histlist_t));
|
||||
histmax -= histtop;
|
||||
if(histmax < 0) histmax = 0;
|
||||
}
|
||||
hist_free(HISTORYMAX-1, HISTORYMAX);
|
||||
if(histmax)
|
||||
memmove(&history[1], &history[0], histmax * sizeof(histlist_t));
|
||||
if(histmax + 1 < HISTORYMAX) histmax++;
|
||||
memcpy(&history[0], &histcurr, sizeof(histlist_t));
|
||||
memset(&histcurr, 0, sizeof(histlist_t));
|
||||
histcapacity = 0;
|
||||
histtop = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Add to history
|
||||
*/
|
||||
void hist_add(int y, int z, int x, unsigned short op0, unsigned char op2, unsigned short np0, unsigned char np2)
|
||||
{
|
||||
int i;
|
||||
|
||||
if(histcurr.type == HIST_NODE) {
|
||||
if(op0 == np0 && op2 == np2) histcurr.type = HIST_EMPTY;
|
||||
else {
|
||||
histcurr.x = x;
|
||||
histcurr.y = y;
|
||||
histcurr.z = z;
|
||||
histcurr.data.node.oldparam0 = op0;
|
||||
histcurr.data.node.oldparam2 = op2;
|
||||
histcurr.data.node.newparam0 = np0;
|
||||
histcurr.data.node.newparam2 = np2;
|
||||
}
|
||||
} else if(histcurr.type != HIST_EMPTY && (op0 != np0 || op2 != np2)) {
|
||||
i = histcurr.data.multiple.numentry++;
|
||||
if(histcurr.data.multiple.numentry >= histcapacity) {
|
||||
histcapacity += 1024;
|
||||
histcurr.data.multiple.entry = (hist_t*)realloc(histcurr.data.multiple.entry, histcapacity * sizeof(hist_t));
|
||||
if(!histcurr.data.multiple.entry) error(lang[ERR_MEM]);
|
||||
}
|
||||
histcurr.data.multiple.entry[i].x = x;
|
||||
histcurr.data.multiple.entry[i].y = y;
|
||||
histcurr.data.multiple.entry[i].z = z;
|
||||
histcurr.data.multiple.entry[i].oldparam0 = op0;
|
||||
histcurr.data.multiple.entry[i].oldparam2 = op2;
|
||||
histcurr.data.multiple.entry[i].newparam0 = np0;
|
||||
histcurr.data.multiple.entry[i].newparam2 = np2;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Undo from history
|
||||
*/
|
||||
void hist_undo()
|
||||
{
|
||||
int i, j, x, y, z;
|
||||
|
||||
if(histtop < histmax) {
|
||||
switch(history[histtop].type) {
|
||||
case HIST_NODE:
|
||||
nodes[history[histtop].y][history[histtop].z][history[histtop].x].param0 = history[histtop].data.node.oldparam0;
|
||||
nodes[history[histtop].y][history[histtop].z][history[histtop].x].param2 = history[histtop].data.node.oldparam2;
|
||||
break;
|
||||
case HIST_BRUSH:
|
||||
for(i = 0; i < history[histtop].data.multiple.numentry; i++) {
|
||||
nodes[history[histtop].data.multiple.entry[i].y]
|
||||
[history[histtop].data.multiple.entry[i].z]
|
||||
[history[histtop].data.multiple.entry[i].x].param0 = history[histtop].data.multiple.entry[i].oldparam0;
|
||||
nodes[history[histtop].data.multiple.entry[i].y]
|
||||
[history[histtop].data.multiple.entry[i].z]
|
||||
[history[histtop].data.multiple.entry[i].x].param2 = history[histtop].data.multiple.entry[i].oldparam2;
|
||||
}
|
||||
break;
|
||||
case HIST_DELY:
|
||||
x = history[histtop].x;
|
||||
y = history[histtop].y;
|
||||
z = history[histtop].z;
|
||||
mts_addy(y, 0);
|
||||
for(i = j = 0; i < history[histtop].data.bulk.numentry; i++, j++, x++) {
|
||||
if(j >= history[histtop].data.bulk.pitch) { j = 0; z++; x = history[histtop].x; }
|
||||
memcpy(&nodes[y][z][x], &history[histtop].data.bulk.entry[i], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_ADDY: mts_dely(history[histtop].y); break;
|
||||
case HIST_DELZ:
|
||||
x = history[histtop].x;
|
||||
y = history[histtop].y;
|
||||
z = history[histtop].z;
|
||||
mts_addz(z, 0);
|
||||
for(i = j = 0; i < history[histtop].data.bulk.numentry; i++, j++, x++) {
|
||||
if(j >= history[histtop].data.bulk.pitch) { j = 0; y++; x = history[histtop].x; }
|
||||
memcpy(&nodes[y][z][x], &history[histtop].data.bulk.entry[i], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_ADDZ: mts_delz(history[histtop].z); break;
|
||||
case HIST_DELX:
|
||||
x = history[histtop].x;
|
||||
y = history[histtop].y;
|
||||
z = history[histtop].z;
|
||||
mts_addx(x, 0);
|
||||
for(i = j = 0; i < history[histtop].data.bulk.numentry; i++, j++, z++) {
|
||||
if(j >= history[histtop].data.bulk.pitch) { j = 0; y++; z = history[histtop].z; }
|
||||
memcpy(&nodes[y][z][x], &history[histtop].data.bulk.entry[i], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_ADDX: mts_delx(history[histtop].x); break;
|
||||
}
|
||||
histtop++;
|
||||
status = nodes[currlayer][cz][cx].param0 ? blocks[nodes[currlayer][cz][cx].param0].name : NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Redo from history
|
||||
*/
|
||||
void hist_redo()
|
||||
{
|
||||
int i, j, x, y, z;
|
||||
|
||||
if(histtop) {
|
||||
histtop--;
|
||||
switch(history[histtop].type) {
|
||||
case HIST_NODE:
|
||||
nodes[history[histtop].y][history[histtop].z][history[histtop].x].param0 = history[histtop].data.node.newparam0;
|
||||
nodes[history[histtop].y][history[histtop].z][history[histtop].x].param2 = history[histtop].data.node.newparam2;
|
||||
break;
|
||||
case HIST_BRUSH:
|
||||
for(i = 0; i < history[histtop].data.multiple.numentry; i++) {
|
||||
nodes[history[histtop].data.multiple.entry[i].y]
|
||||
[history[histtop].data.multiple.entry[i].z]
|
||||
[history[histtop].data.multiple.entry[i].x].param0 = history[histtop].data.multiple.entry[i].newparam0;
|
||||
nodes[history[histtop].data.multiple.entry[i].y]
|
||||
[history[histtop].data.multiple.entry[i].z]
|
||||
[history[histtop].data.multiple.entry[i].x].param2 = history[histtop].data.multiple.entry[i].newparam2;
|
||||
}
|
||||
break;
|
||||
case HIST_ADDY:
|
||||
x = history[histtop].x;
|
||||
y = history[histtop].y;
|
||||
z = history[histtop].z;
|
||||
mts_addy(y, 0);
|
||||
for(i = j = 0; i < history[histtop].data.bulk.numentry; i++, j++, x++) {
|
||||
if(j >= history[histtop].data.bulk.pitch) { j = 0; z++; x = history[histtop].x; }
|
||||
memcpy(&nodes[y][z][x], &history[histtop].data.bulk.entry[i], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_DELY: mts_dely(history[histtop].y); break;
|
||||
case HIST_ADDZ:
|
||||
x = history[histtop].x;
|
||||
y = history[histtop].y;
|
||||
z = history[histtop].z;
|
||||
mts_addz(z, 0);
|
||||
for(i = j = 0; i < history[histtop].data.bulk.numentry; i++, j++, x++) {
|
||||
if(j >= history[histtop].data.bulk.pitch) { j = 0; y++; x = history[histtop].x; }
|
||||
memcpy(&nodes[y][z][x], &history[histtop].data.bulk.entry[i], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_DELZ: mts_delz(history[histtop].z); break;
|
||||
case HIST_ADDX:
|
||||
x = history[histtop].x;
|
||||
y = history[histtop].y;
|
||||
z = history[histtop].z;
|
||||
mts_addx(x, 0);
|
||||
for(i = j = 0; i < history[histtop].data.bulk.numentry; i++, j++, z++) {
|
||||
if(j >= history[histtop].data.bulk.pitch) { j = 0; y++; z = history[histtop].z; }
|
||||
memcpy(&nodes[y][z][x], &history[histtop].data.bulk.entry[i], sizeof(node_t));
|
||||
}
|
||||
break;
|
||||
case HIST_DELX: mts_delx(history[histtop].x); break;
|
||||
}
|
||||
status = nodes[currlayer][cz][cx].param0 ? blocks[nodes[currlayer][cz][cx].param0].name : NULL;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Free history
|
||||
*/
|
||||
void hist_free(int s, int e)
|
||||
{
|
||||
int i;
|
||||
|
||||
if(s == -1) { s = 0; e = histmax; }
|
||||
for(i = s; i < e; i++)
|
||||
if(history[i].type == HIST_BRUSH && history[i].data.multiple.entry)
|
||||
free(history[i].data.multiple.entry);
|
||||
else if(history[i].type > HIST_BRUSH && history[i].data.bulk.entry)
|
||||
free(history[i].data.bulk.entry);
|
||||
}
|
||||
|
BIN
src/icons.png
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 22 KiB |
200
src/lang.c
|
@ -35,10 +35,12 @@
|
|||
char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
||||
{
|
||||
"en",
|
||||
"verbose output",
|
||||
"dump layers to output",
|
||||
"save preview",
|
||||
"save preview, cut structure in half",
|
||||
"generate slab and stairs from block image",
|
||||
"generate block images from texture data",
|
||||
"replace block type mapping",
|
||||
"output to file",
|
||||
"Loading...",
|
||||
|
@ -65,6 +67,18 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Save",
|
||||
"Save Preview",
|
||||
"Change Orientation",
|
||||
"Flip Structure",
|
||||
"Insert Y layer",
|
||||
"Remove Y layer",
|
||||
"Insert X layer",
|
||||
"Remove X layer",
|
||||
"Insert Z layer",
|
||||
"Remove Z layer",
|
||||
"Undo",
|
||||
"Redo",
|
||||
"Zoom in",
|
||||
"Zoom out",
|
||||
"Select Brush",
|
||||
"All Blocks",
|
||||
"Layer Up",
|
||||
"Layer Down",
|
||||
|
@ -74,14 +88,28 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Filename:",
|
||||
"Mapping:",
|
||||
"Biome type:",
|
||||
"Save"
|
||||
"Save",
|
||||
"Type:",
|
||||
"Hollow:",
|
||||
"Radius:",
|
||||
"Width:",
|
||||
"Length:",
|
||||
"Height:",
|
||||
"Air",
|
||||
"Select block from palette",
|
||||
"Flood fill",
|
||||
"Paint with block",
|
||||
"Scroll",
|
||||
"(for all the shortcuts, read docs/usage.md)"
|
||||
},
|
||||
{
|
||||
"hu",
|
||||
"részletes kimenet",
|
||||
"kidumpolja a rétegeket a kimenetre",
|
||||
"előnézeti képet ment",
|
||||
"előnézet félbevágott struktúráról",
|
||||
"palló és lépcső generálás blokk képből",
|
||||
"blokk képek generálása textúra adatokból",
|
||||
"lecseréli a palettát",
|
||||
"kimenet lementése",
|
||||
"Betöltés...",
|
||||
|
@ -108,6 +136,18 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Mentés",
|
||||
"Előnézet mentés",
|
||||
"Elforgatás",
|
||||
"Tükrözés",
|
||||
"Y réteg beszúrása",
|
||||
"Y réteg eltávolítása",
|
||||
"X réteg beszúrása",
|
||||
"X réteg eltávolítása",
|
||||
"Z réteg beszúrása",
|
||||
"Z réteg eltávolítása",
|
||||
"Visszavonás",
|
||||
"Újra",
|
||||
"Nagyítás",
|
||||
"Kicsinyítés",
|
||||
"Ecset alakja",
|
||||
"Minden blokk",
|
||||
"Réteg fel",
|
||||
"Réteg le",
|
||||
|
@ -117,14 +157,28 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Fájlnév:",
|
||||
"Paletta:",
|
||||
"Biom típus:",
|
||||
"Elment"
|
||||
"Elment",
|
||||
"Típus:",
|
||||
"Üreges:",
|
||||
"Sugár:",
|
||||
"Szélesség:",
|
||||
"Hosszúság:",
|
||||
"Magasság:",
|
||||
"Levegő",
|
||||
"Blokk kiválasztása a palettáról",
|
||||
"Kitöltés",
|
||||
"Rajzolás",
|
||||
"Szkrollozás",
|
||||
"(az összes gyorsbillentyűt lásd a docs/usage.md fájlban)"
|
||||
},
|
||||
{
|
||||
"es",
|
||||
"salida detallada",
|
||||
"volcar capas a la salida",
|
||||
"guardar vista previa",
|
||||
"guardar vista previa, cortar la estructura por la mitad",
|
||||
"generar losas y escaleras desde la imagen de bloque",
|
||||
"generar imágenes de bloque a partir de datos de textura",
|
||||
"reemplazar el mapeo de tipo de bloque",
|
||||
"salida a archivo",
|
||||
"Cargando...",
|
||||
|
@ -151,6 +205,18 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Salvar",
|
||||
"Guardar vista previa",
|
||||
"Cambiar orientación",
|
||||
"Flip Estructura",
|
||||
"Insertar capa Y",
|
||||
"Eliminar capa Y",
|
||||
"Insertar capa X",
|
||||
"Eliminar capa X",
|
||||
"Insertar capa Z",
|
||||
"Eliminar la capa Z",
|
||||
"Deshacer",
|
||||
"Rehacer",
|
||||
"Acercarse",
|
||||
"Disminuir el zoom",
|
||||
"Seleccionar pincel",
|
||||
"Todos los bloques",
|
||||
"Capa arriba",
|
||||
"Capa abajo",
|
||||
|
@ -160,14 +226,28 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Nombre:",
|
||||
"Cartografía:",
|
||||
"Utilizar bioma:",
|
||||
"Salvar"
|
||||
"Salvar",
|
||||
"Tipo:",
|
||||
"Hueco:",
|
||||
"Radio:",
|
||||
"Anchura:",
|
||||
"Longitud:",
|
||||
"Altura:",
|
||||
"Aire",
|
||||
"Seleccionar bloque de paleta",
|
||||
"Inundación con bloque",
|
||||
"Pintar con bloque",
|
||||
"Voluta",
|
||||
"para todos los accesos directos, lea docs/usage.md",
|
||||
},
|
||||
{
|
||||
"fr",
|
||||
"sortie prolixe",
|
||||
"vider les couches à la sortie",
|
||||
"enregistrer l'aperçu",
|
||||
"enregistrer l'aperçu, couper la structure en deux",
|
||||
"générer une dalle et des escaliers à partir d'une image de bloc",
|
||||
"générer des images de bloc à partir de données de texture",
|
||||
"remplacer la correspondance de type de bloc",
|
||||
"sortie dans un fichier",
|
||||
"Chargement...",
|
||||
|
@ -194,6 +274,18 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Sauver",
|
||||
"Enregistrer l'aperçu",
|
||||
"Changer d'orientation",
|
||||
"Flip Structure",
|
||||
"Insérer le calque Y",
|
||||
"Supprimer la couche Y",
|
||||
"Insérer un calque X",
|
||||
"Supprimer la couche X",
|
||||
"Insérer un calque Z",
|
||||
"Supprimer la couche Z",
|
||||
"annuler",
|
||||
"Refaire",
|
||||
"Agrandir",
|
||||
"Dézoomer",
|
||||
"Sélectionnez le pinceau",
|
||||
"Tous les blocs",
|
||||
"Couche vers le haut",
|
||||
"Couche vers le bas",
|
||||
|
@ -203,14 +295,28 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Nom de fichier:",
|
||||
"Cartographie:",
|
||||
"Utiliser biome:",
|
||||
"Sauver"
|
||||
"Sauver",
|
||||
"Type:",
|
||||
"Creux:",
|
||||
"Rayon:",
|
||||
"Largeur:",
|
||||
"Longueur:",
|
||||
"Tailleur:",
|
||||
"Air",
|
||||
"Sélectionner un bloc de la palette",
|
||||
"Remplir inondé avec un bloc",
|
||||
"Peindre avec un bloc",
|
||||
"Faire défiler",
|
||||
"pour tous les raccourcis, lisez docs/usage.md",
|
||||
},
|
||||
{
|
||||
"de",
|
||||
"ausführliche Ausgabe",
|
||||
"Dump Layeren zu Konsole",
|
||||
"Vorschau speichern",
|
||||
"Vorschau speichern, Struktur halbieren",
|
||||
"Erzeugen von Platten und Treppen aus dem Blockbild",
|
||||
"Blockbilder aus Texturdaten erzeugen",
|
||||
"Blocktypzuordnung ersetzen",
|
||||
"speichern Datei",
|
||||
"Wird geladen...",
|
||||
|
@ -237,6 +343,18 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"speichern",
|
||||
"Vorschau speichern",
|
||||
"Ändern Sie die Ausrichtung",
|
||||
"Flip-Struktur",
|
||||
"Y-Ebene einfügen",
|
||||
"Y-Schicht entfernen",
|
||||
"X-Ebene einfügen",
|
||||
"X-Ebene entfernen",
|
||||
"Z-Ebene einfügen",
|
||||
"Z-Schicht entfernen",
|
||||
"Rückgängig machen",
|
||||
"Redo",
|
||||
"Hineinzoomen",
|
||||
"Rauszoomen",
|
||||
"Wählen Sie Pinsel",
|
||||
"Alle Blöcke",
|
||||
"Ebene hoch",
|
||||
"Schicht nach unten",
|
||||
|
@ -246,14 +364,28 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Dateiname:",
|
||||
"Kartierung:",
|
||||
"Verwenden Biome:",
|
||||
"Einspeichern"
|
||||
"Einspeichern",
|
||||
"Typ:",
|
||||
"Hohl:",
|
||||
"Radius:",
|
||||
"Breite:",
|
||||
"Länge:",
|
||||
"Höhe:",
|
||||
"Luft",
|
||||
"Block aus der Palette auswählen",
|
||||
"Fülle es mit Block",
|
||||
"Malen Sie mit Block",
|
||||
"Scrollen",
|
||||
"Lesen Sie für alle Verknüpfungen docs/usage.md",
|
||||
},
|
||||
{
|
||||
"pl",
|
||||
"gadatliwe wyjście",
|
||||
"zrzuć warstwy na wyjście",
|
||||
"zapisz podgląd",
|
||||
"zapisz podgląd, wytnij strukturę na pół",
|
||||
"generuj płytę i schody z obrazu bloku",
|
||||
"generować obrazy bloków z danych tekstury",
|
||||
"zastąpić mapowanie typów bloków",
|
||||
"wyjście do pliku",
|
||||
"Ładuję...",
|
||||
|
@ -280,23 +412,49 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Zapisać",
|
||||
"Zapisz podgląd",
|
||||
"Zmień orientację",
|
||||
"Odwróć strukturę",
|
||||
"Wstaw warstwę Y.",
|
||||
"Usuń warstwę Y.",
|
||||
"Wstaw warstwę X.",
|
||||
"Usuń warstwę X.",
|
||||
"Wstaw warstwę Z.",
|
||||
"Usuń warstwę Z.",
|
||||
"Cofnij",
|
||||
"Przerobić",
|
||||
"Zbliżenie",
|
||||
"Oddal",
|
||||
"Wybierz pędzel",
|
||||
"Wszystkie bloki",
|
||||
"Layer Up",
|
||||
"Layer Down",
|
||||
"Ułóż się",
|
||||
"Połóż się",
|
||||
"Dodaj bloki do palety",
|
||||
"Szukaj:",
|
||||
"Zapisz schemat do pliku",
|
||||
"Nazwa pliku:",
|
||||
"Mapowanie:",
|
||||
"Użyj biomu:",
|
||||
"Zapisać"
|
||||
"Zapisać",
|
||||
"Rodzaj:",
|
||||
"Wydrążony:",
|
||||
"Promień:",
|
||||
"Szerokość:",
|
||||
"Długość:",
|
||||
"Wysokość:",
|
||||
"Powietrze",
|
||||
"Wybierz blok z palety",
|
||||
"Wypełnienie blokiem",
|
||||
"Maluj blokiem",
|
||||
"Zwój",
|
||||
"dla wszystkich skrótów przeczytaj docs/usage.md",
|
||||
},
|
||||
{
|
||||
"ru",
|
||||
"подробный вывод",
|
||||
"выгрузить слои на вывод",
|
||||
"сохранить предварительный просмотр",
|
||||
"сохранить предварительный просмотр, разрезать структуру пополам",
|
||||
"генерировать плиты и лестницы из изображения блока",
|
||||
"генерировать блочные изображения из данных текстуры",
|
||||
"заменить отображение типа блока",
|
||||
"вывод в файл",
|
||||
"Загрузка ...",
|
||||
|
@ -323,6 +481,18 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Сохранить",
|
||||
"Сохранить предварительный просмотр",
|
||||
"Изменить ориентацию",
|
||||
"Флип структура",
|
||||
"Вставить слой Y",
|
||||
"Удалить слой Y",
|
||||
"Вставить слой X",
|
||||
"Удалить слой X",
|
||||
"Вставить слой Z",
|
||||
"Удалить слой Z",
|
||||
"Отменить",
|
||||
"Заново делать",
|
||||
"Увеличить",
|
||||
"Уменьшить",
|
||||
"Выберите кисть",
|
||||
"Все блоки",
|
||||
"Слой вверх",
|
||||
"Слой вниз",
|
||||
|
@ -332,7 +502,19 @@ char *dict[NUMLANGS][NUMTEXTS + 1] = {
|
|||
"Имя файла:",
|
||||
"Отображение:",
|
||||
"Используйте Биом:",
|
||||
"Сохранить"
|
||||
"Сохранить",
|
||||
"Тип:",
|
||||
"Пустотелый:",
|
||||
"Радиус:",
|
||||
"ширина:",
|
||||
"Длина:",
|
||||
"Рост:",
|
||||
"Воздуха",
|
||||
"Выберите блок из палитры",
|
||||
"Заливка с блоком",
|
||||
"Краска с блоком",
|
||||
"Манускрипт",
|
||||
"для всех ярлыков, прочитайте docs/usage.md",
|
||||
}
|
||||
|
||||
};
|
||||
|
|
28
src/lang.h
|
@ -28,10 +28,12 @@
|
|||
*/
|
||||
|
||||
enum {
|
||||
INF_DUMP = 0,
|
||||
INF_VERB = 0,
|
||||
INF_DUMP,
|
||||
INF_PRE1,
|
||||
INF_PRE2,
|
||||
INF_GEN,
|
||||
INF_BLK,
|
||||
INF_MAP,
|
||||
INF_OUT,
|
||||
LOADING,
|
||||
|
@ -58,6 +60,18 @@ enum {
|
|||
SAVE,
|
||||
SAVEPREVIEW,
|
||||
CHANGEORIENT,
|
||||
MIRROR,
|
||||
ADDY,
|
||||
DELY,
|
||||
ADDX,
|
||||
DELX,
|
||||
ADDZ,
|
||||
DELZ,
|
||||
UNDO,
|
||||
REDO,
|
||||
ZOOMIN,
|
||||
ZOOMOUT,
|
||||
BRUSH,
|
||||
ALLBLOCKS,
|
||||
LAYERUP,
|
||||
LAYERDOWN,
|
||||
|
@ -68,6 +82,18 @@ enum {
|
|||
MAPPING,
|
||||
BIOMETYPE,
|
||||
SAVEBTN,
|
||||
TYPE,
|
||||
HOLLOW,
|
||||
RADIUS,
|
||||
WIDTH,
|
||||
LENGTH,
|
||||
HEIGHT,
|
||||
AIR,
|
||||
SELBLOCK,
|
||||
FILL,
|
||||
PAINT,
|
||||
SCROLL,
|
||||
HELP,
|
||||
|
||||
/* must be the last */
|
||||
NUMTEXTS
|
||||
|
|
16
src/main.c
|
@ -181,9 +181,10 @@ int main(int argc, char** argv, char** envp)
|
|||
|
||||
if(argc < 2) {
|
||||
printf("MineTest Schematics Editor by bzt Copyright (C) 2019 MIT license\r\n\r\n"
|
||||
"./mtsedit [-v] [-d|-p|-P|-g] [-m map] <.mts|.schematic> [out.mts]\r\n\r\n -d: %s\r\n -p: %s\r\n -P: %s\r\n"
|
||||
" -g: %s\r\n -m map: %s\r\n out.mts: %s\r\n",
|
||||
lang[INF_DUMP], lang[INF_PRE1], lang[INF_PRE2], lang[INF_GEN], lang[INF_MAP], lang[INF_OUT]);
|
||||
"./mtsedit [-v] [-d|-p|-P|-g|-i] [-m map] <.mts|.schematic> [out.mts]\r\n\r\n -v: %s\r\n -d: %s"
|
||||
"\r\n -p: %s\r\n -P: %s\r\n -g: %s\r\n -i: %s\r\n -m map: %s\r\n out.mts: %s\r\n",
|
||||
lang[INF_VERB], lang[INF_DUMP], lang[INF_PRE1], lang[INF_PRE2], lang[INF_GEN], lang[INF_BLK],
|
||||
lang[INF_MAP], lang[INF_OUT]);
|
||||
exit(0);
|
||||
}
|
||||
i = 1;
|
||||
|
@ -195,7 +196,8 @@ int main(int argc, char** argv, char** envp)
|
|||
case 'p': opt = 2; break;
|
||||
case 'P': opt = 3; break;
|
||||
case 'g': opt = 4; break;
|
||||
case 'm': if(!opt) { opt = 5; } newmap = argv[++j]; break;
|
||||
case 'i': opt = 5; break;
|
||||
case 'm': if(!opt) { opt = 6; } newmap = argv[++j]; break;
|
||||
}
|
||||
} else {
|
||||
i = j; break;
|
||||
|
@ -206,7 +208,7 @@ int main(int argc, char** argv, char** envp)
|
|||
tmpblk = (unsigned char*)malloc(32 * 32 * 4);
|
||||
if(!tmpblk) error(lang[ERR_MEM]);
|
||||
|
||||
if(argv[i+1] && !opt) opt = 5;
|
||||
if(argv[i+1] && !opt) opt = 6;
|
||||
if(opt && opt != 4) {
|
||||
parseblocks();
|
||||
readschem();
|
||||
|
@ -228,8 +230,8 @@ int main(int argc, char** argv, char** envp)
|
|||
case 2:
|
||||
case 3: ret = mts_view(opt-2); break;
|
||||
case 4: ret = stairgen(); break;
|
||||
case 5: break;
|
||||
default:
|
||||
case 5: /* todo: generate block images */ break;
|
||||
case 0:
|
||||
/* start the main user interface */
|
||||
sdlmain();
|
||||
break;
|
||||
|
|
87
src/main.h
|
@ -54,6 +54,16 @@
|
|||
#define THEME_SAVEACT 9
|
||||
#define THEME_SAVEINACT 10
|
||||
|
||||
#define HIST_EMPTY 0
|
||||
#define HIST_NODE 1
|
||||
#define HIST_BRUSH 2
|
||||
#define HIST_ADDY 3
|
||||
#define HIST_DELY 4
|
||||
#define HIST_ADDZ 5
|
||||
#define HIST_DELZ 6
|
||||
#define HIST_ADDX 7
|
||||
#define HIST_DELX 8
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <limits.h>
|
||||
|
@ -64,8 +74,6 @@
|
|||
#define MAXPATHLEN 1024
|
||||
#endif
|
||||
|
||||
#define HISTORYMAX 1024
|
||||
|
||||
#ifdef __WIN32__
|
||||
extern char binary_icons_png_start;
|
||||
extern char binary_icons_png_end;
|
||||
|
@ -99,9 +107,9 @@ typedef struct {
|
|||
unsigned char *tr[32];
|
||||
} mtsblock_t;
|
||||
|
||||
extern int numpalettes, lenpalettes, palette[16], strmaxw, savelen, savepos, savepal, savebiome, numresults, *results;
|
||||
extern int currlayer, gndlayer, mts_x, mts_y, mts_z, min_x, min_y, min_z, dx, dz, cx, cz, ox, oy, up;
|
||||
extern int shift, ctrl, activeblock, quitting, verbose, x0, x1, y0, y1;
|
||||
extern int numpalettes, lenpalettes, palette[16], strmaxw, strsep, savelen, savepos, savepal, savebiome, numresults, *results;
|
||||
extern int currlayer, gndlayer, mts_x, mts_y, mts_z, mix, miy, miz, max, may, maz, bound_valid, dx, dz, cx, cz, ox, oy, up;
|
||||
extern int shift, ctrl, activetool, activeblock, quitting, verbose, x0, x1, y0, y1, brush_type, brush_hollow;
|
||||
extern char **palettes, layerprob[256];
|
||||
extern int numblocks;
|
||||
extern mtsblock_t *blocks;
|
||||
|
@ -123,6 +131,36 @@ typedef struct {
|
|||
unsigned char z;
|
||||
} hist_t;
|
||||
|
||||
typedef struct {
|
||||
unsigned char type;
|
||||
unsigned char x;
|
||||
unsigned char y;
|
||||
unsigned char z;
|
||||
union {
|
||||
struct multiple_s {
|
||||
int numentry;
|
||||
hist_t *entry;
|
||||
} multiple;
|
||||
struct bulk_s {
|
||||
unsigned short numentry;
|
||||
unsigned char pitch;
|
||||
node_t *entry;
|
||||
} bulk;
|
||||
struct node_s {
|
||||
unsigned short oldparam0;
|
||||
unsigned char oldparam2;
|
||||
unsigned short newparam0;
|
||||
unsigned char newparam2;
|
||||
} node;
|
||||
} data;
|
||||
} histlist_t;
|
||||
extern histlist_t histcurr;
|
||||
|
||||
typedef struct {
|
||||
char text;
|
||||
char *key;
|
||||
} help_t;
|
||||
|
||||
/* PC Screen Font as used by Linux Console */
|
||||
typedef struct {
|
||||
unsigned int magic;
|
||||
|
@ -141,7 +179,7 @@ extern uint32_t theme[];
|
|||
extern char *path, *fn, mtsfile[MAXPATHLEN], *status, **lang;
|
||||
extern unsigned char *tmpblk;
|
||||
extern SDL_Window *window;
|
||||
extern SDL_Surface *screen, *icons, *blk, *fg, *bg, *cursor;
|
||||
extern SDL_Surface *screen, *icons, *blk, *fg, *cl, *bg;
|
||||
|
||||
/* util.c */
|
||||
unsigned char *readfile(char *file, unsigned int *size);
|
||||
|
@ -164,30 +202,41 @@ void schem_load(unsigned char *data, unsigned int size);
|
|||
void mts_load(unsigned char *data, unsigned int size);
|
||||
int mts_save();
|
||||
int mts_view(int type);
|
||||
int mts_dump();
|
||||
int mts_getbounds(int sanitize, unsigned short *tr, unsigned short *tr2);
|
||||
void mts_layerprob(int diff);
|
||||
void mts_rotate(int ccw);
|
||||
void mts_flip();
|
||||
int mts_dump();
|
||||
void mts_addy(int y, int copy);
|
||||
void mts_dely(int y);
|
||||
void mts_addz(int z, int copy);
|
||||
void mts_delz(int z);
|
||||
void mts_addx(int x, int copy);
|
||||
void mts_delx(int x);
|
||||
|
||||
/* sdl.c */
|
||||
void sdlprint(int x, int y, int fg, int bg, char *s);
|
||||
void sdlredraw();
|
||||
void sdldosave();
|
||||
void sdldoload();
|
||||
void sdldopreview();
|
||||
void sdldorotate(int ccw);
|
||||
void sdldo(int opt);
|
||||
void sdlmain();
|
||||
|
||||
/* edit.c */
|
||||
void edit_redraw();
|
||||
void edit_hidecursor();
|
||||
void edit_showcursor(int painting);
|
||||
void edit_placenode(int y, int z, int x, int i);
|
||||
void edit_redraw(int full);
|
||||
void edit_scroll(SDL_Event *event);
|
||||
void edit_mouseover(SDL_Event *event);
|
||||
void edit_mousedown(_unused SDL_Event *event);
|
||||
void edit_key(SDL_Event *event);
|
||||
void edit_rotate(int y, int z, int x, int ccw);
|
||||
|
||||
/* hist.c */
|
||||
void hist_prepare(int type, int volume);
|
||||
void hist_commit();
|
||||
void hist_add(int y, int z, int x, unsigned short op0, unsigned char op2, unsigned short np0, unsigned char np2);
|
||||
void hist_undo();
|
||||
void hist_redo();
|
||||
void hist_free(int s, int e);
|
||||
|
||||
/* save.c */
|
||||
void save_redraw();
|
||||
void save_scroll(SDL_Event *event);
|
||||
|
@ -200,3 +249,13 @@ void search_scroll(SDL_Event *event);
|
|||
void search_mousedown(SDL_Event *event);
|
||||
void search_mouseover(SDL_Event *event);
|
||||
void search_key(SDL_Event *event);
|
||||
|
||||
/* brush.c */
|
||||
void brush_setmask(int needmax);
|
||||
int brush_selected(int x, int z);
|
||||
void brush_place(int blk);
|
||||
void brush_floodfill(int blk);
|
||||
int brush_height();
|
||||
void brush_redraw();
|
||||
int brush_mousedown(_unused SDL_Event *event);
|
||||
void brush_key(SDL_Event *event);
|
||||
|
|
245
src/mts.c
|
@ -44,7 +44,7 @@ char layerprob[256];
|
|||
node_t nodes[256][256][256];
|
||||
|
||||
/* generated properties */
|
||||
int mix = 255, max = 0, miy = 255, may = 0, miz = 255, maz = 0;
|
||||
int mix = 255, max = 0, miy = 255, may = 0, miz = 255, maz = 0, bound_valid = 0;
|
||||
|
||||
/**
|
||||
* Get schematic bounding cube and node id translation tables
|
||||
|
@ -53,6 +53,8 @@ int mts_getbounds(int sanitize, unsigned short *tr, unsigned short *tr2)
|
|||
{
|
||||
int x, y, z, j;
|
||||
|
||||
if(!sanitize && !tr && bound_valid) return 0;
|
||||
|
||||
/* get boundind box and block ID translation tables, sanitize probability values */
|
||||
j = 1; mix = 255; max = 0; miy = 255; may = 0; miz = 255; maz = 0;
|
||||
for(y = 0; y < 256; y++) {
|
||||
|
@ -77,6 +79,7 @@ int mts_getbounds(int sanitize, unsigned short *tr, unsigned short *tr2)
|
|||
if(sanitize)
|
||||
for(y = miy; y <= may; y++)
|
||||
if(!layerprob[y]) layerprob[y] = 127;
|
||||
bound_valid = 1;
|
||||
return j;
|
||||
}
|
||||
|
||||
|
@ -394,63 +397,6 @@ int mts_view(int type)
|
|||
return 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Change layer probability
|
||||
*/
|
||||
void mts_layerprob(int diff)
|
||||
{
|
||||
if(diff < 0 && (int)layerprob[currlayer] > 0) layerprob[currlayer]--;
|
||||
if(diff > 0 && (int)layerprob[currlayer] < 127) layerprob[currlayer]++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Rotate the entire MTS structure
|
||||
*/
|
||||
void mts_rotate(int ccw)
|
||||
{
|
||||
int nx, nz, x, y, z;
|
||||
node_t layer[256][256];
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(mix > max) return;
|
||||
|
||||
for(y = miy; y <= may; y++) {
|
||||
memcpy(layer, nodes[y], sizeof(node_t)*256*256);
|
||||
memset(nodes[y], 0, sizeof(node_t)*256*256);
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++) {
|
||||
if(ccw) { nz = 255-x; nx = z; } else { nz = x; nx = 255-z; }
|
||||
memcpy(&nodes[y][nz][nx], &layer[z][x], sizeof(node_t));
|
||||
if(nodes[y][nz][nx].param0)
|
||||
edit_rotate(y, nz, nx, ccw);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Flip the entire MTS structure along the Z axis
|
||||
*/
|
||||
void mts_flip()
|
||||
{
|
||||
int x, y, z;
|
||||
node_t layer[256][256];
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(mix > max) return;
|
||||
|
||||
for(y = miy; y <= may; y++) {
|
||||
memcpy(layer, nodes[y], sizeof(node_t)*256*256);
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++) {
|
||||
memcpy(&nodes[y][z][x], &layer[maz-z+miz][x], sizeof(node_t));
|
||||
if(nodes[y][z][x].param0) {
|
||||
edit_rotate(y, z, x, 0);
|
||||
edit_rotate(y, z, x, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Dump structure
|
||||
*/
|
||||
|
@ -500,3 +446,186 @@ int mts_dump()
|
|||
free(tr2);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Change layer probability
|
||||
*/
|
||||
void mts_layerprob(int diff)
|
||||
{
|
||||
if(diff < 0 && (int)layerprob[currlayer] > 0) layerprob[currlayer]--;
|
||||
if(diff > 0 && (int)layerprob[currlayer] < 127) layerprob[currlayer]++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Rotate the entire MTS structure
|
||||
*/
|
||||
void mts_rotate(int ccw)
|
||||
{
|
||||
int nx, nz, x, y, z;
|
||||
node_t layer[256][256];
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(mix > max) return;
|
||||
|
||||
for(y = miy; y <= may; y++) {
|
||||
memcpy(layer, nodes[y], sizeof(node_t)*256*256);
|
||||
memset(nodes[y], 0, sizeof(node_t)*256*256);
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++) {
|
||||
if(ccw) { nz = 255-x; nx = z; } else { nz = x; nx = 255-z; }
|
||||
memcpy(&nodes[y][nz][nx], &layer[z][x], sizeof(node_t));
|
||||
if(nodes[y][nz][nx].param0)
|
||||
edit_rotate(y, nz, nx, ccw);
|
||||
}
|
||||
}
|
||||
x = max; max = maz; maz = x;
|
||||
x = mix; mix = miz; miz = x;
|
||||
}
|
||||
|
||||
/**
|
||||
* Flip the entire MTS structure along the Z axis
|
||||
*/
|
||||
void mts_flip()
|
||||
{
|
||||
int x, y, z;
|
||||
node_t layer[256][256];
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(mix > max) return;
|
||||
|
||||
for(y = miy; y <= may; y++) {
|
||||
memcpy(layer, nodes[y], sizeof(node_t)*256*256);
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++) {
|
||||
memcpy(&nodes[y][z][x], &layer[maz-z+miz][x], sizeof(node_t));
|
||||
if(nodes[y][z][x].param0) {
|
||||
edit_rotate(y, z, x, 0);
|
||||
edit_rotate(y, z, x, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
x = maz; maz = miz; miz = x;
|
||||
}
|
||||
|
||||
/**
|
||||
* Insert an Y layer
|
||||
*/
|
||||
void mts_addy(int y, int copy)
|
||||
{
|
||||
int x, Y, z;
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(miy > may) return;
|
||||
|
||||
for(Y = miy-1 < 0 ? 0 : miy-1; Y < y; Y++)
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++)
|
||||
memcpy(&nodes[Y][z][x], &nodes[Y+1][z][x], sizeof(node_t));
|
||||
if(!copy)
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++)
|
||||
memset(&nodes[y][z][x], 0, sizeof(node_t));
|
||||
if(miy) miy--;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove an Y layer
|
||||
*/
|
||||
void mts_dely(int y)
|
||||
{
|
||||
int x, Y, z;
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(miy > may) return;
|
||||
|
||||
for(Y = y; Y >= miy; Y--)
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++)
|
||||
memcpy(&nodes[Y][z][x], &nodes[Y-1][z][x], sizeof(node_t));
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(x = mix; x <= max; x++)
|
||||
memset(&nodes[miy][z][x], 0, sizeof(node_t));
|
||||
if(miy < y) miy++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Insert an X layer
|
||||
*/
|
||||
void mts_addx(int x, int copy)
|
||||
{
|
||||
int X, y, z;
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(mix > max) return;
|
||||
|
||||
for(y = miy; y <= may; y++)
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(X = max+1 > 255 ? 255 : max+1; X > x ; X--)
|
||||
memcpy(&nodes[y][z][X], &nodes[y][z][X-1], sizeof(node_t));
|
||||
if(!copy)
|
||||
for(y = miy; y <= may; y++)
|
||||
for(z = miz; z <= maz; z++)
|
||||
memset(&nodes[y][z][x], 0, sizeof(node_t));
|
||||
if(max < 255) max++;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove an X layer
|
||||
*/
|
||||
void mts_delx(int x)
|
||||
{
|
||||
int X, y, z;
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(mix > max) return;
|
||||
|
||||
for(y = miy; y <= may; y++)
|
||||
for(z = miz; z <= maz; z++)
|
||||
for(X = x; X <= max; X++)
|
||||
memcpy(&nodes[y][z][X], &nodes[y][z][X+1], sizeof(node_t));
|
||||
for(y = miy; y <= may; y++)
|
||||
for(z = miz; z <= maz; z++)
|
||||
memset(&nodes[y][z][max], 0, sizeof(node_t));
|
||||
if(max > x) max--;
|
||||
}
|
||||
|
||||
/**
|
||||
* Insert a Z layer
|
||||
*/
|
||||
void mts_addz(int z, int copy)
|
||||
{
|
||||
int x, y, Z;
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(miz > maz) return;
|
||||
|
||||
for(y = miy; y <= may; y++)
|
||||
for(Z = miz-1 < 0 ? 0 : miz-1; Z < z; Z++)
|
||||
for(x = mix; x <= max; x++)
|
||||
memcpy(&nodes[y][Z][x], &nodes[y][Z+1][x], sizeof(node_t));
|
||||
if(!copy)
|
||||
for(y = miy; y <= may; y++)
|
||||
for(x = mix; x <= max; x++)
|
||||
memset(&nodes[y][z][x], 0, sizeof(node_t));
|
||||
if(miz) miz--;
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove a Z layer
|
||||
*/
|
||||
void mts_delz(int z)
|
||||
{
|
||||
int x, y, Z;
|
||||
|
||||
mts_getbounds(0, NULL, NULL);
|
||||
if(miz > maz) return;
|
||||
|
||||
for(y = miy; y <= may; y++)
|
||||
for(Z = z; Z >= miz; Z--)
|
||||
for(x = mix; x <= max; x++)
|
||||
memcpy(&nodes[y][Z][x], &nodes[y][Z-1][x], sizeof(node_t));
|
||||
for(y = miy; y <= may; y++)
|
||||
for(x = mix; x <= max; x++)
|
||||
memset(&nodes[y][miz][x], 0, sizeof(node_t));
|
||||
if(miz < z) miz++;
|
||||
}
|
||||
|
|
|
@ -41,6 +41,9 @@ void save_redraw()
|
|||
int k, l;
|
||||
SDL_Rect rect;
|
||||
|
||||
rect.x = 36; rect.y = 0; rect.w = screen->w - 36; rect.h = screen->h - font->height;
|
||||
SDL_FillRect(screen, &rect, theme[THEME_BG]);
|
||||
|
||||
strmaxw = screen->w - 5;
|
||||
sdlprint((screen->w - 47 - strlen(lang[SAVEAS]) * (font->width+1)) / 2 + 47, 4, THEME_INPUT, THEME_BG, lang[SAVEAS]);
|
||||
rect.y = 12 + font->height;
|
||||
|
@ -148,7 +151,7 @@ void save_mousedown(SDL_Event *event)
|
|||
savebiome ^= 1;
|
||||
biomepos = 0;
|
||||
}
|
||||
if(event->button.y >= i && event->button.y < (int)(i + font->height)) sdldosave();
|
||||
if(event->button.y >= i && event->button.y < (int)(i + font->height)) sdldo(1);
|
||||
else if(savebiome && event->button.y >= (int)(24 + 4*font->height) && event->button.y < i) {
|
||||
biomepos = biomescr + (event->button.y - (24 + 4*font->height)) / font->height;
|
||||
if(savefld != 4) savefld = 4;
|
||||
|
@ -230,7 +233,7 @@ void save_key(SDL_Event *event)
|
|||
if(savepal + 1 >= numpalettes) savepal = 0; else savepal++;
|
||||
}
|
||||
break;
|
||||
case SDLK_RETURN: sdldosave(); break;
|
||||
case SDLK_RETURN: sdldo(1); break;
|
||||
default:
|
||||
if(savefld == 1) savefld = 2; else if(savefld == 2) savefld = 1;
|
||||
if(savefld == 3) { savebiome ^= 1; biomepos = 0; }
|
||||
|
|
317
src/sdl.c
|
@ -32,21 +32,48 @@
|
|||
uint32_t theme[] = { 0xFFF0F0F0, 0xFFF4F4F4, 0xFFBEBEBE, 0xFF808080, 0xFF5C5C5C, 0xFF4C4C4C, 0xFF454545, 0xFF383838, 0xFF303030,
|
||||
0xFFC00000, 0xFF800000 };
|
||||
|
||||
int quitting = 0, activetool = -1, overtool = -1, activeblock = 0, overblock = -1, palette[16], strmaxw, shift = 0, ctrl = 0;
|
||||
int systemcursor = 0;
|
||||
int quitting = 0, activetool = -1, overtool = -1, activeblock = 0, overblock = -1, palette[16], strmaxw, strsep = 1;
|
||||
int shift = 0, ctrl = 0, help = 0, systemcursor = 0;
|
||||
char *status = NULL;
|
||||
unsigned char *tmpblk = NULL;
|
||||
SDL_Window *window = NULL;
|
||||
SDL_Surface *icons = NULL;
|
||||
SDL_Surface *screen = NULL;
|
||||
SDL_Surface *cursor = NULL;
|
||||
SDL_Surface *fg = NULL;
|
||||
SDL_Surface *cl = NULL;
|
||||
SDL_Surface *bg = NULL;
|
||||
SDL_Surface *blk = NULL;
|
||||
SDL_Cursor *working, *pointer;
|
||||
|
||||
psf_t *font = NULL;
|
||||
|
||||
/* help strings */
|
||||
help_t helpkeys[] = {
|
||||
{ ADDBLOCKS, " TAB \001 / \001 M " },
|
||||
{ SELBLOCK, " 0 \001 .. \001 9 " },
|
||||
{ FILL, " Enter " },
|
||||
{ PAINT, " " },
|
||||
{ LOAD, " L " },
|
||||
{ SAVE, " S " },
|
||||
{ SAVEAS, " Shift \001 + \001 S " },
|
||||
{ SAVEPREVIEW, " P " },
|
||||
{ CHANGEORIENT, " R " },
|
||||
{ MIRROR, " F " },
|
||||
{ ADDY, " X " },
|
||||
{ DELY, " Ctrl \001 + \001 X " },
|
||||
{ ADDZ, " C " },
|
||||
{ DELZ, " Ctrl \001 + \001 C " },
|
||||
{ ADDX, " V " },
|
||||
{ DELX, " Ctrl \001 + \001 V " },
|
||||
{ UNDO, " Z " },
|
||||
{ REDO, " Y " },
|
||||
{ BRUSH, " B " },
|
||||
{ GROUNDLEVEL, " G " },
|
||||
{ LAYERUP, " PgUp " },
|
||||
{ LAYERDOWN, " PgDn " },
|
||||
{ SCROLL, " Ctrl \001 + \001\033\001 \001\030\001 \001\031\001 \001\032" }
|
||||
};
|
||||
|
||||
/**
|
||||
* Print string to screen
|
||||
*/
|
||||
|
@ -63,6 +90,7 @@ void sdlprint(int x, int y, int fg, int bg, char *s)
|
|||
else c = 0;
|
||||
} else c = *s;
|
||||
s++;
|
||||
if(c == 1) { fg += bg; bg = fg - bg; fg -= bg; continue; }
|
||||
glyph = (unsigned char*)font + font->headersize + (c < font->numglyph ? c : 0) * font->bytesperglyph;
|
||||
offs = (y * screen->pitch) + (x * 4);
|
||||
for(j = 0; j < font->height; j++){
|
||||
|
@ -76,10 +104,35 @@ void sdlprint(int x, int y, int fg, int bg, char *s)
|
|||
glyph += bytesperline;
|
||||
offs += screen->pitch;
|
||||
}
|
||||
x += font->width + 1;
|
||||
x += font->width + strsep;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Draw help window
|
||||
*/
|
||||
void sdlhelp()
|
||||
{
|
||||
int i;
|
||||
SDL_Rect rect;
|
||||
|
||||
i = screen->w * 3 / 4;
|
||||
rect.w = strlen(lang[HELP]) * (font->width+1) + 8;
|
||||
if(i > rect.w) rect.w = i;
|
||||
rect.h = ((int)(sizeof(helpkeys)/sizeof(helpkeys[0])) + 1) * (font->height + 4) + 8;
|
||||
rect.x = (screen->w - rect.w)/2;
|
||||
rect.y = (screen->h - rect.h)/2;
|
||||
SDL_FillRect(screen, &rect, theme[THEME_BG]);
|
||||
rect.x += 4; rect.y += 4; strmaxw = rect.x + rect.w - 8;
|
||||
|
||||
for(i = 0; i < (int)(sizeof(helpkeys)/sizeof(helpkeys[0])); i++) {
|
||||
strsep = 0; sdlprint(rect.x, rect.y, THEME_BG, THEME_FG, helpkeys[i].key); strsep = 1;
|
||||
sdlprint(rect.x + 136, rect.y, THEME_FG, THEME_BG, lang[(int)helpkeys[i].text]);
|
||||
rect.y += font->height + 4;
|
||||
}
|
||||
sdlprint(rect.x + (rect.w - strlen(lang[HELP]) * (font->width+1)) / 2, rect.y, THEME_INACT, THEME_BG, lang[HELP]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Redraw the toolbar
|
||||
*/
|
||||
|
@ -89,22 +142,25 @@ void sdltoolbar()
|
|||
char *s = status, str[5];
|
||||
SDL_Rect src, dst;
|
||||
|
||||
strmaxw = screen->w - 5;
|
||||
dst.x = dst.y = 0; dst.w = 36; dst.h = screen->h;
|
||||
SDL_FillRect(screen, &dst, theme[THEME_BG]);
|
||||
dst.x = 2; dst.y = 4 + 5*36; dst.w = 32; dst.h = screen->h - 3*font->height - 2*37 - dst.y;
|
||||
dst.x = 2; dst.y = 4 + 5*36 + 84; dst.w = 32; dst.h = screen->h - 3*font->height - 4 - 2*37 - dst.y;
|
||||
SDL_FillRect(screen, &dst, theme[THEME_TABBG]);
|
||||
|
||||
/* layer up and down */
|
||||
src.w = src.h = dst.w = dst.h = 32; src.x = 0; dst.x = 2;
|
||||
dst.y = screen->h - 3*font->height - 2*37;
|
||||
for(i = 5; i < 7; i++, dst.y += 36) {
|
||||
src.y = (i+6) * 32;
|
||||
for(i = 0; i < 2; i++, dst.y += 36) {
|
||||
src.y = (i+14) * 32;
|
||||
dst.x--; dst.y--; dst.w += 2; dst.h += 2;
|
||||
SDL_FillRect(screen, &dst, theme[i == activetool ? THEME_FG : (i == overtool ? THEME_INACT : THEME_BG)]);
|
||||
SDL_FillRect(screen, &dst, theme[(i+17) == activetool ? THEME_FG : ((i+17) == overtool ? THEME_INACT : THEME_BG)]);
|
||||
dst.x++; dst.y++; dst.w -= 2; dst.h -= 2;
|
||||
SDL_BlitSurface(icons, &src, screen, &dst);
|
||||
}
|
||||
/* load, save, preview */
|
||||
dst.y = 2;
|
||||
for(i = 0; i < 5; i++) {
|
||||
for(i = 0; i < 3; i++) {
|
||||
src.y = (i+5) * 32;
|
||||
dst.y = 4 + (i * 36);
|
||||
dst.x--; dst.y--; dst.w += 2; dst.h += 2;
|
||||
|
@ -112,8 +168,28 @@ void sdltoolbar()
|
|||
dst.x++; dst.y++; dst.w -= 2; dst.h -= 2;
|
||||
SDL_BlitSurface(icons, &src, screen, &dst);
|
||||
}
|
||||
src.y = 10 * 32; dst.x = 2; dst.y = 4 + 5 * 36;
|
||||
m = screen->h - 3*font->height - 2*37;
|
||||
/* rotate, flip, insert, remove, undo, redo, zoom */
|
||||
dst.w = dst.h = 16;
|
||||
for(i = 0; i < 10; i++) {
|
||||
dst.x = 2 + (i & 1)*16;
|
||||
dst.y = 4 + (3 * 36) + (i >> 1) * 16;
|
||||
SDL_FillRect(screen, &dst, theme[(i+3) == activetool ? THEME_FG : ((i+3) == overtool ? THEME_INACT : THEME_BG)]);
|
||||
}
|
||||
src.y = 8 * 32; dst.x = 2; dst.y = 4 + (3 * 36); dst.w = 32; src.h = dst.h = 80;
|
||||
SDL_BlitSurface(icons, &src, screen, &dst);
|
||||
/* brush shape, all blocks (search blocks to add to palette) */
|
||||
dst.w = dst.h = src.h = 32;
|
||||
for(i = 0; i < 2; i++) {
|
||||
src.y = (i+11) * 32;
|
||||
dst.y = 88 + ((i+3) * 36);
|
||||
dst.x--; dst.y--; dst.w += 2; dst.h += 2;
|
||||
SDL_FillRect(screen, &dst, theme[(i + 15) == activetool ? THEME_FG : ((i + 15) == overtool ? THEME_INACT : THEME_BG)]);
|
||||
dst.x++; dst.y++; dst.w -= 2; dst.h -= 2;
|
||||
SDL_BlitSurface(icons, &src, screen, &dst);
|
||||
}
|
||||
/* blocks palette */
|
||||
src.y = 13 * 32; dst.x = 2; dst.y = 4 + 5*36 + 84;
|
||||
m = screen->h - 3*font->height - 2*37 - 4;
|
||||
SDL_FillRect(screen, &dst, theme[!activeblock ? THEME_INACT : (!overblock ? THEME_INPBG : THEME_TABBG)]);
|
||||
SDL_BlitSurface(icons, &src, screen, &dst);
|
||||
src.y = 0; dst.y += 32;
|
||||
|
@ -129,16 +205,28 @@ void sdltoolbar()
|
|||
if((activetool == -1 && overtool < -1) || overtool >= 0) s = lang[LOAD + overtool];
|
||||
if(overblock != -1 && (!overblock || palette[overblock])) s = blocks[palette[overblock]].name;
|
||||
}
|
||||
/* ground layer */
|
||||
dst.x = 2; dst.y = screen->h - 3*font->height; dst.w = 32; dst.h = font->height;
|
||||
i = currlayer == gndlayer ? THEME_FG : THEME_TABBG;
|
||||
SDL_FillRect(screen, &dst, theme[i]);
|
||||
sdlprint(5, screen->h - 3*font->height, THEME_INACT, i, lang[GND]);
|
||||
/* current layer */
|
||||
dst.x = 2; dst.y = screen->h - 2*font->height; dst.w = 32; dst.h = font->height;
|
||||
SDL_FillRect(screen, &dst, theme[THEME_BG]);
|
||||
sprintf(str, "%4d", currlayer - gndlayer);
|
||||
/* probability */
|
||||
sdlprint(0, screen->h - 2*font->height, THEME_INACT, THEME_BG, str);
|
||||
sprintf(str, "%3d%%", layerprob[currlayer] * 100 / 127);
|
||||
sdlprint(2, screen->h - font->height, THEME_INACT, THEME_BG, str);
|
||||
/* status bar */
|
||||
sprintf(str, "%3d", brush_height());
|
||||
sdlprint(screen->w - 5 * font->width - 8, screen->h - font->height, THEME_FG, THEME_BG, str);
|
||||
memcpy(str, "\xC2\x80\xC2\x80", 5);
|
||||
strsep = 0;
|
||||
str[1] = 0x80 + (4*brush_type) + (2*brush_hollow);
|
||||
str[3] = 0x81 + (4*brush_type) + (2*brush_hollow);
|
||||
sdlprint(screen->w - 2 * font->width - 4, screen->h - font->height, THEME_FG, THEME_BG, str);
|
||||
strsep = 1;
|
||||
if(s)
|
||||
sdlprint(42, screen->h - font->height, THEME_FG, THEME_BG, s);
|
||||
}
|
||||
|
@ -148,81 +236,50 @@ void sdltoolbar()
|
|||
*/
|
||||
void sdlredraw()
|
||||
{
|
||||
SDL_Rect rect;
|
||||
|
||||
/* main window area */
|
||||
strmaxw = screen->w;
|
||||
rect.x = 36; rect.y = 0; rect.w = screen->w - 36; rect.h = screen->h - font->height;
|
||||
SDL_FillRect(screen, &rect, theme[activetool == 1 || activetool == 4 ? THEME_BG : THEME_TABBG]);
|
||||
switch(activetool) {
|
||||
case 1: save_redraw(); break;
|
||||
case 4: search_redraw(); break;
|
||||
default: if(dx && dz) edit_redraw(); break;
|
||||
case 15: edit_redraw(1); brush_redraw(); break;
|
||||
case 16: search_redraw(); break;
|
||||
default: edit_redraw(1); break;
|
||||
}
|
||||
|
||||
/* toolbar and status bar */
|
||||
sdltoolbar();
|
||||
|
||||
if(help) sdlhelp();
|
||||
|
||||
/* flush the window */
|
||||
SDL_UpdateWindowSurface(window);
|
||||
}
|
||||
|
||||
/**
|
||||
* UI for saving
|
||||
* UI for various MTS operations
|
||||
*/
|
||||
void sdldosave()
|
||||
{
|
||||
SDL_SetCursor(working);
|
||||
mts_save();
|
||||
SDL_SetCursor(pointer);
|
||||
activetool = -1; activeblock = 0;
|
||||
sdlredraw();
|
||||
}
|
||||
|
||||
/**
|
||||
* UI for loading
|
||||
*/
|
||||
void sdldoload()
|
||||
{
|
||||
SDL_SetCursor(working);
|
||||
readschem();
|
||||
SDL_SetCursor(pointer);
|
||||
activetool = -1; activeblock = 0;
|
||||
sdlredraw();
|
||||
}
|
||||
|
||||
/**
|
||||
* UI for preview
|
||||
*/
|
||||
void sdldopreview()
|
||||
{
|
||||
SDL_SetCursor(working);
|
||||
mts_view(shift);
|
||||
SDL_SetCursor(pointer);
|
||||
sdlredraw();
|
||||
}
|
||||
|
||||
/**
|
||||
* UI for rotating
|
||||
*/
|
||||
void sdldorotate(int ccw)
|
||||
void sdldo(int opt)
|
||||
{
|
||||
int i;
|
||||
|
||||
SDL_ShowCursor(1); systemcursor = 1;
|
||||
SDL_SetCursor(working);
|
||||
mts_rotate(ccw);
|
||||
i = cx;
|
||||
if(ccw) { cx = cz; cz = 255 - i; } else { cx = 255 - cz; cz = i; }
|
||||
SDL_SetCursor(pointer);
|
||||
}
|
||||
|
||||
/**
|
||||
* UI for fliping
|
||||
*/
|
||||
void sdldoflip()
|
||||
{
|
||||
SDL_SetCursor(working);
|
||||
mts_flip();
|
||||
switch(opt) {
|
||||
case -1: activetool = -1; break;
|
||||
case 0: readschem(); activetool = -1; activeblock = 0; break;
|
||||
case 1: mts_save(); activetool = -1; activeblock = 0; break;
|
||||
case 2: mts_view(shift); break;
|
||||
case 3:
|
||||
case 4: mts_rotate(4-opt); i = cx; if(opt == 3) { cx = cz; cz = 255 - i; } else { cx = 255 - cz; cz = i; } break;
|
||||
case 5: mts_flip(); break;
|
||||
case 6: hist_prepare(HIST_ADDY, currlayer); mts_addy(currlayer, shift); hist_commit(); break;
|
||||
case 7: hist_prepare(HIST_DELY, currlayer); mts_dely(currlayer); hist_commit(); break;
|
||||
case 8: hist_prepare(HIST_ADDZ, cz); mts_addz(cz, shift); hist_commit(); break;
|
||||
case 9: hist_prepare(HIST_DELZ, cz); mts_delz(cz); hist_commit(); break;
|
||||
case 10: hist_prepare(HIST_ADDX, cx); mts_addx(cx, shift); hist_commit(); break;
|
||||
case 11: hist_prepare(HIST_DELX, cx); mts_delx(cx); hist_commit(); break;
|
||||
}
|
||||
SDL_SetCursor(pointer);
|
||||
SDL_ShowCursor(0); systemcursor = 0;
|
||||
sdlredraw();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -238,8 +295,8 @@ void sdlmain()
|
|||
SDL_Event event;
|
||||
|
||||
/* get our font */
|
||||
font = (psf_t*)stbi_zlib_decode_malloc_guesssize_headerflag((const char*)&font_start, (char*)&font_end - (char*)&font_start,
|
||||
32768, &len, 1);
|
||||
font = (psf_t*)stbi_zlib_decode_malloc_guesssize_headerflag((const char*)&font_start + 10,
|
||||
(char*)&font_end - (char*)&font_start - 10, 32768, &len, 0);
|
||||
if(!font) error(lang[ERR_MEM]);
|
||||
|
||||
/* initialize SDL */
|
||||
|
@ -255,7 +312,7 @@ void sdlmain()
|
|||
working = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_WAITARROW);
|
||||
pointer = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_ARROW);
|
||||
|
||||
/* get icons */
|
||||
/* get icons and surfaces */
|
||||
s.read_from_callbacks = 0;
|
||||
s.img_buffer = s.img_buffer_original = (unsigned char *)&icons_start;
|
||||
s.img_buffer_end = s.img_buffer_original_end = (unsigned char *)&icons_end;
|
||||
|
@ -267,8 +324,10 @@ void sdlmain()
|
|||
icons = SDL_CreateRGBSurfaceFrom((uint32_t*)icondata, iw, ih, 32, iw*4, 0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
blk = SDL_CreateRGBSurfaceFrom(NULL, 32, 32, 32, 32*4, 0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
fg = SDL_CreateRGBSurface(0, screen->w - 36, screen->h - font->height, 32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
cl = SDL_CreateRGBSurface(0, screen->w - 36, screen->h - font->height, 32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
bg = SDL_CreateRGBSurface(0, screen->w - 36, screen->h - font->height, 32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
cursor = SDL_CreateRGBSurface(0, 32, 32, 32, 0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
memset(&histcurr, 0, sizeof(histlist_t));
|
||||
dx = dz = 0;
|
||||
|
||||
/* draw window and loading message */
|
||||
memset(palette, 0, sizeof(palette));
|
||||
|
@ -292,9 +351,9 @@ void sdlmain()
|
|||
if(!nodes[i][j][k].param0) nodes[i][j][k].param1 = 0;
|
||||
|
||||
/* repaint window with the loaded MTS */
|
||||
sdlredraw();
|
||||
SDL_SetCursor(pointer);
|
||||
SDL_ShowCursor(0);
|
||||
sdlredraw();
|
||||
SDL_StartTextInput();
|
||||
|
||||
/* main loop */
|
||||
|
@ -314,6 +373,8 @@ void sdlmain()
|
|||
screen = SDL_GetWindowSurface(window);
|
||||
fg = SDL_CreateRGBSurface(0, screen->w - 36, screen->h - font->height, 32,
|
||||
0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
cl = SDL_CreateRGBSurface(0, screen->w - 36, screen->h - font->height, 32,
|
||||
0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
bg = SDL_CreateRGBSurface(0, screen->w - 36, screen->h - font->height, 32,
|
||||
0xFF, 0xFF00, 0xFF0000, 0xFF000000);
|
||||
sdlredraw();
|
||||
|
@ -335,22 +396,30 @@ void sdlmain()
|
|||
}
|
||||
if(event.motion.x < 36) {
|
||||
/* toolbar */
|
||||
if(event.motion.y < 4 + 5 * 36) {
|
||||
if(event.motion.y < 4 + 3 * 36) {
|
||||
i = (event.motion.y > 3 ? event.motion.y - 4 : event.motion.y) / 36;
|
||||
} else
|
||||
if(event.motion.y < 4 + 3 * 36 + 80) {
|
||||
i = 3 + ((((event.motion.y - 4 - 3 * 36) / 16) << 1) | (event.motion.x >= 18 ? 1 : 0));
|
||||
} else
|
||||
if(event.motion.y < 4 + 5 * 36 + 84) {
|
||||
i = 15 + ((event.motion.y - 4 - 3 * 36 - 84) / 36);
|
||||
} else
|
||||
if(event.motion.y >= (int)(screen->h - font->height)) i = -3; else
|
||||
if(event.motion.y >= (int)(screen->h - 2*font->height)) i = -4; else
|
||||
if(event.motion.y >= (int)(screen->h - 3*font->height)) i = -2; else
|
||||
if(event.motion.y >= (int)(screen->h - 3*font->height - 36)) i = 6; else
|
||||
if(event.motion.y >= (int)(screen->h - 3*font->height - 2*36)) i = 5; else
|
||||
if(event.motion.y < (int)(screen->h - 3*font->height - 2*36)) j = (event.motion.y - (4 + 5 * 36)) / 32;
|
||||
if(event.motion.y >= (int)(screen->h - 3*font->height - 36)) i = 18; else
|
||||
if(event.motion.y >= (int)(screen->h - 3*font->height - 2*36)) i = 17; else
|
||||
if(event.motion.y < (int)(screen->h - 3*font->height - 2*36))
|
||||
j = (event.motion.y - 4 - 5 * 36 - 88) / 32;
|
||||
} else
|
||||
if(activetool == 4) search_mouseover(&event); else
|
||||
if(activetool == 16) search_mouseover(&event); else
|
||||
if(activetool == -1) {
|
||||
if(event.motion.x > screen->w - 32 && event.motion.y >= (int)(screen->h - font->height - 32)) i = -5;
|
||||
k = cx; l = cz;
|
||||
edit_mouseover(&event);
|
||||
if(k != cx || l != cz) {
|
||||
edit_redraw(0);
|
||||
sdltoolbar();
|
||||
SDL_UpdateWindowSurface(window);
|
||||
}
|
||||
|
@ -376,19 +445,40 @@ void sdlmain()
|
|||
sdltoolbar();
|
||||
SDL_UpdateWindowSurface(window);
|
||||
}
|
||||
if(activetool == 1) save_mousedown(&event); else
|
||||
if(activetool == 4) search_mousedown(&event);
|
||||
switch(activetool) {
|
||||
case 1: save_mousedown(&event); break;
|
||||
case 15:
|
||||
if(event.motion.x > 36) {
|
||||
if(!brush_mousedown(&event)) {
|
||||
edit_mouseover(&event);
|
||||
edit_redraw(0);
|
||||
SDL_ShowCursor(0); systemcursor = 0; activetool = -1;
|
||||
}
|
||||
SDL_UpdateWindowSurface(window);
|
||||
}
|
||||
break;
|
||||
case 16: search_mousedown(&event); break;
|
||||
}
|
||||
break;
|
||||
case SDL_MOUSEBUTTONUP:
|
||||
if(activetool != -1 && activetool == overtool) {
|
||||
switch(activetool) {
|
||||
case 0: sdldoload(); break;
|
||||
case 2: sdldopreview(); break;
|
||||
case 3: sdldorotate(shift || event.button.button != 1 ? 0 : 1); break;
|
||||
case 5: if(currlayer < 255) currlayer++; break;
|
||||
case 6: if(currlayer > 0) currlayer--; break;
|
||||
default: if(activetool != 1 && activetool != 4) activetool = -1; break;
|
||||
case 0: sdldo(0); break;
|
||||
case 2: sdldo(2); break;
|
||||
case 3: sdldo(shift || event.button.button != 1 ? 4 : 3); break;
|
||||
case 4: sdldo(5); break;
|
||||
case 5: sdldo(6); break;
|
||||
case 6: sdldo(7); break;
|
||||
case 7: sdldo(8); break;
|
||||
case 8: sdldo(9); break;
|
||||
case 9: sdldo(10); break;
|
||||
case 10: sdldo(11); break;
|
||||
case 11: hist_undo(); break;
|
||||
case 12: hist_redo(); break;
|
||||
case 17: if(currlayer < 255) currlayer++; break;
|
||||
case 18: if(currlayer > 0) currlayer--; break;
|
||||
}
|
||||
if(activetool != 1 && activetool != 15 && activetool != 16) activetool = -1;
|
||||
}
|
||||
sdlredraw();
|
||||
break;
|
||||
|
@ -396,7 +486,7 @@ void sdlmain()
|
|||
if(overtool == -3) mts_layerprob(event.wheel.y); else
|
||||
switch(activetool) {
|
||||
case 1: save_scroll(&event); break;
|
||||
case 4: search_scroll(&event); break;
|
||||
case 16: search_scroll(&event); break;
|
||||
case -1: edit_scroll(&event); break;
|
||||
}
|
||||
sdlredraw();
|
||||
|
@ -407,33 +497,47 @@ void sdlmain()
|
|||
status = NULL;
|
||||
if(event.key.keysym.sym == SDLK_LSHIFT || event.key.keysym.sym == SDLK_RSHIFT) shift = 1;
|
||||
if(event.key.keysym.sym == SDLK_LCTRL || event.key.keysym.sym == SDLK_RCTRL) ctrl = 1;
|
||||
if(activetool != -1 && event.key.keysym.sym == SDLK_ESCAPE) {
|
||||
SDL_ShowCursor(0);
|
||||
systemcursor = 0;
|
||||
activetool = -1;
|
||||
} else
|
||||
if(activetool != 1 && activetool != 4) edit_key(&event);
|
||||
if(!help) {
|
||||
if(activetool != -1 && event.key.keysym.sym == SDLK_ESCAPE) {
|
||||
if(activetool == 15) brush_setmask(1);
|
||||
SDL_ShowCursor(0);
|
||||
systemcursor = 0;
|
||||
activetool = -1;
|
||||
} else
|
||||
if(activetool != 1 && activetool != 15 && activetool != 16) edit_key(&event);
|
||||
}
|
||||
break;
|
||||
case SDL_TEXTINPUT:
|
||||
case SDL_KEYUP:
|
||||
if(event.key.keysym.sym == SDLK_LSHIFT || event.key.keysym.sym == SDLK_RSHIFT) shift = 0;
|
||||
if(event.key.keysym.sym == SDLK_LCTRL || event.key.keysym.sym == SDLK_RCTRL) ctrl = 0;
|
||||
if(activetool == 1) save_key(&event); else
|
||||
if(activetool == 4) {
|
||||
if(event.key.keysym.sym == SDLK_TAB) {
|
||||
SDL_ShowCursor(0);
|
||||
systemcursor = 0;
|
||||
activetool = -1;
|
||||
} else search_key(&event);
|
||||
if(event.key.keysym.sym == SDLK_F1) { help ^= 1; sdlredraw(); break; }
|
||||
if(!help) {
|
||||
i = 0;
|
||||
switch(activetool) {
|
||||
case 1: save_key(&event); break;
|
||||
case 15: brush_key(&event); break;
|
||||
case 16: search_key(&event); break;
|
||||
default:
|
||||
if(event.key.keysym.sym == SDLK_f) sdldo(5); else
|
||||
if(event.key.keysym.sym == SDLK_m || event.key.keysym.sym == SDLK_TAB) activetool = 16;
|
||||
if(event.key.keysym.sym == SDLK_b) activetool = 15;
|
||||
if(shift && event.key.keysym.sym == SDLK_s) activetool = 1;
|
||||
break;
|
||||
}
|
||||
if(!i) sdlredraw();
|
||||
else {
|
||||
edit_redraw(0);
|
||||
sdltoolbar();
|
||||
SDL_UpdateWindowSurface(window);
|
||||
}
|
||||
} else {
|
||||
if(event.key.keysym.sym == SDLK_f) sdldoflip(); else
|
||||
if(event.key.keysym.sym == SDLK_m || event.key.keysym.sym == SDLK_TAB) activetool = 4;
|
||||
help = 0;
|
||||
sdlredraw();
|
||||
}
|
||||
if(shift && event.key.keysym.sym == SDLK_s) activetool = 1;
|
||||
sdlredraw();
|
||||
break;
|
||||
}
|
||||
if(activetool != -1 || SDL_GetCursor() == working) {
|
||||
if(activetool != -1 || overtool != -1 || SDL_GetCursor() == working) {
|
||||
if(!systemcursor) SDL_ShowCursor(1);
|
||||
systemcursor = 1;
|
||||
}
|
||||
|
@ -447,9 +551,10 @@ void sdlmain()
|
|||
SDL_FreeSurface(icons);
|
||||
SDL_FreeSurface(blk);
|
||||
SDL_FreeSurface(fg);
|
||||
SDL_FreeSurface(cl);
|
||||
SDL_FreeSurface(bg);
|
||||
SDL_FreeSurface(cursor);
|
||||
SDL_Quit();
|
||||
hist_free(-1, -1);
|
||||
free(icondata);
|
||||
free(font);
|
||||
freeblocks();
|
||||
|
|
|
@ -41,6 +41,9 @@ void search_redraw()
|
|||
int i;
|
||||
SDL_Rect rect;
|
||||
|
||||
rect.x = 36; rect.y = 0; rect.w = screen->w - 36; rect.h = screen->h - font->height;
|
||||
SDL_FillRect(screen, &rect, theme[THEME_BG]);
|
||||
|
||||
strmaxw = screen->w - 5;
|
||||
sdlprint((screen->w - 47 - strlen(lang[ADDBLOCKS]) * (font->width+1)) / 2 + 47, 4, THEME_INPUT, THEME_BG, lang[ADDBLOCKS]);
|
||||
rect.y = 12 + font->height;
|
||||
|
@ -101,6 +104,8 @@ void search_mousedown(_unused SDL_Event *event)
|
|||
{
|
||||
if(overblk != -1 && overblk < numresults) {
|
||||
search_addblock(overblk);
|
||||
status = overblk < 0 || overblk >= numresults || results[overblk] < 0 || results[overblk] >= numblocks ? NULL :
|
||||
blocks[results[overblk]].name;
|
||||
sdlredraw();
|
||||
}
|
||||
}
|
||||
|
@ -163,6 +168,8 @@ void search_key(SDL_Event *event)
|
|||
case SDLK_DOWN: searchpos = searchlen; break;
|
||||
case SDLK_LEFT: if(searchpos) searchpos--; break;
|
||||
case SDLK_RIGHT: if(searchpos < searchlen) searchpos++; break;
|
||||
case SDLK_TAB:
|
||||
case SDLK_RETURN: sdldo(-1); break;
|
||||
}
|
||||
if(ctrl && event->key.keysym.sym >= SDLK_1 && event->key.keysym.sym <= SDLK_9)
|
||||
search_addblock(event->key.keysym.sym - SDLK_1);
|
||||
|
|