Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesrna/intern/rna_object_force.c
| Show First 20 Lines • Show All 853 Lines • ▼ Show 20 Lines | static char *rna_EffectorWeight_path(PointerRNA *ptr) | ||||
| return NULL; | return NULL; | ||||
| } | } | ||||
| static void rna_CollisionSettings_dependency_update(Main *bmain, Scene *scene, PointerRNA *ptr) | static void rna_CollisionSettings_dependency_update(Main *bmain, Scene *scene, PointerRNA *ptr) | ||||
| { | { | ||||
| Object *ob = (Object *)ptr->owner_id; | Object *ob = (Object *)ptr->owner_id; | ||||
| ModifierData *md = BKE_modifiers_findby_type(ob, eModifierType_Collision); | ModifierData *md = BKE_modifiers_findby_type(ob, eModifierType_Collision); | ||||
| /* add/remove modifier as needed */ | /* add the modifier if needed */ | ||||
| if (ob->pd->deflect && !md) { | if (ob->pd->deflect && !md) { | ||||
| ED_object_modifier_add(NULL, bmain, scene, ob, NULL, eModifierType_Collision); | ED_object_modifier_add(NULL, bmain, scene, ob, NULL, eModifierType_Collision); | ||||
| } | } | ||||
| else if (!ob->pd->deflect && md) { | |||||
| ED_object_modifier_remove(NULL, bmain, scene, ob, md); | |||||
| } | |||||
| WM_main_add_notifier(NC_OBJECT | ND_DRAW, ob); | WM_main_add_notifier(NC_OBJECT | ND_DRAW, ob); | ||||
| } | } | ||||
| static void rna_CollisionSettings_update(Main *UNUSED(bmain), | static void rna_CollisionSettings_update(Main *UNUSED(bmain), | ||||
| Scene *UNUSED(scene), | Scene *UNUSED(scene), | ||||
| PointerRNA *ptr) | PointerRNA *ptr) | ||||
| { | { | ||||
| ▲ Show 20 Lines • Show All 1,264 Lines • Show Last 20 Lines | |||||