Napisano 10 Luty 200421 l Witam wszystkich. Mam dziwny problem a dokladnie to zaczolem pisac swoj pierwszy script :D. i narazie wszystko wmiare idzie gdyby nie to ze niewiem co sie dzieje oto co narazie napisalem : rollout ob_roll \"Obiekt\" width:160 height:184 ( radiobuttons rdo2 pos:[35,20] width:49 height:46 labels:#(\"Poly\", \"Mesh\") default:1 label lb2 \"Create Box, convert to Edit Tablet: \" pos:[10,45] button b1 \"Do It\" pos:[70,70] on b1 pressed do ( pot = box length:l.value width:w.value height:h.value pot.name = \"Box01\" ) ) rollout rozm_roll \"Dlugosc, Szerokosc, Wysokosc\" width:160 height:184 ( Spinner l \"Length: \"range[0,999,30] type:#float Spinner w \"Width: \"range[0,999,30] type:#float Spinner h \"Height: \"range[0,999,30] type:#float ) rollout opcje_roll \"Opcje\" width:160 height:184 ( ) rollout info_roll \"Info\" width:160 height:64 ( label lbl2 \"Autor: CoRnS\" pos16,32] width:136 height:16 ) mainfloater = newRolloutFloater \"Creator\" 201 240 addrollout ob_roll mainfloater addrollout rozm_roll mainfloater addrollout opcje_roll mainfloater addrollout info_roll mainfloater i problem jest taki, ze jak dam Ctrl+E [Evaluate All] to podswietla mi taka linijke : Spinner l \"Length: \"range[0,999,30] type:#float [z tego co wiem to oznacza blad] Dla jasnosci uzywam 3ds max 6. Pozdrawiam i z gory dzieki za pomoc.:)
Napisano 10 Luty 200421 l To tylko literowki. W definicji spinerow brakuje dwukropkow po range, powinno byc: Spinner l \"Length: \"range:[0,999,30] type:#float I dalej jeszcze w labelu lbl2, gdzie powinno byc pos:[16,32] zamiast pos16,32]
Napisano 10 Luty 200421 l Autor Dzieki joz poprawilem. Ale znowu cos nie tak bo gdy chce utwozyć boxa [klikam na bbuttona] to wyskakuje mi okienko \"--Unknow property:\"value\" in undefined\" :)
Napisano 11 Luty 200421 l Problem leży w zasięgu działania zmiennych.. coś czego nigdy nie lubiłem bo czasem można się przez to dłuugo wpatrywać w monitor ;) po prostu w rollout\'cie z buttonem ta zmienna jest niewidoczna Jeżeli te 3 linie: Spinner l \"Length: \"range[0,999,30] type:#float Spinner w \"Width: \"range[0,999,30] type:#float Spinner h \"Height: \"range[0,999,30] type:#float umieściłbyś w tym samym rollout\'cie co button, wszystko było by ok. Ja rozwiązałbym to tak, że wartości te przenosiłbym poprzez zmienne. Całość po moich poprawkach wyglądałaby tak: global wid = 30 global len = 30 global hei = 30 rollout ob_roll \"Obiekt\" width:160 height:184 ( radiobuttons rdo2 pos:[35,20] width:49 height:46 labels:#(\"Poly\", \"Mesh\") default:1 label lb2 \"Create Box, convert to Edit Tablet: \" pos:[10,45] button b1 \"Do It\" pos:[70,70] on b1 pressed do ( pot = box length:len width:wid height:hei pot.name = \"Box01\" ) ) rollout rozm_roll \"Dlugosc, Szerokosc, Wysokosc\" width:160 height:184 ( Spinner l \"Length: \"range:[0,999,30] type:#float on l changed val do len = l.value Spinner w \"Width: \"range:[0,999,30] type:#float on w changed val do wid = w.value Spinner h \"Height: \"range:[0,999,30] type:#float on h changed val do hei = h.value ) rollout opcje_roll \"Opcje\" width:160 height:184 ( ) rollout info_roll \"Info\" width:160 height:64 ( label lbl2 \"Autor: CoRnS\" pos:[16,32] width:136 height:16 ) mainfloater = newRolloutFloater \"Creator\" 201 240 addrollout ob_roll mainfloater addrollout rozm_roll mainfloater addrollout opcje_roll mainfloater addrollout info_roll mainfloater a teraz krótki opis -zaraz na poczatku zadeklarowalem zmienne przypisujac im wartosci poczatkowe spinnerow -w pot = box.... odwoluje sie do wartosci zmiennych a nie spinnerów -dodatkowe linie: on (nazwa) changed do ... sprawia ze przy kazdej zmianie spinnera nowa wartosc od razu ląduje także w zmiennej. Ogólnie rozwiązanie to pewnie prowizorka, ale tyle mogę pomóc :) w odpowiedzi na poniższe rozwiązanie lechoo: heh, ja przy tym pół godziny dłubałem a to o tyle prostsze było :) no ale człowiek uczy się całe życie
Napisano 11 Luty 200421 l Mozna to zrobic jeszcze inaczej. Wystarczy odwolac sie do spinera przez nazwe rolloutu czyli np. rozm_roll.l.value. Wtedy wartosc ta powinna byc widoczna w innych rolloutach.
Napisano 11 Luty 200421 l Autor Dzieki wielkie nareszcie dziala :). Mam jeszcze pytanie do lechoo: probowalem zrobic tak jak ty pisales ale wyskakuje mi msg \"--Unknow property:\"l\" in undefined\" Mozesz mi wyjasniec czemu tak sie dzieje [i co to jest to l pomiedzy tymi kropkami ?? :) Jeszcze raz dzieki wielkie :)
Napisano 11 Luty 200421 l ja podpowiem, że \"l\" to nazwa twojego spinnera :) a komunikat pojawia się takjakby wciąż ta wartość nie była osiągalna :| ja jeszcze tego nie mialem okazji przetestować, więc bedzie musiał tu lechoo zajrzeć :)
Napisano 11 Luty 200421 l Musisz zamienic miejscami rozm_roll i ob_roll. Najpierw ten w ktorym zdefiniowane sa spinnery a potem ten w ktorym sie do nich odwolujesz. Nie wiem czemu tak, max script ma takie rozne fanaberie :) Przerobiony skrypt wyglada tak: rollout rozm_roll \"Dlugosc, Szerokosc, Wysokosc\" width:160 height:184 ( Spinner l \"Length: \"range:[0,999,30] type:#float Spinner w \"Width: \"range:[0,999,30] type:#float Spinner h \"Height: \"range:[0,999,30] type:#float ) rollout ob_roll \"Obiekt\" width:160 height:184 ( radiobuttons rdo2 pos:[35,20] width:49 height:46 labels:#(\"Poly\", \"Mesh\") default:1 label lb2 \"Create Box, convert to Edit Tablet: \" pos:[10,45] button b1 \"Do It\" pos:[70,70] on b1 pressed do ( pot = box length:rozm_roll.l.value width:rozm_roll.w.value height:rozm_roll.h.value pot.name = \"Box01\" ) ) rollout opcje_roll \"Opcje\" width:160 height:184 ( ) rollout info_roll \"Info\" width:160 height:64 ( label lbl2 \"Autor: CoRnS\" pos:[16,32] width:136 height:16 ) mainfloater = newRolloutFloater \"Creator\" 201 240 addrollout ob_roll mainfloater addrollout rozm_roll mainfloater addrollout opcje_roll mainfloater addrollout info_roll mainfloater
Napisano 11 Luty 200421 l Autor Dzieki za pomoc :) Jest joz ok. Jak skoncze lub bede mial problemy [znowu] to dam znac. Jeszcze raz dzieki.
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto