Sutikku Opublikowano 5 Lutego 2017 Udostępnij Opublikowano 5 Lutego 2017 Cześć, biorę się za jakiegoś skromnego rpg, takiego wiecie, klasycznego. Taka tibia czy realm of the mad god. Tylko, że offline. Właśnie chciałem się wziąć za umiejętności, ale nie mam pojęcia jak. Mam 2 pomysły, ale oba wydają mi się zbyt długie i może ma ktoś jakiś koncept w głowie jak to zrobić lepiej, jakoś może mnie naprowadzić na inny tor myślenia. To ja może przedstawię jak ja myślałem. 1) Najprostszy GML (pseudokod) if skill==1 { var f=instance_create(x,y,obj_fireball); f.direction=direction; f.speed=10; } if skill==2 { invincible=1; alarm[x]=240; } 2) Trochę bardziej uporządkowany, bo coś w stylu paru gotowych umiejętności w postaci skryptów w których zmieniam tylko zmienne w stylu GML (pseudokod) if skill==3 { area_skill(sprite,range,inna_zmienna); } if skill==4 { passive_skill(dlugosc_trwania,invincible) } Ale ten sposób znów trochę ogranicza różnorodność umiejętności. Ktoś coś? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 6 Lutego 2017 Administratorzy Udostępnij Opublikowano 6 Lutego 2017 Drugi sposób wcale niczego nie ogranicza. Drugi sposób może być po prostu "wycięciem" kodu z obiektu i przeniesieniem do skryptów. Pamiętaj, że skrypty mają dostęp do danego obiektu z którego są wywołane i widzą je tak, jakby były wklejone w tym momencie w ten obiekt. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dester Opublikowano 6 Lutego 2017 Udostępnij Opublikowano 6 Lutego 2017 Drugi lepszy. Ogarnięty kod + o wiele mniej roboty + łatwiej dokonywać małych zmian. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
pablo1517 Opublikowano 8 Maja 2017 Udostępnij Opublikowano 8 Maja 2017 A gdyby tak array? Powiedzmy ze masz sobie skrypty ponazywane "Skill1" "Skill2" itd GML skill = 0; // to co miales w ifach Skills[0] = Skill1; Skills[1] = Skill2; Skills[2] = Skill3; i zdaje sie ze jest taka funkcja jak GML script_execute(Skills[skill]); Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Uzjel Opublikowano 8 Maja 2017 Udostępnij Opublikowano 8 Maja 2017 Nie ma tego w Studio. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 8 Maja 2017 Udostępnij Opublikowano 8 Maja 2017 script_execute które tylko wywołuje skrypty ze zmiennej dalej jest, poleciało execute_string i inne funkcje które parsują gmla na żywo 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ę