MCPcopy Create free account
hub / github.com/DescentDevelopers/Descent3 / UpdateEnergyBeams

Method UpdateEnergyBeams

scripts/AIGame3.cpp:2485–2555  ·  view source on GitHub ↗

Creates the different lightning beam effects

Source from the content-addressed store, hash-verified

2483
2484// Creates the different lightning beam effects
2485void AlienOrganism::UpdateEnergyBeams(int me) {
2486 int b1_obj1, b1_obj2;
2487 int b2_obj1, b2_obj2;
2488 int b3_obj1, b3_obj2;
2489 int b1_texture_id;
2490 int b2_texture_id;
2491 int b3_texture_id;
2492
2493 if (!memory->energy_beams_on)
2494 return;
2495
2496 // See if it's time to create the next energy effect
2497 if (memory->next_update_beam_time <= Game_GetTime()) {
2498 float next_duration = ALIEN_BEAM_UPDATE_TIME /*+ ((float)rand()/(float)D3_RAND_MAX)*0.2f*/;
2499 memory->next_update_beam_time = Game_GetTime() + next_duration;
2500
2501 if (memory->mode == ALIEN_LANDED_DEPOSITING) {
2502 b1_obj1 = memory->pos1_handle;
2503 b1_obj2 = me;
2504 b1_texture_id = transfer_effect_id;
2505
2506 b2_obj1 = memory->pos2_handle;
2507 b2_obj2 = me;
2508 b2_texture_id = transfer_effect_id;
2509
2510 b3_obj1 = memory->pos3_handle;
2511 b3_obj2 = me;
2512 b3_texture_id = transfer_effect_id;
2513 } else if (memory->mode == ALIEN_LANDED_WITHDRAWING) {
2514 b1_obj1 = me;
2515 b1_obj2 = memory->pos1_handle;
2516 b1_texture_id = transfer_effect_id;
2517
2518 b2_obj1 = me;
2519 b2_obj2 = memory->pos2_handle;
2520 b2_texture_id = transfer_effect_id;
2521
2522 b3_obj1 = me;
2523 b3_obj2 = memory->pos3_handle;
2524 b3_texture_id = transfer_effect_id;
2525 } else if (memory->mode == ALIEN_LANDED_HEALING) {
2526 b1_obj1 = memory->pos1_handle;
2527 b1_obj2 = me;
2528 b1_texture_id = heal_effect_id;
2529
2530 b2_obj1 = me;
2531 b2_obj2 = memory->pos2_handle;
2532 b2_texture_id = heal_effect_id;
2533
2534 b3_obj1 = me;
2535 b3_obj2 = memory->pos3_handle;
2536 b3_texture_id = heal_effect_id;
2537 } else {
2538 mprintf(0, "Invalid energy beam effect mode!\n");
2539 return;
2540 }
2541
2542 // Now create the beams

Callers

nothing calls this directly

Calls 1

aLightningCreateFunction · 0.85

Tested by

no test coverage detected