archiv:gf:gf2020_2021:minecraft:projekt:2d1:leonamina:start

Amina, Leon

Unser Projekt trägt den Namen „Bahn des Lebens“.

Mit der folgenden Funktion kann in Minecraft eine „Achterbahn“ gebaut werden, mit der man eine Reise durch das ganze Leben machen kann.

Beginnend mit der Geburt im Stall, dieser Ort wurde auf Grund kulturellen Aspekten als Start gewählt. Begleitet wird man in den ersten Metern von einigen Tieren, welche den Aufenthalt angenehmer gestalten sollen und für eine gemütliche, sorgenlose Aura sorgen.

Weiter geht es mit einer kleinen Aufgabe. Auf die Schienen, welche sich im Zaun des Geheges befinden, muss ein Wagen platziert werden, welcher sich bereits in der Leiste unten befindet. Im Wagen eingestiegen beginnt die Fahrt mit der Taste „W“.

In einem Tunnel werden die weitern Stationen des Lebens mit ausschlaggebenden Gebäuden bzw. Orten symbolisch dargestellt.

Als erstes zu sehen ist ein Schulzimmer. Denn mindestens neun Jahre, was etwa 1/10 der Lebenszeit entspricht, werden in der Schule verbracht.

Als weitere Station ist ein Büro zu sehen, welches als Symbol der Arbeitswelt steht.

Nun kann einige Zeit gewartet werden oder „ende“ in den Chat eingegeben werden. Danach wird man in einen Würfel teleportiert und im Chat sind Prozent Zahlen zu sehen. Sobald diese 100% betragen, wird man in den Himmel teleportiert, welcher Sinnbildlich für das Leben nach dem Tod steht.

Am Himmel zu lesen ist der Schriftzug „Willkommen im Himmel“.

Amina

Schule
def schule(xposs: number, yposs: number):
    #Boden
    blocks.fill(PLANKS_OAK,
        pos(xposs - 1, -1, yposs - 1),
        pos(xposs + 8, -1, yposs + 7),
        FillOperation.REPLACE)
    #Pult mit Stuhl
    for i in range(2):
        for p in range(4):
            blocks.place(OAK_FENCE, pos(xposs + i * 3 + 1, 0, yposs + p * 2))
            blocks.place(BIRCH_PRESSURE_PLATE,
            pos(xposs + i * 3 + 1, 1, yposs + p * 2))
            blocks.place(blocks.block_with_data(OAK_WOOD_STAIRS, 1),
                pos(xposs + i * 3, 0, yposs + p * 2))
    blocks.fill(BOOKSHELF, pos(xposs+8, 0, yposs-1), pos(xposs+8, 2, yposs+7), FillOperation.REPLACE)
    #Wandtafel
    blocks.fill(BLACK_WOOL,
        pos(xposs + 8, 1, yposs + 1),
        pos(xposs + 8, 3, yposs + 5),
        FillOperation.REPLACE)
schule(2, 2)
Gehege
def gehege(xPos, yPos):
    blocks.fill(GRASS,
        pos(xPos, -1, yPos),
        pos(xPos + 17, -1, yPos + 23),
        FillOperation.REPLACE)
    blocks.fill(IRON_BARS,
        pos(xPos, 0, yPos),
        pos(xPos + 17, 1, yPos + 23),
        FillOperation.REPLACE)
    blocks.fill(AIR, pos(xPos+1,0,yPos+1), pos(xPos+16, 1, yPos+22), FillOperation.REPLACE)
    blocks.fill(HAY_BLOCK, pos(xPos+6, 0, yPos+6), pos(xPos+8, 0, yPos+8), FillOperation.REPLACE)
    blocks.fill(LOG_OAK,
        pos(xPos+12, 0, yPos+14),
        pos(xPos+12, 5, yPos+14),
        FillOperation.REPLACE)
    blocks.fill(LEAVES_OAK,
        pos(xPos+11, 3, yPos+13),
        pos(xPos+13, 6, yPos+15),
        FillOperation.KEEP)
    blocks.fill(LEAVES_OAK,
        pos(xPos+10, 4, yPos+12),
        pos(xPos+14, 5, yPos+16),
        FillOperation.KEEP)
    blocks.fill(LOG_BIRCH,
        pos(xPos+3, 0, yPos+19),
        pos(xPos+3, 6, yPos+19),
        FillOperation.REPLACE)
    blocks.fill(LEAVES_BIRCH,
        pos(xPos+2, 4, yPos+18),
        pos(xPos+4, 8, yPos+20),
        FillOperation.KEEP)
    blocks.fill(LEAVES_BIRCH,
        pos(xPos+1, 5, yPos+17),
        pos(xPos+5, 7, yPos+21),
        FillOperation.KEEP)
    blocks.fill(PLANKS_OAK,
        pos(xPos+17, 2, yPos+0),
        pos(xPos+6, 0, yPos+3),
        FillOperation.REPLACE)
    blocks.fill(PLANKS_OAK,
        pos(xPos+17, 2, yPos),
        pos(xPos+12, 0, yPos+10),
        FillOperation.REPLACE)
    blocks.fill(AIR, pos(xPos+16, 1, yPos+1), pos(xPos+7, 0, yPos+3), FillOperation.REPLACE)
    blocks.fill(AIR, pos(xPos+16, 1, yPos+1), pos(xPos+10, 0, yPos+9), FillOperation.REPLACE)
    for index in range(3):
        mobs.spawn(PIG, pos(xPos+6, 0, yPos+6))
        mobs.spawn(CHICKEN, pos(xPos+6, 0, yPos+6))
        mobs.spawn(SHEEP, pos(xPos+6, 0, yPos+6))
        mobs.spawn(HORSE, pos(xPos+6, 0, yPos+6))
        mobs.spawn(COW, pos(xPos+6, 0, yPos+6))
