Skocz do zawartości

nomyzs

Użytkownicy
  • Postów

    15
  • Dołączył

  • Ostatnia wizyta

O mnie

  • Płeć
    Male

Osiągnięcia nomyzs

Chicken

Chicken (1/13)

0

Reputacja

  1. Dzięki, pomogło :) A jak to działa, bo nie mogę znaleźć o tym porównaniu(?) nic znaleźć?
  2. Ale wtedy chyba będzie to się niszczyło po dotknięciu w dowolnym miejscu, a mi zależy żeby to się stało tylko wtedy kiedy gracz stoi na górze obiektu.
  3. Witam! Chcę zrobić obiekt, który będzie znikał po stanięciu na nim graczem po sekundzie. Zrobiłem taki kod: CREATE GML niszczenie=false STEP GML if(place_meeting(x, y-1, obj_player)) { alarm[0]=30 } if(niszczenie=true) { instance_destroy() } ALARM 0 GML niszczenie=true Niestety obiekt niszczy się po sekundzie, ale gdy się z niego zejdzie. Co jest nie tak?
  4. Ok, a więc kod wygląda teraz tak: STEP GML if(keyboard_check_pressed(global.tyl)) //WYZEROWUJE PREDKOSC PRZY COFANIU CZASU { vspd=0 hspd=0 } if(!keyboard_check(global.tyl)) //TWORZY DANE NA STOSIE, GDY NIE COFAMY CZASU { ds_stack_push(stosx,x) ds_stack_push(stosy,y) } if(keyboard_check(global.tyl)) { if(!ds_stack_empty(stosx)) { if(keyboard_check(global.szybko)) //SZYBICIEJ { if(!keyboard_check(global.wolno)) { repeat(n_razy_przys) { if(!ds_stack_empty(stosx)) { xy= ds_stack_pop(stosx) yx= ds_stack_pop(stosy) } else { xy=xy yx=yx } } if(!ds_stack_empty(stosx)) { x= ds_stack_pop(stosx) y= ds_stack_pop(stosy) } else { x=xy y=yx } } } if(keyboard_check(global.wolno)) //WOLNIEJ { if(!keyboard_check(global.szybko)) { i+=1 xy=ds_stack_top(stosx) yx=ds_stack_top(stosy) if(i mod n_razy_spo=0) { x = ds_stack_pop(stosx) y = ds_stack_pop(stosy) i=n_razy_spo } else { x=(xy+x)/2 y=(yx+y)/2 } } } if(!keyboard_check(global.wolno)) //NORMALNIE { if(!keyboard_check(global.szybko)) { x= ds_stack_pop(stosx) y= ds_stack_pop(stosy) } } } } CREATE GML stosx=ds_stack_create() stosy=ds_stack_create() xy=0 yx=0 global.slow=true i=1 n=1 //JAK DUZE SPOWOLNIENIE/PRZYSPIESZENIE(1 TO 2 RAZY WOLNIEJ/SZYBCIEJ) n_razy_spo=2*n n_razy_przys=1*n W spowolnieniu zrobiłem, tak aby liczba nie była duża. Dobrze to jest? Zrobiłem też wyliczanie średniej, tylko to tak średnio działa, tzn. jest lepiej jak bez tego, tylko sprite tak się "trzęsie", skacze. Czy da się to lepiej zrobić? I czy reszta jest ok?
  5. Minęliśmy się :jezor: Spróbuję zrobić to z twoim kodem i dam znać jak działa :)
  6. Teraz napotkał mnie kolejny problem, gdyż chcę dodać opcję przyśpieszenia i zwolnienia cofnięcia w czasie. Z przyśpieszeniem poradziłem sobie tak: GML if(keyboard_check(global.tyl) and !ds_stack_empty(stosx)) { if(keyboard_check(global.szybko)) { xy= ds_stack_pop(stosx) yx= ds_stack_pop(stosy) if(!ds_stack_empty(stosx)) { x= ds_stack_pop(stosx) y= ds_stack_pop(stosy) } else { x=xy y=yx } } else { x= ds_stack_pop(stosx) y= ds_stack_pop(stosy) } } Ale nie mam pomysłu ze zwolnieniem. Kombinowałem coś z alarmami, ale nie wychodziło :/ Jak można byłoby to zrobić? I czy optymalniej byłoby najpierw sprawdzać, czy jest wciskany klawisz odpowiedzialny za cofnięcie czasu, a dopiero później czy stos nie jest pusty? Edit. W końcu wymyśliłem jak to zrobić i całość wygląda tak: STEP GML if(keyboard_check_pressed(global.tyl)) //WYZEROWUJE PREDKOSC PRZY COFANIU CZASU { vspd=0 hspd=0 } if(!keyboard_check(global.tyl)) //TWORZY DANE NA STOSIE, GDY NIE COFAMY CZASU { ds_stack_push(stosx,x) ds_stack_push(stosy,y) } if(keyboard_check(global.tyl)) //COFANIE { if(!ds_stack_empty(stosx)) //CZY STOS NIE JEST PUSTY { if(keyboard_check(global.szybko)) //SZYBICIEJ { if(!keyboard_check(global.wolno)) { xy= ds_stack_pop(stosx) yx= ds_stack_pop(stosy) if(!ds_stack_empty(stosx)) { x= ds_stack_pop(stosx) y= ds_stack_pop(stosy) } } } if(keyboard_check(global.wolno)) //WOLNIEJ { if(!keyboard_check(global.szybko)) { if(slow=true) { slow=false x=ds_stack_pop(stosx) y=ds_stack_pop(stosy) alarm[1]=2 } } } if(!keyboard_check(global.wolno)) //NORMALNIE { if(!keyboard_check(global.szybko)) { x= ds_stack_pop(stosx) y= ds_stack_pop(stosy) } } } } CREATE GML stosx=ds_stack_create() stosy=ds_stack_create() xy=0 yx=0 slow=true Alarm zmienia jedynie wartość na true. Czy w kodzie wszystko jest ok? W grze całość działa :)
  7. Aaaa tak, dałem kod to stepa :/ Dzięki za pomoc :)
  8. W tym samym. Ok, dzięki zrobię tak. A jak zrobić to z pokazywaniem czy jest dostępna przeszłość, tak jak zrobić? Czemu z tym kodem co dałem nic się nie pokazuje?
  9. Właśnie inspirowałem się twoim przykładem :) Zrobiłem coś takiego: GML //CZAS if(keyboard_check_pressed(vk_space)) //WYZEROWUJE PREDKOSC PRZY COFANIU CZASU { vspeed=0 hspeed=0 } if(!keyboard_check(vk_space)) //TWORZY DANE NA STOSIE, GDY NIE COFAMY CZASU { ds_stack_push(stosx,x) ds_stack_push(stosy,y) } if(keyboard_check(vk_space) and !ds_stack_empty(stosx) and !ds_stack_empty(stosy)) //SCIAGA DANE ZE STOSU, JESLI NIE SA PUSTE { x=ds_stack_pop(stosx) y=ds_stack_pop(stosy) } //END CZAS</span> Wszystko jest ok? Teraz chciałbym zrobić obrazek pokazujący, czy jest dostępna przeszłość i nie wiem jak to zrobić, żeby działało. Jak na razie stworzyłem zmienną globalna "przeszlosc" i w stepie dałem taki kod: GML //KONTROLER CZASU if(ds_stack_empty(stosx) and ds_stack_empty(stosy)) { global.przeszlosc=false } else { global.przeszlosc=true } //END KONTROLER CZASU</span> I co dalej? Próbowałem stworzyć nowy obiekt, który wyświetlał by sprite'y z takim kodem: GML if(global.przeszlosc=true) { draw_sprite(spr_przeszlosc, -1, x, y); } else { draw_sprite(spr_brak, -1, x, y); } Ale po umieszczeniu go w room'ie nic się nie pojawia :/
  10. Dzięki, utworzenie w create pomogło :)
  11. Witam! :) Próbuję zrobić, aby spacja cofała ruch, ale niestety gdy ją naciskam obiekt przenosi się do krawędzi ekranu(choć tam w ogóle nie stał), a nie do poprzedniej pozycji. GML stos=ds_stack_create() if(keyboard_check(vk_right)) { x+=1 } if(keyboard_check(vk_space)) { x=ds_stack_pop(stos) } else { ds_stack_push(stos,x) } Co jest w tym kodzie źle?
  12. Czy jest jakiś sposób, aby myszka nie wychodziła za okno gry? Jeśli tak to w jaki sposób to zrobić? Pozdrawiam! :)
  13. nomyzs

    GM, a SSD

    Witam! :) Czy warto instalować GM'a na dysku SSD? Czy używa on do jakiś sensownych rzeczy dysku? Pozdrawiam!
  14. nomyzs

    Kupno GM, a podatek

    Studio Pro, kupiłem go w końcu normalnie na Polskę :)
  15. Witam! Chcę kupić GM'a na oficjalnej stronie. Jest tam do wyboru kraj zamieszkania. Jeśli wybieram Polskę doliczany jest podatek, a jeśli na USA to jest bez. Dlatego mam pytanie, czy mogę wybrać jako USA? Czy będzie jakaś różnica oprócz tego VAT-u? Czy będę mógł zapłacić polską kartą? W jaki sposób wy go kupiliście? Pozdrawiam!
×
×
  • Dodaj nową pozycję...