
RaistlinBlackRobe
Użytkownicy-
Postów
579 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Treść opublikowana przez RaistlinBlackRobe
-
AKCJA: sprite_index=spr_atak; image_speed=<szybkośćanimacji>; ANIMATION END: sprite_index=spr_hero; image_speed=<poprzedniaszybkość>; EDIT: @up: To się nazywa szybko klepać w klawiaturę. ;(
-
Zacinanie się na krawężnikach i znikanie znaków zakaz skrętu po przejechaniu obok nich nie są zapewne plusem. Grafika jest znośna chociaż zbyt kontrastuje ze sobą nawzajem. Przydałby się jakiś podkład muzyczny i przeciwnicy oraz jakieś urozmaicenia(np. farbowanie autka za kasę z wyścigów). Skręt jest nieco za mało czuły. Za to spodobał mi się ładnie zrobiony dym w particles. 2/5 na zachęte zrobienia up'a.
-
Ja jeszce troche ulepszyłem przykład. Link. Nie licząc tego image_angle to wszystko pod niezarejestrowaną.
-
Robal Wężopodobny Pszczoła/Osa(jeden kit) Dusza osy(do nieba będę szła) Jak będziesz czegoś potrzebować to poszukaj tu, bo grafiki są zaczepiste i darmowe.
-
Template i tutek na dodatek: link Niestety 4 kierunki tylko są.
-
No też coś zrobiłem. Zarazem to coś co się kręci wokół wroga jak i strzał. Niestety image_angle jest na pro, ale możesz wykombinować coś bez pro(np kolisty pocisk i nieobracające się dusze). A oto link.
-
objekt pod innym objektem
RaistlinBlackRobe odpowiedział(a) na Gilead temat w Pytania początkujących
Im niższy depth tym na wyższej warstwie jesteś. -
Więc tak: Mam poruszanie się za pomocą zmieniania x i y. Napisałem coś co powinno podczas poruszania się zacząć lot. Wygląda to tak: STEP: if keyboard_check(ord('z')) {if (skos=0 && skok=0) then switch(keyboard_key) {case vk_left: skok=1; depth=-1000; sprite_index=spr_dragon_fly_l; repeat(20){x-=16}; alarm[0]=20; break; case vk_up: skok=1; depth=-1000; sprite_index=spr_dragon_fly_u; repeat(20){y-=16}; alarm[0]=20; break; case vk_right: skok=1; depth=-1000; sprite_index=spr_dragon_fly_r; repeat(20){x+=16}; alarm[0]=20; break; case vk_left: skok=1; depth=-1000; sprite_index=spr_dragon_fly_d; repeat(20){y+=16}; alarm[0]=20; break;};}; ALARM[0]: skok=0; depth=0; switch(sprite_index) {case spr_dragon_fly_l: sprite_index=spr_dragon_walk_l; break; case spr_dragon_fly_u: sprite_index=spr_dragon_walk_u; break; case spr_dragon_fly_r: sprite_index=spr_dragon_walk_r; break; case spr_dragon_fly_d: sprite_index=spr_dragon_walk_d; break;}; Poruszanie się jest na eventach left right up i down. Problem: nic się nie dzieje, a wcześniej gdy lot był w evencie "z" to trzeba było trzymać z i nacisnąć sztrzałkę, a wtedy dragon pokonywał drogę za całą pętlę repeat(w jednym momencie za wszytskie stepy), zamachał skrzydłami i siadł dziad jeden. Help. EDIT: Uff, udało mi się samemu poradzić. Może kiedyś zrobię z tego przykład(po części by to rozwiązywało problemy z klonami pierwszych części gta). Zamykam.
-
brązowy srebrny Możnaby jeszcze coś zripować :D , ale może lepiej nie(zresztą ponoć brzydzisz się wymówić nazwy tej gry, a konflikt z prawem nie owocuje niczym dobrym)
-
A nie łatwiej wszystkie zbroje do jednego sprita(index zerowy ustaw jako ciało bez zbroi). Robisz zmienną eqarmor, która mówi jaka zbroja jest ubrana. I zmieniasz w draw_sprite_ext drugi argument(czyli subimage) z 0 na eqarmor czyli: draw_sprite_ext(spr_armor, eqarmor, x, y, itd.) Nie muszę chyba mówić, że przy zakładaniu zbroi zmieniasz tą zmienną.
-
Problem z kamerą 3d
RaistlinBlackRobe odpowiedział(a) na RaistlinBlackRobe temat w Pytania początkujących
Ponieważ Konrad nie jest teraz online to dam link do projektu. Nie zrażajcie się grafiką, ani tym, że bazuję się na przykładzie(będę usamodzielniał silnik). -
Akcja ustalania pozycji tego w co to masz kliknąć powinna byc w tym samym evencie co rysowanie i musi być przed rysowaniem. Też tak miałem.
-
Engine Labiryntu
RaistlinBlackRobe odpowiedział(a) na fervi (Skovv) temat w Gotowe Skrypty, przykłady, dodatki, silniki 3D dla GM
grief.co.kr Robiłeś to więcej niż 5 minut? -
Kod kamery w drawie(ustawienie widoku): d3d_set_projection(x,y,z,x+cos(degtorad(direction-90)),y+sin(degtorad(direction-90)),z-zdir,0,0,1) Rysowanie postaci(po którym rozpoczęły się problemy): d3d_transform_set_translation(-x,-y,-z); d3d_transform_set_rotation_z(dir); d3d_draw_ellipsoid(-4,-4,30,4,4,height,htex,1,1,24); d3d_draw_ellipsoid(-4,-8,16,4,8,32,ctex,1,1,6); d3d_draw_cylinder(-4,-10,0,4,-2,16,ltex,1,1,1,12); d3d_draw_cylinder(-4,10,0,4,2,16,ltex,1,1,1,12); d3d_draw_cylinder(-2,-12,16,2,-8,32,atex,1,1,1,12); d3d_draw_cylinder(-2,12,16,2,8,32,atex,1,1,1,12); d3d_transform_set_translation(-x,-y,-z); Niestety sam kodu widoku nie mogę sklecić, a inne rysowanie nie działa. :( Problem jest następujący: podczas ruchu widok przeduwa się intensywniej, niż objekt i to cos narysowane jako jego grafika. Tzn. kiedy idę, w górę to po kilku sekundach postać jest daleko poniżej widoku, a gdy w dół to jest o wiele za wysoko(nie postać jest źle tylko widok, jakby co). Pomocy. Z góry dzięki. EDIT: Jeszcze to w stepie kamery może być istotne: x=obj_team.x y=obj_team.y+dist
-
Niestety. W takim wypadku obraca mi się nie wiadomo gdzie. Tzn. znika. Raz udało mi się go zauważyć gdzieś zupełnie poza swoim x i y obróconego, z tymże czy da się obracać tak normalnie(w miejscu)? DRAW: d3d_transform_set_identity(); d3d_transform_set_rotation_z(dir); d3d_draw_ellipsoid(x-4,y-4,z+30,x+4,y+4,z+height,htex,1,1,24); d3d_draw_ellipsoid(x-4,y-8,z+16,x+4,y+8,z+32,ctex,1,1,6); d3d_draw_cylinder(x-4,y-10,z,x+4,y-2,z+16,ltex,1,1,1,12); d3d_draw_cylinder(x-4,y+10,z,x+4,y+2,z+16,ltex,1,1,1,12); d3d_draw_cylinder(x-2,y-12,z+16,x+2,y-8,z+32,atex,1,1,1,12); d3d_draw_cylinder(x-2,y+12,z+16,x+2,y+8,z+32,atex,1,1,1,12); d3d_transform_set_identity(); Po nacisnięciu strzałek mam zmianę zmiennej dir na: left(tak wychodzi chłopek) 0 down 90 right 180 up 270 EDIT: Próbowałem też z d3d_transform_set_translation(), ale też kicha, bo bryły nadal pojawiają się w złym miejscu(zazwyczaj poza widokiem, oczywiście oprócz kątu 0). Wklepując komendę dir+=1 w drawie zauważyłem, że objekt porusza się względem jakiegoś innego punktu(sądze, że względem: x=0,y=0,z=0). Plx help. EDIT2: Z d3d_trasform_set_translation to widok mam na punkt 0,0,0, a ziom się obraca jak wczesniej. EDIT3: A jednak sobie poradziłem, tylko, że pojawiły sie nowe problemy. Dzieki Tymon za naprowadzenie na odpowiednią część helpa.
-
No mam takie pytanko: Czy można zrobić tak, aby bryły 3d(w większości ellipsoidy) obracały się wokół osi(z) jednej głównej bryły. Chodzi tu o tylko 4 kierunki(0, 90, 180, 270). Niestety funkcje d3d_transform_add_rotation_z() i d3d_transform_set_rotation_z() nie zdają egzaminu bo obracają widokiem(zresztą wtedy to cały ekran mi miga).
-
Problemy z view_angle
RaistlinBlackRobe odpowiedział(a) na RaistlinBlackRobe temat w Pytania początkujących
Szcególnie kiedy taka funkcja nie istnieje. Jest tylko draw_rectangle i draw_rectangle_color. -
Mam problem z tablicą view_angle. Po dodaniu kodu do drawu bohatera: view_angle[0]=-image_angle+90; //ten kod jest prawidłowy występuje następujacy problem: Rysuję sobie taki prostokącik: draw_rectangle_color(view_xview[0], view_yview[0], view_xview[0]+800, view_yview[0]+64, make_color_rgb(79,16,0), make_color_rgb(79,16,0), make_color_rgb(79,16,0), make_color_rgb(79,16,0), 0); noi jak teraz spowodować, że kiedy image_angle bohatera się zmienia, to prostokącik pozostaje wciąż na górze ekranu(obraca się względem bohatera)? Widok top down, poruszanie dir/speed. Pomocy, plx.
-
po pierwsze po drugie po wielo, wielo, wielo, wielo, wielo(...) krotnie Jakbym szukał więcej niż 5-10 minut byłoby wiele więcej. EDIT: Myślałem, że nie wolno obrażać innych userów.(no, tak się "robi" sarkazm ;))
-
ERROR in action number 1 of Draw Event for object obj_ceweapon: Error in code at line 1: x=owner.x + lengthdir_x(4,owner.image_angle); at position 9: Unknown variable x Jak to zobaczyłem to myślałem, że padnę. Błąd pokazuje się jak zmienna hp, na którą objekt obj_ceweapon poprzez kolizję wpływa, zejdzie poniżej 1/3. Problem zaczął występować, kiedy owner objektu obj_ceweapon otrzymał nastepujący kod: Collision with obj_weapon(nie mylić z ceweapon): if alarm1=0 {alarm[1]=3;alarm1=1;}; Alarm 1: effect_create_below(ef_cloud, x, y, 0, c_red); hp-=6; //jest to zmienna hp ownera alarm1=0; Wie ktoś może dlaczego tak się dzieje? EDIT: ;-D Ale ze mnie n00b. Dałem if hp <= o then instance_destroy(); i trudno o x nieistniejącego objektu.
-
Ładny silniczek. Przypomniał mi o FF'ach. 4/5(tylko powiedzcie mi może gdzie ja to mam ocenić :D) Postacie atakujące pozostają w tej samej pozycji. Mało urozmaicone.
-
Przestań narzekać tylko spróbuj pomyśleć. Wszyscy dobrze ci podpowiadają. Wiesz przecież, że musisz zapytać się o funcję place_free. To przecież masz wiele możliwości. Rusz głową i próbuj. Przy każdym case zmień if entered na: [/code]if (entered && place_free(x, y) Przy każdym naciśniętym klawiszu argumenty będą inne tzn.: vk_left będzie (x-1,y) vk_down będzie (x,y+1) Co do Yody, to on wcale nie jedzie po Newbach jak taczka, tylko stara się ciebie nauczyć samodzielnego, logicznego myślenia, umiejętnego wykorzystywania porad innych userów.
-
W funcji draw_text zmieniasz x i y na view_xview i view_yview.
-
Objekt kontrolujący: Do CREATE dopisz: czas=0; STEP: czas+=1; DRAW: draw_text(x,y,string(30-czas/room_speed)); Powinno działać.
-
Jak masz objekt kontroler(jak nie masz to se zróB) to daj mu w CREATE: alarm[0]=room_speed*30; A potem w ALARM 0: lives-=1; room_restart() //lub game_restart() EDIT: Szybszy ;( Brat mnie zawołał i musiałem przerwać w połowie posta.