gehege(4,8)

Leon

Tunnel
def tunnel(xpost,ypost,width,height,length):
        blocks.fill(BLOCK_OF_QUARTZ, pos(xpost, 0, ypost), pos(xpost+width, height, ypost+length), FillOperation.HOLLOW)
        blocks.fill(BLOCK_OF_QUARTZ,pos(xpost,0,ypost+length),pos(xpost+length+width,height,ypost+length+width),FillOperation.HOLLOW)
        blocks.fill(AIR,pos(xpost+1,1,ypost+length),pos(xpost+width-1,height-1,ypost+length))
        #schienen
        blocks.fill(RAIL, pos(xpost+(width/2),1,ypost),pos(xpost+(width/2),1,ypost+length+(width/2)), FillOperation.REPLACE)
        blocks.fill(RAIL,pos(xpost+(width/2),1,ypost+length+(width/2)),pos(xpost+length+width,1,ypost+length+(width/2)))

tunnel(5,4,40,6,5)
Büro
def buro(xposb,yposb,widthb,lengthb,heightb,tisch):
    blocks.fill(GRAY_WOOL, pos(xposb, 0, yposb), pos(xposb+widthb, 0, yposb+lengthb))
    for i in range(tisch):
        blocks.fill(BIRCH_FENCE,pos(xposb+2+i*4,1,yposb+2),pos(xposb++2+i*4,1,yposb+4))
        blocks.fill(WHITE_CARPET,pos(xposb+2+i*4,2,yposb+2),pos(xposb+2+i*4,2,yposb+4))
        blocks.place(blocks.block_with_data(QUARTZ_STAIRS,1),pos(xposb+1+i*4,1,yposb+3))
        blocks.fill(WHITE_STAINED_GLASS_PANE,pos(xposb+2+i*4,1,yposb+1),pos(xposb+i*4,2,yposb+1))
buro(5,6,30,9,3,5)
Himmel
def heaven(xposh,zposh,yposh,lengthh,widthh,heighth,cloud):
    #gate
    blocks.fill(GLOWSTONE,pos(-1,0,-2),pos(1,3 ,2),FillOperation.HOLLOW)
    #Himmelraum
    blocks.fill(WHITE_STAINED_GLASS, pos(xposh,zposh,yposh),pos(xposh+widthh,zposh+1+heighth,yposh+lengthh),FillOperation.HOLLOW)
    blocks.fill(AIR, pos(xposh,zposh+1+heighth,yposh),pos(xposh+widthh+1,zposh+1+heighth,yposh+lengthh+1),FillOperation.REPLACE)
    #wolken
    for i in range(cloud):
        p = randint(1, widthh)
        q = randint(1, lengthh)
        w = randint(1, heighth)
        r = randint(1,4)
        zeit = ((cloud+i)/cloud)*100-100
        shapes.circle(WOOL, pos(xposh+p, zposh+w, yposh+q), r, Axis.Y, ShapeOperation.REPLACE)
        shapes.circle(WOOL, pos(xposh+p, zposh+w+1, yposh+q), r-2, Axis.Y, ShapeOperation.REPLACE)
        player.tell(mobs.target(NEAREST_PLAYER), zeit + "%")
    shapes.circle(WOOL, pos(xposh+widthh/5, zposh+1, yposh+lengthh/5), 6, Axis.Y, ShapeOperation.REPLACE)
    shapes.circle(WOOL, pos(xposh+widthh/5, zposh+2, yposh+lengthh/5), 4, Axis.Y, ShapeOperation.REPLACE)
    #gate removal
    blocks.fill(AIR,pos(-1,-1,-2),pos(1,3 ,2),FillOperation.REPLACE)
    #tp
    player.teleport(pos(xposh+widthh/5, zposh+2, yposh+lengthh/5))
    blocks.print("Wilkommen im Himmel", WOOL, pos(xposh+60,zposh+10 , yposh+70), WEST)
