Freezer Opublikowano 5 Czerwca 2016 Udostępnij Opublikowano 5 Czerwca 2016 Mam pewien problem z funkcją image_angle, nie wiem co robię źle, ale kod ten nie działa poprawnie i nie przekręca mi w ogóle sprite'a. Przechodząc do sedna, mam sprite gdzie narysowany jest pocisk i object do tego, który odpowiada za obrażenia, niszczenie pocisku etc. Z tego co się orientowałem i co w sumie wcześniej działało w obj_bullet powinienem dodać "image_angle = point_direction(obj_player.x, obj_player.y, mouse_x, mouse_y)", nawet jeżeli według mojego rozumowania kod ten był zły, to powinien w jakikolwiek sposób obrócić sprite, a tak się nie dzieje. Myślałem, że błąd jest w umiejscowieniu tego kodu, ale nieważne jest czy dam go w create, czy step to i tak nie działa. W razie pytań w jaki sposób tworzę obj_bullet zamieszczam kod ze swojego skryptu: GML if (gun_key && number_of_gun > -1 && obj_player_stats.gun[number_of_gun] == true && obj_player_stats.ammo[number_of_gun] > 0 && !shooting){ switch(number_of_gun){ case 0: var bullet = instance_create(x, y, obj_bullet1); bullet.creator = id; alarm[1] = obj_bullet1.fire_rate; obj_player_stats.ammo[0] -= 1; shooting = true; break; Z samym ifem chyba problemów nie ma, bo wszystko ładnie działa tak jak powinno. W sumie to jedyną rzeczą która nie działa jest to obracanie :/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 5 Czerwca 2016 Udostępnij Opublikowano 5 Czerwca 2016 GML bullet.direction = point_direction(obj_player.x, obj_player.y, mouse_x, mouse_y); bullet.image_angle = bullet.direction; ? I pocisk się nie obraca? ewentualnie daj kod z obj_bullet1 z draw Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Freezer Opublikowano 5 Czerwca 2016 Autor Udostępnij Opublikowano 5 Czerwca 2016 W draw nic nie mam, mogę podrzucić info o obj_bullet1, jeżeli to coś pomoże. GML Information about object: obj_bullet1 Sprite: spr_bullet Solid: false Visible: true Depth: 0 Persistent: false Parent: Children: Mask: Physics Start Awake: true Is Kinematic: false Is Sensor: true Density: 0.1 Restitution: 0 Group: 0 Linear Damping: 0 Angular Damping: 0 Friction: 0 Shape: Polygon Points: (0, 2) (8, 2) (10, 4) (8, 8) (0, 8) Create Event: execute code: ///Inicjalizacja //move_towards_point(mouse_x, mouse_y, 10); dir = point_direction(obj_player.x,obj_player.y,mouse_x,mouse_y); phy_speed_x = lengthdir_x(10,dir); phy_speed_y = lengthdir_y(10,dir); damage = obj_player_stats.attack+2; creator = noone; fire_rate = 10; phy_bullet = true; Alarm Event for alarm 0: execute code: instance_destroy(); Step Event: execute code: image_angle = point_direction(obj_player.x, obj_player.y, mouse_x, mouse_y); if(distance_to_object(obj_player) > 200){ instance_destroy(); } Collision Event with object obj_wall: execute code: /// niszczenie pocisku po uderzeniu instance_destroy(); Collision Event with object obj_lifeform_parent: execute code: /// Obrazenia w wszystkie formy zycia if (other.id != creator) { other.hp -= damage; // instance_destroy(); alarm[0] = 1; } Collision Event with object obj_door: execute code: instance_destroy(); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 5 Czerwca 2016 Udostępnij Opublikowano 5 Czerwca 2016 wywal to GML image_angle = point_direction(obj_player.x, obj_player.y, mouse_x, mouse_y); i daj w create na końcu: GML image_angle = dir; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Freezer Opublikowano 5 Czerwca 2016 Autor Udostępnij Opublikowano 5 Czerwca 2016 Zrobiłem tak i ciągle się nie obraca :/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
ediepl Opublikowano 5 Czerwca 2016 Udostępnij Opublikowano 5 Czerwca 2016 okejjjjj to daj do draw GML draw_sprite_ext( sprite_index , image_index, x, y, 1, 1, dir, image_blend, image_alpha ); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Freezer Opublikowano 5 Czerwca 2016 Autor Udostępnij Opublikowano 5 Czerwca 2016 Działa, wielkie dzięki <3 Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 6 Czerwca 2016 Administratorzy Udostępnij Opublikowano 6 Czerwca 2016 Bo jak używasz fizyki, to domyślnie na obrót nie działa image_angle, tylko bodaj phy_rotation. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się