at main 171 lines 6.5 kB view raw
1-- ======================================================================= 2-- Level package: level 3-- Auto-generated by level_builder.py — do not edit by hand. 4-- 5-- Usage in physics_engine / renderer: 6-- library work; 7-- use work.level.all; 8-- 9-- Then iterate: 10-- for i in 0 to OBS_COUNT-1 loop 11-- if c_right >= OBS_L(i) and ... then <collision logic> end if; 12-- end loop; 13-- ======================================================================= 14library IEEE; 15use IEEE.STD_LOGIC_1164.all; 16use IEEE.STD_LOGIC_ARITH.all; 17use IEEE.STD_LOGIC_UNSIGNED.all; 18 19package level is 20 21 constant OBS_COUNT : integer := 34; 22 23 -- Obstacle coordinate arrays (11-bit world-space, left/top/right/bottom) 24 type obs_arr_t is array(0 to OBS_COUNT-1) of std_logic_vector(10 downto 0); 25 26 constant OBS_L : obs_arr_t := ( 27 CONV_STD_LOGIC_VECTOR(60, 11), 28 CONV_STD_LOGIC_VECTOR(250, 11), 29 CONV_STD_LOGIC_VECTOR(490, 11), 30 CONV_STD_LOGIC_VECTOR(690, 11), 31 CONV_STD_LOGIC_VECTOR(460, 11), 32 CONV_STD_LOGIC_VECTOR(100, 11), 33 CONV_STD_LOGIC_VECTOR(200, 11), 34 CONV_STD_LOGIC_VECTOR(570, 11), 35 CONV_STD_LOGIC_VECTOR(930, 11), 36 CONV_STD_LOGIC_VECTOR(590, 11), 37 CONV_STD_LOGIC_VECTOR(590, 11), 38 CONV_STD_LOGIC_VECTOR(790, 11), 39 CONV_STD_LOGIC_VECTOR(920, 11), 40 CONV_STD_LOGIC_VECTOR(920, 11), 41 CONV_STD_LOGIC_VECTOR(590, 11), 42 CONV_STD_LOGIC_VECTOR(720, 11), 43 CONV_STD_LOGIC_VECTOR(650, 11), 44 CONV_STD_LOGIC_VECTOR(310, 11), 45 CONV_STD_LOGIC_VECTOR(70, 11), 46 CONV_STD_LOGIC_VECTOR(190, 11), 47 CONV_STD_LOGIC_VECTOR(420, 11), 48 CONV_STD_LOGIC_VECTOR(490, 11), 49 CONV_STD_LOGIC_VECTOR(200, 11), 50 CONV_STD_LOGIC_VECTOR(1010, 11), 51 CONV_STD_LOGIC_VECTOR(780, 11), 52 CONV_STD_LOGIC_VECTOR(1120, 11), 53 CONV_STD_LOGIC_VECTOR(990, 11), 54 CONV_STD_LOGIC_VECTOR(940, 11), 55 CONV_STD_LOGIC_VECTOR(1280, 11), 56 CONV_STD_LOGIC_VECTOR(640, 11), 57 CONV_STD_LOGIC_VECTOR(1250, 11), 58 CONV_STD_LOGIC_VECTOR(1200, 11), 59 CONV_STD_LOGIC_VECTOR(1330, 11), 60 CONV_STD_LOGIC_VECTOR(1270, 11) 61 ); 62 constant OBS_T : obs_arr_t := ( 63 CONV_STD_LOGIC_VECTOR(1430, 11), 64 CONV_STD_LOGIC_VECTOR(1380, 11), 65 CONV_STD_LOGIC_VECTOR(1420, 11), 66 CONV_STD_LOGIC_VECTOR(1360, 11), 67 CONV_STD_LOGIC_VECTOR(1220, 11), 68 CONV_STD_LOGIC_VECTOR(1170, 11), 69 CONV_STD_LOGIC_VECTOR(980, 11), 70 CONV_STD_LOGIC_VECTOR(1060, 11), 71 CONV_STD_LOGIC_VECTOR(1210, 11), 72 CONV_STD_LOGIC_VECTOR(480, 11), 73 CONV_STD_LOGIC_VECTOR(480, 11), 74 CONV_STD_LOGIC_VECTOR(480, 11), 75 CONV_STD_LOGIC_VECTOR(500, 11), 76 CONV_STD_LOGIC_VECTOR(490, 11), 77 CONV_STD_LOGIC_VECTOR(760, 11), 78 CONV_STD_LOGIC_VECTOR(640, 11), 79 CONV_STD_LOGIC_VECTOR(570, 11), 80 CONV_STD_LOGIC_VECTOR(800, 11), 81 CONV_STD_LOGIC_VECTOR(620, 11), 82 CONV_STD_LOGIC_VECTOR(360, 11), 83 CONV_STD_LOGIC_VECTOR(540, 11), 84 CONV_STD_LOGIC_VECTOR(200, 11), 85 CONV_STD_LOGIC_VECTOR(170, 11), 86 CONV_STD_LOGIC_VECTOR(220, 11), 87 CONV_STD_LOGIC_VECTOR(280, 11), 88 CONV_STD_LOGIC_VECTOR(580, 11), 89 CONV_STD_LOGIC_VECTOR(770, 11), 90 CONV_STD_LOGIC_VECTOR(970, 11), 91 CONV_STD_LOGIC_VECTOR(850, 11), 92 CONV_STD_LOGIC_VECTOR(910, 11), 93 CONV_STD_LOGIC_VECTOR(350, 11), 94 CONV_STD_LOGIC_VECTOR(1360, 11), 95 CONV_STD_LOGIC_VECTOR(1220, 11), 96 CONV_STD_LOGIC_VECTOR(1100, 11) 97 ); 98 constant OBS_R : obs_arr_t := ( 99 CONV_STD_LOGIC_VECTOR(150, 11), 100 CONV_STD_LOGIC_VECTOR(360, 11), 101 CONV_STD_LOGIC_VECTOR(620, 11), 102 CONV_STD_LOGIC_VECTOR(980, 11), 103 CONV_STD_LOGIC_VECTOR(620, 11), 104 CONV_STD_LOGIC_VECTOR(270, 11), 105 CONV_STD_LOGIC_VECTOR(460, 11), 106 CONV_STD_LOGIC_VECTOR(1050, 11), 107 CONV_STD_LOGIC_VECTOR(1140, 11), 108 CONV_STD_LOGIC_VECTOR(600, 11), 109 CONV_STD_LOGIC_VECTOR(790, 11), 110 CONV_STD_LOGIC_VECTOR(930, 11), 111 CONV_STD_LOGIC_VECTOR(930, 11), 112 CONV_STD_LOGIC_VECTOR(930, 11), 113 CONV_STD_LOGIC_VECTOR(820, 11), 114 CONV_STD_LOGIC_VECTOR(820, 11), 115 CONV_STD_LOGIC_VECTOR(730, 11), 116 CONV_STD_LOGIC_VECTOR(510, 11), 117 CONV_STD_LOGIC_VECTOR(180, 11), 118 CONV_STD_LOGIC_VECTOR(370, 11), 119 CONV_STD_LOGIC_VECTOR(500, 11), 120 CONV_STD_LOGIC_VECTOR(650, 11), 121 CONV_STD_LOGIC_VECTOR(300, 11), 122 CONV_STD_LOGIC_VECTOR(1170, 11), 123 CONV_STD_LOGIC_VECTOR(890, 11), 124 CONV_STD_LOGIC_VECTOR(1280, 11), 125 CONV_STD_LOGIC_VECTOR(1220, 11), 126 CONV_STD_LOGIC_VECTOR(1340, 11), 127 CONV_STD_LOGIC_VECTOR(1350, 11), 128 CONV_STD_LOGIC_VECTOR(700, 11), 129 CONV_STD_LOGIC_VECTOR(1330, 11), 130 CONV_STD_LOGIC_VECTOR(1300, 11), 131 CONV_STD_LOGIC_VECTOR(1400, 11), 132 CONV_STD_LOGIC_VECTOR(1430, 11) 133 ); 134 constant OBS_B : obs_arr_t := ( 135 CONV_STD_LOGIC_VECTOR(1440, 11), 136 CONV_STD_LOGIC_VECTOR(1390, 11), 137 CONV_STD_LOGIC_VECTOR(1430, 11), 138 CONV_STD_LOGIC_VECTOR(1370, 11), 139 CONV_STD_LOGIC_VECTOR(1230, 11), 140 CONV_STD_LOGIC_VECTOR(1180, 11), 141 CONV_STD_LOGIC_VECTOR(990, 11), 142 CONV_STD_LOGIC_VECTOR(1070, 11), 143 CONV_STD_LOGIC_VECTOR(1220, 11), 144 CONV_STD_LOGIC_VECTOR(760, 11), 145 CONV_STD_LOGIC_VECTOR(490, 11), 146 CONV_STD_LOGIC_VECTOR(490, 11), 147 CONV_STD_LOGIC_VECTOR(760, 11), 148 CONV_STD_LOGIC_VECTOR(500, 11), 149 CONV_STD_LOGIC_VECTOR(770, 11), 150 CONV_STD_LOGIC_VECTOR(650, 11), 151 CONV_STD_LOGIC_VECTOR(580, 11), 152 CONV_STD_LOGIC_VECTOR(810, 11), 153 CONV_STD_LOGIC_VECTOR(640, 11), 154 CONV_STD_LOGIC_VECTOR(410, 11), 155 CONV_STD_LOGIC_VECTOR(550, 11), 156 CONV_STD_LOGIC_VECTOR(220, 11), 157 CONV_STD_LOGIC_VECTOR(180, 11), 158 CONV_STD_LOGIC_VECTOR(290, 11), 159 CONV_STD_LOGIC_VECTOR(290, 11), 160 CONV_STD_LOGIC_VECTOR(590, 11), 161 CONV_STD_LOGIC_VECTOR(790, 11), 162 CONV_STD_LOGIC_VECTOR(980, 11), 163 CONV_STD_LOGIC_VECTOR(890, 11), 164 CONV_STD_LOGIC_VECTOR(940, 11), 165 CONV_STD_LOGIC_VECTOR(380, 11), 166 CONV_STD_LOGIC_VECTOR(1380, 11), 167 CONV_STD_LOGIC_VECTOR(1250, 11), 168 CONV_STD_LOGIC_VECTOR(1140, 11) 169 ); 170 171end package level;