Skocz do zawartości

Platyna

Użytkownicy
  • Postów

    2 122
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez Platyna

  1. A jak długo trwa kolizja? Bo zycie będzie odejmowane podczas każdego stepa trwania kolizji. Wiec jeśli kolizja trwa 3 stepy to mu wszystkie życia zabierze.
  2. Create: GML zycia=3; Kolizja z chopkiem: GML x=xstart; y=ystart; zycia-=1; Draw GML draw_sprite(sprite_index,image_index,x,y); draw_text(x,y-20,zycia); Musi działać.
  3. xstart i ystart przechowują początkową pozycję obiektu. Więc by go ustawić na początku dajesz: GML x=xstart; y=ystart; Żeby miał 3 życia to mu tworzysz w Create zmienną: GML zycia=3; Teraz przy kolizji z chopkiem odejmujesz mu życie: GML zycie=zycie-1; //Przypisujemy zmiennej zycie wartość o 1 mniejszą od aktualnej</span>
  4. GML if(!place_free(x+hspeed,y+vspeed)) speed=0; Daj to w step bohatera i ustaw kamieniowi solid. Jak masz rzut? Bo to co dałem jest dla top-down przy użyciu wbudowanych zmiennych do poruszania.
  5. Nie. Dopiero teraz go zepsułem. Papa :)
  6. Zagadki i pułapki biorę na siebie. To mój chleb powszedni :D
  7. To nie miała być śmieszna sytuacja. Odpowiadałem Pieterowi. ;)
  8. Po pierwsze jest to oczywiście gra logiczna, a nie strategia. Za to masz u mnie pierwszy wielki plus. Bo nie łatwo zrobić dobrze przemyślaną grę logiczną. Drugi wielki plus za pomysł. Naprawdę oryginalny i ciekawy. Kolejna pochwała należy się za dobrze przemyślane poziomy. Na razie jestem na 11, ale zaraz wracam do dalszej gry. Czasem naprawdę trzeba się chwilkę zastanowić. Niestety wykonanie woła o pomstę do nieba! Grafiki nieciekawe, albo zapożyczone. Tak czy siak masz u mnie mocne 4! EDIT: Ciąg dalszy po przejściu całej gry: Poziom 13, nie był wcale trudny. Nie podobał mi się poziom 14. Trochę ci jakby pomysłów zaczęło brakować. Tam za bardzo się fart liczył. Poziom i-ty dla i>=15 Tutaj miałeś bardzo dobry pomysł z wprowadzeniem zmiany postaci, ale niestety spaprałeś go, bo tylko kilka ostatnich, niestety bardzo łatwych poziomów go wykorzystuje. Moja recepta: Poszukaj sobie grafika, może ktoś zechce ci pomóc. Jak już znajdziesz zrób tę grę na nowo z większą ilością poziomów i różnych przedmiotów. Wyjdzie z tego bardzo dobra gra. Mój czas: 2157 sec. Ale robiłem sobie trochę przerw podczas których nie pauzowałem gry. Nadal masz u mnie mocne 4. Pozdrawiam, życzę powodzenia. EDIT 2: Postanowiłem przejść jeszcze raz, tym razem na czas. Mój czas: 557 sec :D
  9. Ojoj. Na wyjeździe klasowym w zeszłym roku jeden kolega z pokoju nas ładnie zdenerwował i chcieliśmy mu jakiś numer wykręcić to tyż taki pomysł padł. Jeden kolega skory do hecy od razu popędził do kibla napełnić butelkę. Przez chwilę było wesoło jak sobie powyobrażaliśmy możliwe scenariusze, ale po chwili stwierdziłem, że to jednak trochę chamskie jest więc im kazałem to wylać. :P Trzeba mieć jakieś hamulce.
  10. Platyna

    Galeria Grafik

    To ona jeszcze żyje? :o Akurat grafika ma taki swój pewien klimat i nie sądzę by trzeba ją było poprawiać. Popracuj lepiej nad grywalonością, bo pod tym względem poprzednia część była moim zdaniem koszmarna. Chyba, że to ja nie potrafiłem tego "poczuć" :P
  11. Sprawdzaj sumę różnic każdego składnika. GML roznicaR=abs(kolor1R-kolor2R); roznicaG=abs(kolor1G-kolor2G); roznicaB=abs(kolor1B-kolor2B); roznica=roznicaR+roznicaG+roznicaB; return (roznica<=limit); Chyba istnieje jakaś funkcja do wyciągania wartości poszczególnych składowych RGB.
  12. Zapisujesz do jakiegoś pliku dane profilu i sprawdzasz czy ten plik istnieje. W dokumentacji na stronie głównej masz wszystko czego potrzebujesz o plikach ini
  13. Platyna

    GMclan-owe cytaty

    Zależnie od towarzystwa w którym się znajduję też czasem miewam takie poczucie humoru. Ale jak już wpadnę w głupawkę to wygląda tak komicznie jakbym normalnie jakiś atak śmiechu miał :P Ale nie patrzą na mnie jak na idiotę tylko się śmieją za mnie/ze mną. I powtarzają to co mnie rozśmieszyło, żebym nzowu ataku dostał, bo to wygląda komicznie :) Ogólnie moje poczucie humoru jest dosyć abstrakcyjne. Tfu! Bardzo abstrakcyjne ;]
  14. Platyna

    GMclan-owe cytaty

    To albo ja jestem zgredem bez poczucia humoru, albo wam obu się nie udało : D
  15. Platyna

    GMclan-owe cytaty

    To by wrócić do tematu: https://forum.gmclan.org/index.php?showtopi...st&p=287021 Moja interpretacja, czyli co poeta miał na myśli: Morro próbował zażartować, ale na tyle mu to nie wyszło, że Traker nie zaczaił, że to miał być joke. :P
  16. Platyna

    GMclan-owe cytaty

    Błąd jest prosty. Najprostsze rozwiązanie to nie znaczy najlepsze. Lepiej się trochę namęczyć, by wymyślić i zakodzić rozwiązanie z jakąś fajną złożonością czasową niż pisać bruta działającego w czasie wykładniczym i się potem dziwić, że się ma 10 fpsów.
  17. A jak dużo jest tych pocisków? Paręset? Parę tysięcy? Bo jeśli bardzo dużo to zamiast każdego reprezentować jako oddzielną instancję możesz je wszystkie stablicować w jednym obiekcie i tam rysować. Oczywiście to ci utrudni trochę pracę, bo zamiast prostego eventu do kolizji będziesz musiał używać np. collision_line(), albo collision_point
  18. Tfu! Mój błąd! GML draw_line(x,y,x+lengthdir_x(10,direction),y+lengthdir_y(10,direction)); Trza było jeszcze x i y dodać do wyniku funkcji. W ten sposób sobie poradziłeś? ;)
  19. Napisałeś "nearSET" zamiast "nearEST" :D W Create i przy obracaniu sprite'ów.
  20. Dobrze kombinujesz : P W pocisku: GML draw_line(x,y,lengthdir_x(10,direction),lengthdir_y(10,direction)); Mogłem pomylić kolejność argumentów :)
  21. Zrób to w obiekcie obj_hero_soldier. Wtedy każdy będzie sam sobie rysował. I wywal oczywiście te wszystkie "obj_hero_soldier." Bo jak się odwołujesz przy pomocy nazwy obiektu w kodzie to on bierze ten który pierwszy powstał.
  22. W drugim popraw też tutaj: GML if(id!=other.id && dis<other.dist) other.id :P Plik nic mi nie da, bo nie używam GM8, a konwertera nie ma :P
  23. 1. Gdy obj1 tworzy obj2 to niech zapisuje id tego swojego obj2 w jakiejś zmiennej. W ten sposób: GML moj_obj2=instance_create(x,y,obj2); Teraz w kolizji obj1 z obj2 dajesz po prostu warunek: GML if(other!=moj_obj2) Żeby kod się nie wykonał przy kolizji z tym własnym. Tylko nie zapomnij najpierw w Create stworzyć zmienną moj_obj2 2. Możesz w pętli przejrzeć wszystkie obiekty obj1 i znaleźć ten najbliżej, ale pominąć samego siebie: GML nearset=0; //do tej zmiennej zapiszemy id najbliższego obj1 dist=100000; //odległość od najbliższego obj1 with(obj1) //przeglądamy wszystkie obj1 { dis=point_distance(other.x,other.y,x,y); //obliczamy odległość if(id!=other && dis<other.dist) //jeśli to nie jest on sam i jest bliżej niż aktualny najbliższy { other.dist=dis; //aktualizujemy odległość other.nearest=id; //zapisujemy id najbliższego } } Po tym kodzie w zmiennej nearest jest id najbliższego obj1 Z tego co pamiętam to w with można używać other. A jeśli nie to stwórz sobie zmienne globalne.
×
×
  • Dodaj nową pozycję...