Elevator Opublikowano 6 Grudnia 2011 Udostępnij Opublikowano 6 Grudnia 2011 jak wyzej, mam cos takiego obecnie GML image_angle = point_direction(x,y,mouse_x,mouse_y) i w kolizji z mobem mam mob.hp-=10 jak zrobic zeby jak mocniej walne tj miecz szybciej wleci w moba to zada wiecej dmg? bardzo by mi sie to przydalo :D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 6 Grudnia 2011 Administratorzy Udostępnij Opublikowano 6 Grudnia 2011 Czy chcesz wyliczać to na podstawie tego co już masz, czy chcesz dopiero dodać różne wielkości wymachów? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Elevator Opublikowano 6 Grudnia 2011 Autor Udostępnij Opublikowano 6 Grudnia 2011 obojętne gnysek :P im mniej kodu tym lepiej Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 6 Grudnia 2011 Administratorzy Udostępnij Opublikowano 6 Grudnia 2011 Jeśli chcesz to zrobić na podstawie odległości od przeciwnika (im bliżej, tym miecz wchodzi w sumie głębiej), to wystarzczy np. GML //w kolizji var dist,taken; dist = point_distance(x,y,other.x,other.y); taken = 20 - dist; //im dalej, tym mniej hp odbierze, np. 12 pixeli od (o ile jest tak duży miecz), będzie to raptem 8 hp)</span> Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Elevator Opublikowano 6 Grudnia 2011 Autor Udostępnij Opublikowano 6 Grudnia 2011 nawet fajnie dziala ale to nie to czego szukam :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 6 Grudnia 2011 Administratorzy Udostępnij Opublikowano 6 Grudnia 2011 No to przerób mój pomysł :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Elevator Opublikowano 6 Grudnia 2011 Autor Udostępnij Opublikowano 6 Grudnia 2011 jesli dobrze rozumuje wystarczyłoby zamienic x, y miecza z jego rekojesci na jego ostrze i juz by dzialalo lepiej prawie perfekcyjnie mozna rzec :P wlasnie zamierzam to sprawdzic tymczasem czekam na kolejne pomysly @Edit ehh nie dziala tak perfekcyjnie jak myslalem, aczkolwiek jest to kolejny krok do perfekcji :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 6 Grudnia 2011 Udostępnij Opublikowano 6 Grudnia 2011 Mój trochę bardziej skomplikowany pomysł ale i też bardziej realistyczny. Taki rysunek poglądowy co gdzie i jak :D O co mi chodzi, można by było wyliczać prędkość uderzenia wybranych punktów na mieczu z jaką trafiło w ciało przeciwnika i na tej podstawie obliczyć zadany dmg. I teraz jak by miało się już tych 8 zmiennych wyliczone ( 2 punkty na mieczu w poprzednim stepie i obecnym ) to prędkość tych punktów wyliczyli byśmy o tak: GML speed1 = sqrt( sqr(x-xprevious) + sqr(y-yprevious) ); speed2 = sqrt( sqr(x2-x2previous) + sqr(y2-y2previous) ); No i zadany dmg przy kolizji tych punktów GML potworekID1 = collision_point(x,y, potworek, 0, 1 ); potworekID2 = collision_point(x2,y2, potworek, 0, 1 ); if ( potworekID1 != noone ) potworekID1.HP -= speed1 * (STRbohatera + atrybutAtakuMiecza ) if ( potworekID2 != noone ) potworekID2.HP -= speed2 * (STRbohatera + atrybutAtakuMiecza ) oczwiście to tylko teoria, którą teraz na szybko wymyśliłem i da się to ulepszyć oraz zoptymaliować pozatym nie wiem czy jest w 100% poprawna + jest jeden bug - za szybkie machnięcie może spowodować niewykrycie kolizji przez collision_pointy więc trzeba byłoby znaleźć jeszcze na to jakiś sposób ale na chwilę obecną nic nie wymyślę :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Muuuuczek567 Opublikowano 6 Grudnia 2011 Udostępnij Opublikowano 6 Grudnia 2011 DUŻO prościej jest obliczać różnicę poprzedniego i aktualnego kątu miecza. GML silauderzenia = abs(kąt_miecza-poprzedni_kąt_miecza) //trzeba dodać korekcję dla wartości bliskich 360 poprzedni_kąt_miecza = kąt_miecza Choć w sumie jakim by to sposobem nie zrobić, to jest to bez sensu - jeśli będziesz trzymał myszkę blisko miecza, to zamachy będą bardzo silne. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 6 Grudnia 2011 Udostępnij Opublikowano 6 Grudnia 2011 @up W Die By The Sword był zrobiony taki system podobny do mojego, tyle że w 3D, bardziej precyzyjny i bardziej skomplikowany, tam prędkość machania mieczem była zależna nie tylko od szybkości ruchu myszką ale także od masy miecza i siły bohatera. Nazwali ten system Vsim i do orginału tej gry dołączali specjalną myszkę którą dało się wykonywać ruchy 3D :D ( szybko to wycofali ) Edit: Myszka oczywiście się nie przyjęła a o grze słyszało mało ludzi. Bardzo fajne uczucie jak się skrzyżują miecze, ta gra to jest bardziej symulator walki mieczem i się bardzo fajnie w to grało. 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ę