Cze??. Jak mo?na zrobi? takie co? ze w wybieralce b?dzie na starcie skin o ID 0 a klikaj?c w lewy przycisk b?d? same skiny dla kobiet a na prawym b?d? same skiny dla m??czyzn. Mam taki kod ale tak jak by s? dwa skiny o ID 0. Co robi? ?le?
Je?li w tablicach Skiny_x masz poprawne ID klas to powinno by? ok, jedyny problem jaki widz? to te -1 na wszystkich argumentach. Pierwsze 4 (po id skinu) argumenty to pozycja i k?t wi?c -1 powinno by? ok (cho? powinno by? floatem). Kolejne argumenty to bronie i ich amunicja, wi?c -1 to niepoprawna dla nich warto?? i mo?e przez to co? si? psuje, zamie? to na 0:
?eby w lewo by?y kobiece a w prawo m??czy?ni wystarczy po prostu kobiece skiny doda? jako ostatnie, wtedy w lewo skiny id? od ty?u czyli od kobiecych.
Poza tym, gdy u?ywasz sizeof w p?tli to nie tw?rz nowej zmiennej. Sizeof jest sta?? definicj? ustalan? przez preprocesor i w momencie kompilacji jest po prostu zamieniany na aktualn? wielko?? tablicy, tak samo jak makra, definicje, enumy itd.
W tym momencie tw?j kod jest du?o bardziej "nieoptymalny" ni? gdyby? u?y? po prostu i < sizeof().
Czemu? Po pierwsze tworzysz kolejn? zmienn? na stosie, po drugie przy ka?dej iteracji p?tli ten warunek zostaje sprawdzony, a ?e warto?? z sizeof przypisa?e? do zmiennej, to warto?? pobierana jest z pami?ci wed?ug adresu na kt?ry wskazuje zmienna. Gdyby? u?y? sizeof bezpo?rednio, warunek sprawdzany by?by na sta?ej warto?ci w zoptymalizowany przez kompilator spos?b.
Takiego "triku" z drug? zmienn? u?ywa si? tylko wtedy, gdy wywo?ujesz co? co jest dynamiczne, np. GetPlayerPoolSize() poniewa? wtedy dodatkowo za ka?dym razem wywo?ywana by?aby ta funkcja.
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach