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

Function MakeBOA

Descent3/BOA.cpp:2023–2099  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2021}
2022
2023void MakeBOA(void) {
2024 ASSERT(BOA_ROOM_MASK > MAX_ROOMS + MAX_BOA_TERRAIN_REGIONS);
2025 int cur_check = BOAGetMineChecksum();
2026
2027 if (cur_check == BOA_vis_checksum)
2028 BOA_vis_valid = 1;
2029 else
2030 BOA_vis_valid = 0;
2031
2032 if (cur_check == BOA_mine_checksum)
2033 return;
2034
2035 // OutrageMessageBox("Reminder: You need to make BOA Vis on this level.\nThis is either because it hasn't\nbeen done
2036 // or Chris updated BOA.");
2037
2038 BOA_mine_checksum = cur_check;
2039 BOA_f_making_boa = true;
2040
2041 mprintf(0, "Making BOA and friends\n");
2042
2043 mprintf(0, "Finding small portals\n");
2044 find_small_portals();
2045 mprintf(0, "Done Finding small portals\n");
2046
2047 mprintf(0, " Start computing path points.\n");
2048 BOA_ComputePathPoints();
2049 mprintf(0, " Done computing path points.\n");
2050
2051 clear_BOA();
2052 compute_costs();
2053
2054 mprintf(0, " Start computing mines.\n");
2055 compute_mine_info();
2056 mprintf(0, " Done computing %d mines.\n", BOA_num_mines);
2057
2058 mprintf(0, " Start computing terrain regions.\n");
2059 compute_terrain_region_info();
2060 mprintf(0, " Done computing %d terrain regions.\n", BOA_num_terrain_regions);
2061
2062 mprintf(0, " Making designers wait for no particular reason...\n");
2063 compute_next_segs();
2064 mprintf(0, " Done with the sodomy...\n");
2065
2066 mprintf(0, " Start computing blockage info.\n");
2067 compute_blockage_info();
2068 mprintf(0, " Done computing blockage info.\n");
2069
2070 mprintf(0, " Start computing sound prop.\n");
2071 compute_sound_dist_info();
2072 mprintf(0, " Done computing sound prop.\n");
2073
2074 mprintf(0, " Start computing invalid robot path info.\n");
2075 compute_robot_path_info();
2076 mprintf(0, " Done computing invalid robot path info.\n");
2077
2078 mprintf(0, " Verifying connections\n");
2079 verify_connections();
2080 mprintf(0, " Done with verification\n");

Callers 8

OnAinCreateNodesMethod · 0.85
OnMatMoveViewerButtonMethod · 0.85
EBNode_VerifyGraphFunction · 0.85
StartLevelFunction · 0.85
LoadLevelFunction · 0.85
SaveLevelFunction · 0.85
MakeBOAVisTableFunction · 0.85

Calls 12

BOAGetMineChecksumFunction · 0.85
find_small_portalsFunction · 0.85
BOA_ComputePathPointsFunction · 0.85
clear_BOAFunction · 0.85
compute_costsFunction · 0.85
compute_mine_infoFunction · 0.85
compute_next_segsFunction · 0.85
compute_blockage_infoFunction · 0.85
compute_sound_dist_infoFunction · 0.85
compute_robot_path_infoFunction · 0.85
verify_connectionsFunction · 0.85

Tested by

no test coverage detected