Witam! Ostatnio grzebałem sporo żeby zrozumieć jak działają delegaty i zdarzenia jednak pewna sprawa jest dla mnie zagadką. Jak to jest że funkcje obsługujące zdarzenia w Unity takie jak void Start() czy void Update() działają? No bo próbowałem coś takiego zrobić sam i wyszło mi coś takiego (1 fota). Ale jak się edytuje skrypty w Unity to słowo "Start" jest zaznaczone na niebiesko i nie musi go nawet być. A jak bym chciał coś takiego zrobić u siebie no to zaraz będzie krzyczeć że nie ma takiej metody. Jak oni to zrobili?
bo to nie jest typowe
c#owe rozwiazanie. Zauwaz, ze mozesz tez pisac w javascripcie
Po prostu na obiekcie sprawdzaja czy istnieje cos takiego jak Start (zapewne uzywaja dynamic
do tego)
TwojObiekt[Start] != null
jezeli nie jest nullem to robia Invoke na tej metodzie
Ogolnie w C# nie chcesz tego samego osiagnac co oni tutaj zrobili. Powinienes miec po prostu funkcje ktora nadpisuje dana metode i tyle (a jej brak powinno byc bledem kompilacji)
Dzięki fasadin. Ja tego wcale nie muszę osiągać ale byłem ciekaw jak to działa :3
Tak poza tym, to masz nieużytego "huja" w ekwipunku :D
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.