Skocz do zawartości

Cała aktywność

Ten kanał aktualizuje się automatycznie

  1. Dzisiaj
  2. # author : Radek Z. and troszke Kuba S. (akustyczny kolega) import pygame import random pygame.init() class GenDungeon() : def __init__(self , max_plate) : self.max_plate = max_plate self.map = [] self.room_type = { 0 : "empty_room" , 1 : "start_room" , 2 : "end_room" , 3 : "enemy_room" , 4 : "boss_room" , 5 : "chest_room" } def gen_map(self ) : self.gen_clear_map() self.map[self.max_plate // 2][self.max_plate // 2] = 1 enemy_room = random.randint(4, 6) chest_room = random.randint(2, 5) boss_room = random.random() if boss_room < 0.2: boss_room = 1 else: boss_room = 0 for _ in range(enemy_room): self.gen_room(3) print("enemy room") for _ in range(chest_room): self.gen_room(5) print("chest room") for _ in range(boss_room): self.gen_room(4) print("boss room") self.gen_room(2) def gen_clear_map(self) : self.map = [] for x in range(self.max_plate) : column = [] for y in range(self.max_plate) : column.append(0) self.map.append(column) def gen_room(self, room_type): while True: x = random.randint(0 , self.max_plate-1) y = random.randint(0 , self.max_plate-1) somsiad = 0 start_room = False cord = ( (x + 1 , y), (x - 1 , y), (x , y + 1), (x , y - 1) ) for h in cord: try: cx , cy = h if self.map[cx][cy] in (1 ,2 , 3 , 4 , 5): somsiad += 1 if self.map[cx][cy] == 1: start_room = True except: pass if (room_type == 2) or (room_type == 4) or (room_type == 5): if (somsiad > 0 and somsiad < 4 and not start_room) and self.map[x][y] == 0: self.map[x][y] = room_type break else: if (somsiad > 0 and somsiad < 4) and self.map[x][y] == 0: self.map[x][y] = room_type break self.gen_door() self.update_door() def gen_door(self): self.door = [] for x in range(self.max_plate): column = [] for y in range(self.max_plate): column.append([False , False , False , False]) self.door.append(column) for x in range(self.max_plate): for y in range(self.max_plate): if self.map[x][y] == 1: self.door[x][y] cord = ( (x + 1 , y), (x , y + 1), (x , y - 1), (x - 1 , y) ) for c in cord: sx , sy = c if self.map[sx][sy] != 0: if sy == y-1: self.door[x][y][0] = True elif sy == y+1: self.door[x][y][1] = True elif sx == x+1: self.door[x][y][2] = True elif sx == x-1: self.door[x][y][3] = True self.update_door() for _ in range(6): for x in range(self.max_plate): for y in range(self.max_plate): if (self.door[x][y] == [False , False , False , False]) and (self.map[x][y] > 0): try: if True in self.door[x][y-1]: self.door[x][y][0] = True except: pass try: if True in self.door[x][y+1]: self.door[x][y][1] = True except: pass try: if True in self.door[x-1][y]: self.door[x][y][3] = True except: pass try: if True in self.door[x+1][y]: self.door[x][y][2] = True except: pass self.update_door() def update_door(self): for x in range(self.max_plate): for y in range(self.max_plate): try: if self.door[x][y-1][1] == True: self.door[x][y][0] = True except: pass try: if self.door[x][y+1][0] == True: self.door[x][y][1] = True except: pass try: if self.door[x+1][y][3] == True: self.door[x][y][2] = True except: pass try: if self.door[x-1][y][2] == True: self.door[x][y][3] = True except: pass """ - zamienić potem try except na lepsze sprawdzanie wyjścia poza mapę """ class Display(): def print_room(self , room , cord): x , y = cord cords = ( x * 50 , y * 50 , 50 , 50 ) match room: case 0 : color = "grey" case 1 : color = (255 , 175 , 10) case 2 : color = (0 ,200 , 0) case 3 : color = (255 , 0 , 0) case 4 : color = (255 , 255 , 0) case 5 : color = (0 , 0 , 255) case None : color = "black" pygame.draw.rect(screen , color , cords) def print_door(self , cord): x , y , pos = cord if pos[0]: cords = ( x * 50 + 20 , y * 50 , 10 , 10 ) pygame.draw.rect(screen , "green" , cords) if pos[1]: cords = ( x * 50 + 20 , y * 50 + 40 , 10 , 10 ) pygame.draw.rect(screen , "green" , cords) if pos[2]: cords = ( x * 50 + 40 , y * 50 + 20, 10 , 10 ) pygame.draw.rect(screen , "green" , cords) if pos[3]: cords = ( x * 50 , y * 50 + 20 , 10 , 10 ) pygame.draw.rect(screen , "green" , cords) def print_map(self , g) : plate = g.map for x in range(g.max_plate ) : for y in range(g.max_plate) : self.print_room(plate[x][y] , (x , y) ) for x in range(g.max_plate): for y in range(g.max_plate): self.print_door((x , y , g.door[x][y])) def main() : global screen sze = 50 * 11 screen = pygame.display.set_mode((sze , sze)) pygame.display.set_caption("dungeony") g = GenDungeon(11) d = Display() g.gen_map() while True : for event in pygame.event.get() : if event.type == pygame.QUIT : quit() screen.fill("black") d.print_map(g) pygame.display.update() if __name__ == "__main__" : main() #jakby co to python wersja 3.13.9
  3. Wczoraj
  4. Cześć wszystkim, ostatnio coraz częściej słyszę o firmach z Polski, które rozważają lub już przenoszą swoje serwery do USA (często w ramach chmury lub własnej infrastruktury). Zastanawiam się, jak to wygląda z Waszej perspektywy i czy rzeczywiście widać trend „przemieszczania” infrastruktury poza Europę. Główne pytanie, które mi się nasuwa: Czy w Polsce rośnie zainteresowanie lokalizacją serwerów w Ameryce, czy to raczej pojedyncze przypadki? Chętnie poznam Wasze opinie — zarówno z perspektywy osób pracujących w IT, jak i z punktu widzenia firm, które podejmowały takie decyzje. Dzięki za odpowiedzi!
  5. Najlepsza strategia: jeden dobry długi film główny + pokrojenie go na krótsze klipy pod różne kanały. Wtedy maksymalizujesz zwrot z inwestycji.
  6. Ostatni tydzień
  7. Mam wątpliwości - film reklamowy vs seria krótkich video. Co lepiej działa w internecie? Słyszałem że ludzie mają krótką uwagę i długie materiały nie działają.
  8. No my mamy w firmie (25 osób) wszystkie stanowiska z regulacją od 2 lat. Pracownicy rzeczywiście korzystają - około 70% zespołu regularnie zmienia pozycję, pozostali używają okazjonalnie. Ogólnie trudno ejst ocenić jak podniosła się produktywność ale ludzie te biurka lubią
  9. Dzień dobry, wyposażamy nowe biuro dla 10-osobowego zespołu IT. Rozważamy biurka elektryczne z regulacją dla wszystkich. Czy to faktycznie dobra inwestycja? Jak to wpływa na zespół? Pracownicy faktycznie z tego korzystają czy to tylko gadżet który szybko się znudzi?
  10. Wcześniej
  11. Cześć, zastanawialiście się dlaczego tak szybko usuwane są bankomaty / wpłatomaty z naszych osiedli?? Tu jest odpowiedź: https://www.youtube.com/watch?v=YGjX0WQJQwA Polecam!
  12. AutoIt ma więcej wbudowanych funkcji w tym celu i można od razu natywne exe tworzyć.
  13. Stary wątek i dawno już to zrobiłeś Ale forum jest dla wszystkich, więc polecam: FastAPI, LiteStar. StarLite, Quartz czy nawet Flask.
  14. Shopiify, Shoper oraz własne rozwiązania na WP Commerce.
  15. Tu jest aktualny obraz jeśli chodzi o zarobki w branży: https://czyjesteldorado.pl/raport-rynku-pracy-it
  16. Hej, wielu się zastanawia jak napisać program w stylu np auto clickera. Przychodzę z pomocą! Oto najprostszy auto clicker: import pyautogui import time time.sleep(2) for i in range(5): pyautogui.leftClick() Ten program sprawi że lewy przycisk myszy zostanie 5 razy kliknięty. Aby pomiędzy kliknięciami był odstęp czasowy trzeba dodać: for i in range(5): pyautogui.leftClick() time.sleep(1) # 1 sekunda przerwy między kliknięciami Krótki wyjaśnienie: time.sleep() - funkcja do pauzowania programu na określony czas, w nawiasie pisze się np 3 i wtedy program pauzuje się na 3 sekundy pyautogui.leftClick - dość intuicyjne program klika myszką Pomoc z ewentualnymi problemami: 1. Program nie zadziała w przeglądarce, osobiście polecam go odpalić w VS Code 2. Jeżeli moduł pyautogui nie jest zainstalowany to można go zainstalować wpisując w terminalu: # Wpiszujesz w Terminalu py -m pip install pyautogui 3. Jeżeli są jakieś inne problemy daj znać ;)
  17. Wiele się zmieniło, dziś już podobno ani leasing ani najem się nie opłaca. Od stycznia 2026 limit kosztu samochodu w leasingu to 100 tys. zł Tyle to kosztuje dobry motocykl czy elektryczny rower z b. wysokiej półki Śmiech po prostu, szczególnie, że auta bardzo zdrożały w ostatnich 5 latach.
  18. Cześć, Co nowego wnosi Spring Boot 4 - z wartych do odnotowania zmian? Dzięki!
  19. Cześć, Czy Java + Spring nadają się do mniejszych aplikacji? Czy raczej głównie do wielkich / enterprise? Słyszałem, że Java wymaga dużo droższego serwera (jest zasobożerna) niż Python+Django, RoR czy Node.js. Prawda to? Dzięki!
  20. Cześć, polecam dwa linki na temat dual-GPU (budżetowo, do domu, do lokalnego używania LLM): Jest sporo benchmarków / testów (w tym porównanie z 3090) - więc myślę, że warto się zapoznać: [ Dual RTX 5060 Ti: The Ultimate Budget Solution for 32GB VRAM LLM Inference at $858 | Hardware Corner ] --> www.hardware-corner.net/dual-rtx-5060-ti-price-for-llm-build-20250415/ [ I Tested Dual RTX 5060 Ti 16GB vs RTX 3090 for Local LLMs – Here’s What Surprised Me ] --> www.hardware-corner.net/guides/dual-rtx-5060-ti-16gb-vs-rtx-3090-llm/
  21. Cześć, Gdzie hostujecie swoje aplikacje Django? A gdzie zdjęcia i inne pliki statyczne? Z jakich serwerów aplikacji korzystacie? Dzięki!
  22. Jak chcecie poćwiczyć Pythona czy dowolny inny język, to zachęcam do udziału: w każdy listopad - na Everybody.Codes -> https://everybody.codes/event/ w każdy grudzień - na Advent Of Code -> https://adventofcode.com/ To są, chyba najlepsze, wyzwania algorytmiczne, gdzie można się sprawdzić w rozwiązywaniu puzzli programistycznych. Warto!
  1. Załaduj więcej aktywności
×
×
  • Utwórz nowe...