| 289 | } |
| 290 | |
| 291 | S32 zEGeneratorEventCB(xBase* to, xBase* from, U32 toEvent, const F32* toParam, |
| 292 | xBase* toParamWidget) |
| 293 | { |
| 294 | zEGenerator* egen = (zEGenerator*)from; |
| 295 | switch (toEvent) |
| 296 | { |
| 297 | case eEventOn: |
| 298 | zEGenerator_TurnOn(egen); |
| 299 | break; |
| 300 | case eEventOff: |
| 301 | zEGenerator_TurnOff(egen); |
| 302 | break; |
| 303 | case eEventToggle: |
| 304 | zEGenerator_ToggleOn(egen); |
| 305 | break; |
| 306 | case eEventReset: |
| 307 | zEGenerator_Reset(egen, (xScene*)globals.sceneCur); |
| 308 | break; |
| 309 | case eEventVisible: |
| 310 | case eEventFastVisible: |
| 311 | xEntShow(egen); |
| 312 | break; |
| 313 | case eEventInvisible: |
| 314 | case eEventFastInvisible: |
| 315 | xEntHide(egen); |
| 316 | break; |
| 317 | case eEventCollision_Visible_On: |
| 318 | xEntShow(egen); |
| 319 | case eEventCollisionOn: |
| 320 | egen->chkby = XENT_COLLTYPE_PLYR | XENT_COLLTYPE_NPC; |
| 321 | egen->bupdate(egen, (xVec3*)&egen->model->Mat->pos); |
| 322 | break; |
| 323 | case eEventCollision_Visible_Off: |
| 324 | xEntHide(egen); |
| 325 | case eEventCollisionOff: |
| 326 | egen->chkby = XENT_COLLTYPE_NONE; |
| 327 | break; |
| 328 | case eEventCameraCollideOn: |
| 329 | zCollGeom_CamEnable(egen); |
| 330 | break; |
| 331 | case eEventCameraCollideOff: |
| 332 | zCollGeom_CamDisable(egen); |
| 333 | break; |
| 334 | case eEventLaunchShrapnel: |
| 335 | zShrapnelAsset* shrap = (zShrapnelAsset*)toParamWidget; |
| 336 | if (shrap == NULL || shrap->initCB == NULL) |
| 337 | break; |
| 338 | |
| 339 | shrap->initCB(shrap, egen->model, 0, 0); |
| 340 | break; |
| 341 | } |
| 342 | return eEventEnable; |
| 343 | } |
nothing calls this directly
no test coverage detected