Minor particle system fixes:

- Changed some tooltips.
- Refresh with reactors and shared particle settings.
- Copying of child particles.
This commit is contained in:
2008-05-14 13:30:36 +00:00
parent d1e1332e07
commit 7806a44134
4 changed files with 27 additions and 6 deletions

View File

@@ -3013,9 +3013,14 @@ void do_effects_panels(unsigned short event)
case B_PART_INIT_CHILD:
case B_PART_RECALC_CHILD:
if(psys) {
Base *base;
Object *bob;
ParticleSystem *bpsys;
int flush;
nr=0;
for(psys=ob->particlesystem.first; psys; psys=psys->next){
if(ELEM(psys->part->draw_as,PART_DRAW_OB,PART_DRAW_GR))
for(bpsys=ob->particlesystem.first; bpsys; bpsys=bpsys->next){
if(ELEM(bpsys->part->draw_as,PART_DRAW_OB,PART_DRAW_GR))
nr++;
}
if(nr)
@@ -3023,6 +3028,21 @@ void do_effects_panels(unsigned short event)
else
ob->transflag &= ~OB_DUPLIPARTS;
if(psys->part->type==PART_REACTOR)
if(psys->target_ob)
DAG_object_flush_update(G.scene, psys->target_ob, OB_RECALC_DATA);
for(base = G.scene->base.first; base; base= base->next) {
bob= base->object;
flush= 0;
for(bpsys=bob->particlesystem.first; bpsys; bpsys=bpsys->next)
if(bpsys->part==psys->part)
flush= 1;
if(flush)
DAG_object_flush_update(G.scene, bob, OB_RECALC_DATA);
}
DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA);
allqueue(REDRAWVIEW3D, 0);
allqueue(REDRAWBUTSOBJECT, 0);