-
- dw= dw_func(me->dvert+mface->v1, ob->actdef-1);
- if(dw) {paintweight+= dw->weight; totw++;}
- dw= dw_func(me->dvert+mface->v2, ob->actdef-1);
- if(dw) {paintweight+= dw->weight; totw++;}
- dw= dw_func(me->dvert+mface->v3, ob->actdef-1);
- if(dw) {paintweight+= dw->weight; totw++;}
- if(mface->v4) {
- dw= dw_func(me->dvert+mface->v4, ob->actdef-1);
- if(dw) {paintweight+= dw->weight; totw++;}
- }
+
+ do {
+ unsigned int vidx= *(&mface->v1 + fidx);
+
+ dw= dw_func(me->dvert+vidx, ob->actdef-1);
+ if(dw) {
+ paintweight+= dw->weight;
+ totw++;
+ }
+
+ } while (fidx--);
+