heaven(5,0,7,40,50,6,50)

Endprodukt

def gehege(xPos, yPos):
    blocks.fill(GRASS,pos(xPos, -1, yPos),pos(xPos + 17, -1, yPos + 23),FillOperation.REPLACE)
    blocks.fill(IRON_BARS,pos(xPos, 0, yPos),pos(xPos + 17, 1, yPos + 23),FillOperation.REPLACE)
    blocks.fill(AIR, pos(xPos+1,0,yPos+1), pos(xPos+16, 1, yPos+22), FillOperation.REPLACE)
    blocks.fill(HAY_BLOCK, pos(xPos+6, 0, yPos+6), pos(xPos+8, 0, yPos+8), FillOperation.REPLACE)
    blocks.fill(LOG_OAK,pos(xPos+12, 0, yPos+14),pos(xPos+12, 5, yPos+14),FillOperation.REPLACE)
    blocks.fill(LEAVES_OAK,pos(xPos+11, 3, yPos+13),pos(xPos+13, 6, yPos+15),FillOperation.KEEP)
    blocks.fill(LEAVES_OAK,pos(xPos+10, 4, yPos+12),pos(xPos+14, 5, yPos+16),FillOperation.KEEP)
    blocks.fill(LOG_BIRCH,pos(xPos+3, 0, yPos+19),pos(xPos+3, 6, yPos+19),FillOperation.REPLACE)
    blocks.fill(LEAVES_BIRCH,pos(xPos+2, 4, yPos+18),pos(xPos+4, 8, yPos+20),FillOperation.KEEP)
    blocks.fill(LEAVES_BIRCH,pos(xPos+1, 5, yPos+17),pos(xPos+5, 7, yPos+21),FillOperation.KEEP)
    blocks.fill(PLANKS_OAK,pos(xPos+17, 2, yPos+0),pos(xPos+6, 0, yPos+3),FillOperation.REPLACE)
    blocks.fill(PLANKS_OAK, pos(xPos+17, 2, yPos),pos(xPos+12, 0, yPos+10),FillOperation.REPLACE)
    blocks.fill(AIR, pos(xPos+16, 1, yPos+1), pos(xPos+7, 0, yPos+3), FillOperation.REPLACE)
    blocks.fill(AIR, pos(xPos+16, 1, yPos+1), pos(xPos+10, 0, yPos+9), FillOperation.REPLACE)
    for index in range(3):
        mobs.spawn(PIG, pos(xPos+6, 0, yPos+6))
        mobs.spawn(CHICKEN, pos(xPos+6, 0, yPos+6))
        mobs.spawn(SHEEP, pos(xPos+6, 0, yPos+6))
        mobs.spawn(HORSE, pos(xPos+6, 0, yPos+6))
        mobs.spawn(COW, pos(xPos+6, 0, yPos+6))

def tunnel(xpost,ypost,width,height,length):
    blocks.fill(BLOCK_OF_QUARTZ, pos(xpost, 0, ypost), pos(xpost+width, height, ypost+length), FillOperation.HOLLOW)
    blocks.fill(BLOCK_OF_QUARTZ,pos(xpost,0,ypost+length),pos(xpost+length+width,height,ypost+length+width),FillOperation.HOLLOW)
    blocks.fill(AIR,pos(xpost+1,1,ypost+length),pos(xpost+width-1,height-1,ypost+length))
    blocks.fill(REDSTONE_BLOCK,pos(xpost+1, height-1, ypost+1), pos(xpost+width-1, height-1, ypost+length))
    blocks.fill(REDSTONE_LAMP,pos(xpost+1, height-2, ypost+1), pos(xpost+width-1, height-2, ypost+length))
    blocks.fill(REDSTONE_BLOCK,pos(xpost+1,height-1,ypost+length+1),pos(xpost-1+length+width,height-1,ypost+length+width-1))
    blocks.fill(REDSTONE_LAMP,pos(xpost+1,height-2,ypost+length+1),pos(xpost-1+length+width,height-2,ypost+length+width-1))
    #schienen
    blocks.fill(RAIL,pos(xpost+(width/5),1,ypost),pos(xpost+(width/5),1,ypost+length+(width/5)), FillOperation.REPLACE)
    blocks.fill(RAIL,pos(xpost+(width/5),1,ypost+length+(width/5)),pos(xpost+length+width-1,1,ypost+length+(width/5)))
    blocks.place(REDSTONE_BLOCK,pos(xpost+(width/5),0,ypost-1))
    blocks.place(POWERED_RAIL,pos(xpost+(width/5),1,ypost-1))
    blocks.place(REDSTONE_BLOCK,pos(xpost+(width/5),0,ypost+length+(width/5)))
    blocks.place(POWERED_RAIL,pos(xpost+(width/5),1,ypost+length+(width/5)))
    mobs.give(mobs.target(NEAREST_PLAYER), MINECART, 1)
    
    
