Skocz do zawartości

I am vader

Użytkownicy
  • Postów

    1 887
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    20

Treść opublikowana przez I am vader

  1. Widzisz, ekran, czyli view to taki rodzaj wbudowanego surface. Obiekt jest rysowany na pozycji na ekranej znanej jako [x-view_xview,y-view_yview]. Jeżeli chcesz taki zabieg symulować to musisz w draw rysować wszystko z poprawką na włąśnie xview i yview.
  2. Zdefiniuj syrface wędrujący dynamicznie tylko za view, bo nie do konca rozumiem jak to ma dzialac.
  3. Jak zwykle pokonany przez Gnyska. Ale to dobrze, naucze sie czegos nowego ;).
  4. A nie powinno być GML i = floor(i*10)/10 skoro chce jedną liczbę po przecinku?
  5. Widzę że są inkrementacje +16, więc możesz skrócić kod do dwóch pętli for na zasadzie GML var result=false; for(var i=1;i<4;i++){ if place_meeting(x+1,y-(i*16),obj_clif_right){ if image_xscale=1 clif_id=instance_place(x+1,y-(i*16),obj_clif_right); else clif_id=0; clif_size=i; result=true; break; } } if !result for(var i=1;i<4;i++){ if place_meeting(x-1,y-(i*16),obj_clif_right){ if image_xscale=-1 clif_id=instance_place(x-1,y-(i*16),obj_clif_right); else clif_id=0; clif_size=i; result=true; break; } } if !result{ clif_id=0; clif_size=0; } Używamy zmiennej result do emulowania "else" w pętli for, żeby druga nam się nie wykonała jeżeli znalazło wynik. Emuluje też ostatnie else jeżeli nigdzie nie znalazło żadnego wyniku. Edit: Dzięki zastosowaniu pętli możesz łatwo dodawać ostrzejsze klify bez dopisywania kodu. Edit2: Możesz poeksperymentować czy robienie od razu instance_place zamiast place_meeting nie przyspieszy troche kodu.
  6. Całkiem ładny cover, uwielbiam muzyka z Wieśmaca 1szego. Link do YT dziala ale embeed juz nie, dobrze wkleiles kod? Należy samą końcówkę wkleić.
  7. Jest to związane z wymaganiami które postawiłeś, czyli zoom na podstawie wielkości rooma. Trzeba sposob zooma zmienić aby działało. Najlepiej zapisz do zmiennych wymiary wview i hview początkowego(zoom 100%) i mnóż przez tę wartość zamiast wielkość roomu.
  8. I am vader

    Galeria Grafik

    Też jakieś wyjście, hue.
  9. I am vader

    Galeria Grafik

    Może spróbuj gdzieś tak na ~1100-1200 poprawiając samo sklepienie czaszki?
  10. I am vader

    Galeria Grafik

    Wcale nie jest źle i mówię to na podstawie gifa którego wcześniej pokazywałeś. Troche dziwne proporcje szczegolowosci łba(Okrągłość czaszki) do twarzy, moze troche wiecej poly głowy aby pasowało do szczegółowości twarzy?
  11. W okresleniu problemu pomogloby napewno sprawdzic która część kodu się wykonuje. Powpisuj show_debug_message(Jakaś wiadomość, unikalna dla każdej lini, może być numer wykonywanej lini) w różne miejsca w kodzie by sprawdzić jak kod się wykonuje. Jest dużo ifów i elsów i na sucho nie da rady określić ktore czesci kodu sie wykonuja czyli ktora czesc kodu zawadza. Zobacz ktore linie sie aktywuja przy pierwszym kliknieciu a ktore przy drugim.
  12. Nigdy nie mialem takiego problemu. Jeżeli czcionka ma te znaki, powinny być dostępne i się wyświetlać. Sprawdź w okienku "Hello World" czy napewno te znaki są, spróbuj je wpisać.
  13. Za kazdym razem gdy zmienisz zoom musisz wysrodkowac o roznice miedzy obecnym zoomem a poprzednim. GML (create) //Stworz zmienne: Zoom = 1; LastZoom = 1; GML (step) //Krok 1, zmien wartosc zoom if mouse_wheel_up() Zoom-=0.1; if mouse_wheel_down() Zoom+=0.1; //Krok 2, sprawdz czy doszlo do zmiany: if Zoom!=LastZoom{ //Krok 2.1, Zapisz sobie jak duzy byl stary zoom: var StaryW = view_wview[0]; var StaryH = view_hview[0]; //Krok 2.2, Zmien przyblizenie view_wview[0] = room_width * (Zoom); view_hview[0] = room_height * (Zoom); //Krok 2.3, Oblicz roznice wielkosci zooma w pikselach var RoznicaX = view_wview[0] - StaryW; var RoznicaY = view_hview[0] - StaryH; //Krok 2.4, Przesun view o polowe roznicy. view_xview[0] -= RoznicaX/2; view_yview[0] -= RoznicaY/2; } //Krok 3: Zaktualizuj LastZoom LastZoom = Zoom; Działa to tak: Wyliczamy różnicę między nowym a starym zoomem i bierzemy połowę tej wartości aby o tę połowę przesunąć obraz. Wtedy jest wycentrowany.
  14. Tak sie robi gdy zaden background nie jest ustawiony. Upewnij sie ze w ustawieniach rooma nie wyłączyłeś wyświetlania backgroundów kompletnie.
  15. WYeksportuj projekt i zobacz czy w exe tez tak jest. Potem podeslij ten plik exe do mnie, moze byc na priv, zobacze czy mam to samo.
  16. Czy wybrana przez Ciebie czcionka napewno ma polskie znaki? Czy napewno dopisałeś zarówno duże jak i małe ćĆęĘ do range?
  17. W edycji fontu klikasz + a następnie wpisujesz w puste pole znaki specjalnie któe chcesz dodać do fonta. Na koniec klikasz OK.
  18. Zapamiętaj słowa papy smerfa: Np. w takim wiedźminie 3 masz ataki lekkie i ciężkie, ataki pojedyńcze i kombosy, znaki i petardy oraz oleje, a wystarczy na przemian walić LPM ze SPACJĄ i ma się każdą walkę wygraną, więc tak gracze robią, bo tak jest najprościej. I tylko tyle ten system walki jest wart.
  19. Może zrób oddzielny temat do tego, bo to większy temat niż mała pierdoła i zanim dostaniesz odpowiedź pytanie może utonąć w morzu mniejszych pytań. Może opowiesz coś więcej o tym kodzie? Która zmienna odpowiada za trzymaną w ręce broń? Kod wykonałeś Ty czy ktoś inny, jak ktoś inny gdzie możemy znaleźć źródło? Edit: I jeszcze jedno pytanie. Czy E obsługje kilka rzeczy czy tylko podnoszenie broni? Edit2: Okej czyli to jest bazowane 100% na instancjach, tylko nie widze czy bron w reku to zmienne czy tez instancja. Jeżeli ty pisaleś ten kod to na miłość boską używaj komentarzy do opisywania kodu!
  20. Nie cierpie jak w grach się strzela całym nabojem. Przecież z lufy wychodzi tylko sam pocisk, łuska jest wyrzucana z komory.
  21. Prędkość chodzenia wydaje się krępująca. Poza tym niezły progress.
  22. Dziwna sprawa, sp = sprite_index powinno działać, bo sprite_index to wartość REAL odnosząca się do indexu sprite'a. Na pewno nie aktualizujesz sp = sprite_index co step, powodujac ze sie nadpisuje?
  23. I am vader

    Nazwa dla firmy

    Jak zależy Ci na unikalności, to fable factory jest już zajęte. https://www.facebook.com/The-Fable-Factory-160875414066315/ http://fablefactoryfilms.com/
  24. Otwierasz plik w trybie tylko do odczytu, więc jeżeli nie istnieje nie zostaje on stworzony. Sprawdź czy wartość zwrócona przez te funkcje nie wynosi -1. Jeżeli tak to plik po prostu nie istnieje.
  25. Dostajesz dziwny folder dla GMa ponieważ testujesz przez RUN GAME. Gdybyś skompilował grę ścieżka byłaby normalna i prowadziłą do appdata/ROAMING lub appdata/LOCAL @@EdiePL - On używa execute shell z rozszerzenia, dlatego ma. Co do GMFileSystem, jest ono ździebko nieaktualne więc trzeba ręcznie je naprawić aby działało. @UP Musisz użyć funkcji z GMFileSystem nie wbudowanych Aby użyć GMFIleSystem dopisz FS_ przed nazwą funkcji, czyli zamiast GML file_text_open_read("C:\Users\User\Desktop\telesalesmanago\100003.txt") zró GML FS_file_text_open_read("C:\Users\User\Desktop\telesalesmanago\100003.txt")
×
×
  • Dodaj nową pozycję...