Dopasowywanie sprite do sciany o okreslony...
Najlepsza odpowiedź grankee 04.01.2015 05:12
Nie wydaje mi się, że uda Ci się to skalować dynamicznie do każdego rozmiaru. Raczej musisz zrobić sprite o potrzebnych proporcjach. Jeżeli jest byt 1000x200 to musisz zrobic sprite 100x20 i wtedy mozesz go skalowac np x10.0
Przejdź do postu
NoLiFeR
03.01.2015
Mam mój byt,BBOX wielkości 1000 x 200 i sprite wielkości 300 x 200 (jednolity)
Jak dopasować sprite do bboxa bytu ? pev_scale 1.0 nie działa tak jak oczekuje.
GwynBleidD
03.01.2015
pev_scale 1.0 nie działa tak jak oczekuje.
To może nakreśl czego oczekujesz?
NoLiFeR
04.01.2015
Chcę, aby sprite ten skalował się w takie sposób, aby przylegał do bboxa bytu. (Aby skalował się do rozmiarów 1000x200)
Użytkownik NoLiFeR edytował ten post 04.01.2015 03:11
grankee
04.01.2015
Mam mój byt,BBOX wielkości 1000 x 200
byty są dwuwymiarowe?
daj tego sprita
Użytkownik grankee edytował ten post 04.01.2015 03:13
NoLiFeR
04.01.2015
Mi chodzi o skalowanie sprite, dlatego podaje 2 wymiary.
//chodzi o dynamiczne skalowanie sprite
@@ Setny post.
Użytkownik NoLiFeR edytował ten post 04.01.2015 03:22
grankee
04.01.2015
jak mam przykleic sprita znajac 2 z 3 wymiarow i jeszcze nie wiem ktore
i daj tego sprita
Użytkownik grankee edytował ten post 04.01.2015 03:20
NoLiFeR
04.01.2015
Plik w załączniku.
Nie chce aby się obracał więc dałem typ "oriented"
//wymiary bez szerokości bryły
Załączone pliki
Użytkownik NoLiFeR edytował ten post 04.01.2015 03:27
NoLiFeR
04.01.2015
proszę
new Float:MinBox[3] = {-5.0,-85.0,0.0} new Float:MaxBox[3] = {5.0,85.0,170.0} new origin[3] new Float:PlayerOrigin[3] get_user_origin(id, origin, 3); IVecFVec(origin, PlayerOrigin); new tmpWall tmpWall = Sciana("info_target","sprites/wall.spr",MinBox,MaxBox,2,PlayerOrigin) new originp[3] pev(id,pev_angles,originp) set_pev(tmpWall,pev_angles,originp) originp[2] = 0 set_pev(tmpWall, pev_scale, 1.5); set_task(5.0,"usunsciany",tmpWall) client_print(id, print_chat, "true")
Zawartość "Sciana"
new ent = create_entity(szClassname) entity_set_origin(ent,fOrigin); entity_set_string(ent,EV_SZ_classname,"sciana"); // Potrzebuje tutaj jakiejs unikalnej nazwy do usuwania wszystkich scian. entity_set_model(ent,szModel); entity_set_int(ent,EV_INT_solid, iSolid) entity_set_size(ent,fMins,fMaxs) entity_set_float(ent,EV_FL_nextthink,halflife_time() + 0.01) drop_to_floor(ent) return ent;
Najlepsza odpowiedź
grankee
04.01.2015
Nie wydaje mi się, że uda Ci się to skalować dynamicznie do każdego rozmiaru. Raczej musisz zrobić sprite o potrzebnych proporcjach. Jeżeli jest byt 1000x200 to musisz zrobic sprite 100x20 i wtedy mozesz go skalowac np x10.0
NoLiFeR
04.01.2015
Zmierze odległość pomiędzy dwoma punktami, i na tej podstawie zrobie sprite, innego wyjścia w tej sytuacji nie widze...
No nic, dzięki za pomoc.
Poczekam do dwunastej, może Darek lub Gwyn będzie znał jakiś tajeeemny sposób
Użytkownik NoLiFeR edytował ten post 04.01.2015 05:15