def schule(xposs: number, yposs: number):
    #Boden
    blocks.fill(PLANKS_OAK,pos(xposs - 1, 0, yposs - 1),pos(xposs + 8, 0, yposs + 7),FillOperation.REPLACE)
    #Pult mit Stuhl
    for i in range(2):
        for p in range(4):
            blocks.place(OAK_FENCE, pos(xposs + i * 3 + 1, 1, yposs + p * 2))
            blocks.place(BIRCH_PRESSURE_PLATE,pos(xposs + i * 3 + 1, 2, yposs + p * 2))
            blocks.place(blocks.block_with_data(OAK_WOOD_STAIRS, 1),pos(xposs + i * 3, 1, yposs + p * 2))
    blocks.fill(BOOKSHELF, pos(xposs+8, 1, yposs-1), pos(xposs+8, 3, yposs+7), FillOperation.REPLACE)
    #Wandtafel
    blocks.fill(BLACK_WOOL,pos(xposs + 8, 2, yposs + 1),pos(xposs + 8, 4, yposs + 5),FillOperation.REPLACE)
    
def buro(xposb,yposb,widthb,lengthb,heightb,tisch):
    blocks.fill(GRAY_WOOL, pos(xposb, 0, yposb), pos(xposb+widthb, 0, yposb+lengthb))
    for i in range(tisch):
        blocks.fill(BIRCH_FENCE,pos(xposb+2+i*4,1,yposb+2),pos(xposb++2+i*4,1,yposb+4))
        blocks.fill(WHITE_CARPET,pos(xposb+2+i*4,2,yposb+2),pos(xposb+2+i*4,2,yposb+4))
        blocks.place(blocks.block_with_data(QUARTZ_STAIRS,1),pos(xposb+1+i*4,1,yposb+3))
        blocks.fill(WHITE_STAINED_GLASS_PANE,pos(xposb+2+i*4,1,yposb+1),pos(xposb+i*4,2,yposb+1))

 
def heaven(xposh,zposh,yposh,lengthh,widthh,heighth,cloud):
    #gate
    blocks.fill(GLOWSTONE,pos(-1,0,-2),pos(1,3 ,2),FillOperation.HOLLOW)
    #Himmelraum
    blocks.fill(WHITE_STAINED_GLASS, pos(xposh,zposh,yposh),pos(xposh+widthh,zposh+1+heighth,yposh+lengthh),FillOperation.HOLLOW)
    blocks.fill(AIR, pos(xposh,zposh+1+heighth,yposh),pos(xposh+widthh+1,zposh+1+heighth,yposh+lengthh+1),FillOperation.REPLACE)
    #wolken
    for i in range(cloud):
        p = randint(1, widthh)
        q = randint(1, lengthh)
        w = randint(1, heighth)
        r = randint(1,4)
        zeit = ((cloud+i)/cloud)*100-100
        shapes.circle(WOOL, pos(xposh+p, zposh+w, yposh+q), r, Axis.Y, ShapeOperation.REPLACE)
        shapes.circle(WOOL, pos(xposh+p, zposh+w+1, yposh+q), r-2, Axis.Y, ShapeOperation.REPLACE)
        player.tell(mobs.target(NEAREST_PLAYER), zeit + ' Prozent des Weges sind erreicht')
        shapes.circle(WOOL, pos(xposh+widthh/5, zposh+1, yposh+lengthh/5), 6, Axis.Y, ShapeOperation.REPLACE)
        shapes.circle(WOOL, pos(xposh+widthh/5, zposh+2, yposh+lengthh/5), 4, Axis.Y, ShapeOperation.REPLACE)
    #gate removal
    blocks.fill(AIR,pos(-1,-1,-2),pos(1,3 ,2),FillOperation.REPLACE)
    #tp
    player.teleport(pos(xposh+widthh/5, zposh+2, yposh+lengthh/5))
    blocks.print("Wilkommen im Himmel", WOOL, pos(xposh+60,zposh+10 , yposh+70), WEST)

gehege(-4,-8)
tunnel(-6,16,14,7,15)
schule(-1, 20)
buro(-4,35,25,9,3,6)


#himmelaktivierung
running=True
def ende():
    global running
    running=False
    heaven(5,50,7,40,50,6,50)

player.on_chat("ende",ende)

t=0
while running:
    loops.pause(10)
    t = t + 1
    if t>1000:
       heaven(5,50,7,40,50,6,50)
       running=False
  • archiv/gf/gf2020_2021/minecraft/projekt/2d1/leonamina/start.txt
  • Zuletzt geändert: 2022/08/27 18:08
  • von lehmannr