Untitled

mail@pastecode.io avatar
unknown
python
2 years ago
3.5 kB
0
Indexable
Never
#               PRZYPOMNIENIE
#   CO TO SĄ FUNKCJE? DLACZEGO TWORZYMY FUNKCJE?
#         JAK TWORZYMY FUNKCJE W PYTHON?
# 1. FUNKCJE TWORZYMY ZEBY WYKONYWAC JAKIS KOD WIELE RAZY
# 2. ZEBY UPROSCIC PROGRAMOWANIE -> NIE POWTARZAC SIE 
# 3. def nazwaFunkcji():
# 3a.   Wszystko co w funkcji piszemy po TAB

# Zadanie przypiminajace 
# NAPISZ FUNKCJE ZMIENAJACE TRYB GRY NA SURVIVAL I KREATYWNY

# 1. SURVIVAL
def survival():
    # zmienia tryb gry na survival
    gameplay.set_game_mode(SURVIVAL, mobs.target(NEAREST_PLAYER))
    # daje graczowi siekierke do eq -> komu,co,ile
    mobs.give(mobs.target(NEAREST_PLAYER), DIAMOND_AXE, 1)
    # zmieniam czas gry na noc
    gameplay.time_set(DayTime.NIGHT)

# 2. KREATYWNY
def kreatywny():
    # zmienia tryb gry na kreatywny
    gameplay.set_game_mode(CREATIVE, mobs.target(NEAREST_PLAYER))
    # zmieniam czas gry na noc
    gameplay.time_set(DayTime.DAY)
# Przypinam funkcje do polecenia czatu 
player.on_chat("cr", kreatywny)

# PETLE 
# PETLE SLUZA DO POWTORZENIA KONKRETNEGO ZADANIA 
# PETLA FOR --> POWTORZY SIE OKRESLONA LICZBE RAZY 
# JAK STOWRZYC PETLE FOR W PYTHON 
# for i -> to jest licznik petli in range(100) -> ile razy sie wykona 
# PRZYKLAD 
def zombieSpawn():
    # wlaczam survival 
    survival()
    # spawn zombie przy uzyciu petli for 
    for i in range(100):
        #pisze licznik na czacie 
        player.say(i)
        #spawnuje zombie 
        mobs.spawn(ZOMBIE, randpos(pos(-20, 0, -20), pos(20, 0, 20)))
        # chwilka przerwy 
        loops.pause(100)
    # zmiana czasu 
    for i in range(10000):
        gameplay.time_add(100)
        # chwilka przerwy
        loops.pause(100)

player.on_chat("zombie",zombieSpawn)


# ZADANKO 2
# PAJECZE SIEDLISKO 
# aktualna pozycja gracza -> bo budujemy konkretną budowle 
pozycja = player.position()
x = pozycja.get_value(Axis.X) # wczytuje współrzędną X
y = pozycja.get_value(Axis.Y) # wczytuje współrzędną Y
z = pozycja.get_value(Axis.Z) # wczytuje współrzędną Z

# 1. Funkcja budujaca jaskinie z skarbem na koncu 
def jaskinia():
    # stawiam jaskinie z pustym srodkiem
    blocks.fill(BEDROCK, world(x - 5, y - 1, z - 1), world(x + 5, y + 10, z + 50),
    FillOperation.HOLLOW)
    # stawiam skarb 
    blocks.place(GLOWSTONE, world(x,y,z + 49))

# 2.  Daje graczowi minimalny eq 
def eq():
    gameplay.set_game_mode(SURVIVAL, mobs.target(NEAREST_PLAYER))
    mobs.give(mobs.target(NEAREST_PLAYER), DIAMOND_SWORD, 1)
    mobs.give(mobs.target(NEAREST_PLAYER), DIAMOND_AXE, 1)
    mobs.give(mobs.target(NEAREST_PLAYER), TORCH, 64)
    mobs.give(mobs.target(NEAREST_PLAYER), BOW, 1)
    mobs.give(mobs.target(NEAREST_PLAYER), ARROW, 64)

# 3. Spawn pajakow 
def spawnPajakow():
    
    # petla spanwujaca pajaki i sieci
    for i in range(50):
        mobs.spawn(SPIDER, randpos(world(x - 4, y, z + 5), world(x + 4, y + 5, z + 49)))
        blocks.place(COBWEB, randpos(world(x - 4, y, z + 5), world(x + 4, y + 5, z + 49)))
    
# 4. Funckji na wygrana 
def wygrana():
    gameplay.set_game_mode(CREATIVE, mobs.target(NEAREST_PLAYER))
    player.teleport(pos(0, 0, 50))

# 5. Podpiac wygrana po zniszczeniu glowstone na koncu jaskini
blocks.on_block_broken(GLOWSTONE, wygrana) # na blok zniszczony(JAKI, coSieDzieje->funkcja)

# Funkcja uruchamiajaca cala gre
def miniGra():
    jaskinia() # buduje jaskinie
    eq() # daje eq 
    spawnPajakow() # spawnPajkow

# podpinam gre do polecenia czatu 
player.on_chat("gra",miniGra)