z_mirror/BlueprintTools
git clone https://git.raiguard.me/z_mirror/BlueprintTools
bf73278
trunk
1local constants ={} 2 3constants . curved_rail_grid_sizes ={ 4{ left_top ={ x =- 2 , y =- 4 } , right_bottom ={ x =2 , y =4 } } , 5{ left_top ={ x =- 4 , y =- 2 } , right_bottom ={ x =4 , y =2 } } , 6} 7 8constants . library_shortcut_prototypes ={ 9"import-string" , 10"give-blueprint" , 11"give-blueprint-book" , 12"give-deconstruction-planner" , 13"give-upgrade-planner" , 14} 15 16-- collisions for diagonal and curved rails are hardcoded 17-- each table is a direction -> colliding tiles mapping, relative to the centerpoint of the entity 18constants . rail_tiles ={ 19[ "curved-rail" ] ={ 20[ 0 ] ={ 21{ x =- 3 , y =- 3 } , 22{ x =- 3 , y =- 2 } , 23{ x =- 2 , y =- 4 } , 24{ x =- 2 , y =- 3 } , 25{ x =- 2 , y =- 2 } , 26{ x =- 2 , y =- 1 } , 27{ x =- 1 , y =- 3 } , 28{ x =- 1 , y =- 2 } , 29{ x =- 1 , y =- 1 } , 30{ x =- 1 , y =0 } , 31{ x =0 , y =- 2 } , 32{ x =0 , y =- 1 } , 33{ x =0 , y =0 } , 34{ x =0 , y =1 } , 35{ x =0 , y =2 } , 36{ x =0 , y =3 } , 37{ x =1 , y =0 } , 38{ x =1 , y =1 } , 39{ x =1 , y =2 } , 40{ x =1 , y =3 } , 41} , 42[ 1 ] ={ 43{ x =- 2 , y =0 } , 44{ x =- 2 , y =1 } , 45{ x =- 2 , y =2 } , 46{ x =- 2 , y =3 } , 47{ x =- 1 , y =- 2 } , 48{ x =- 1 , y =- 1 } , 49{ x =- 1 , y =0 } , 50{ x =- 1 , y =1 } , 51{ x =- 1 , y =2 } , 52{ x =- 1 , y =3 } , 53{ x =0 , y =- 3 } , 54{ x =0 , y =- 2 } , 55{ x =0 , y =- 1 } , 56{ x =0 , y =0 } , 57{ x =1 , y =- 4 } , 58{ x =1 , y =- 3 } , 59{ x =1 , y =- 2 } , 60{ x =1 , y =- 1 } , 61{ x =2 , y =- 3 } , 62{ x =2 , y =- 2 } , 63} , 64[ 2 ] ={ 65{ x =- 4 , y =0 } , 66{ x =- 4 , y =1 } , 67{ x =- 3 , y =0 } , 68{ x =- 3 , y =1 } , 69{ x =- 2 , y =0 } , 70{ x =- 2 , y =1 } , 71{ x =- 1 , y =- 1 } , 72{ x =- 1 , y =0 } , 73{ x =- 1 , y =1 } , 74{ x =0 , y =- 2 } , 75{ x =0 , y =- 1 } , 76{ x =0 , y =0 } , 77{ x =1 , y =- 3 } , 78{ x =1 , y =- 2 } , 79{ x =1 , y =- 1 } , 80{ x =1 , y =0 } , 81{ x =2 , y =- 3 } , 82{ x =2 , y =- 2 } , 83{ x =2 , y =- 1 } , 84{ x =3 , y =- 2 } , 85} , 86[ 3 ] ={ 87{ x =- 4 , y =- 2 } , 88{ x =- 4 , y =- 1 } , 89{ x =- 3 , y =- 2 } , 90{ x =- 3 , y =- 1 } , 91{ x =- 2 , y =- 2 } , 92{ x =- 2 , y =- 1 } , 93{ x =- 1 , y =- 2 } , 94{ x =- 1 , y =- 1 } , 95{ x =- 1 , y =0 } , 96{ x =0 , y =- 1 } , 97{ x =0 , y =0 } , 98{ x =0 , y =1 } , 99{ x =1 , y =- 1 } , 100{ x =1 , y =0 } , 101{ x =1 , y =1 } , 102{ x =1 , y =2 } , 103{ x =2 , y =0 } , 104{ x =2 , y =1 } , 105{ x =2 , y =2 } , 106{ x =3 , y =1 } , 107} , 108[ 4 ] ={ 109{ x =- 2 , y =- 4 } , 110{ x =- 2 , y =- 3 } , 111{ x =- 2 , y =- 2 } , 112{ x =- 2 , y =- 1 } , 113{ x =- 1 , y =- 4 } , 114{ x =- 1 , y =- 3 } , 115{ x =- 1 , y =- 2 } , 116{ x =- 1 , y =- 1 } , 117{ x =- 1 , y =0 } , 118{ x =- 1 , y =1 } , 119{ x =0 , y =- 1 } , 120{ x =0 , y =0 } , 121{ x =0 , y =1 } , 122{ x =0 , y =2 } , 123{ x =1 , y =0 } , 124{ x =1 , y =1 } , 125{ x =1 , y =2 } , 126{ x =1 , y =3 } , 127{ x =2 , y =1 } , 128{ x =2 , y =2 } , 129} , 130[ 5 ] ={ 131{ x =- 3 , y =1 } , 132{ x =- 3 , y =2 } , 133{ x =- 2 , y =0 } , 134{ x =- 2 , y =1 } , 135{ x =- 2 , y =2 } , 136{ x =- 2 , y =3 } , 137{ x =- 1 , y =- 1 } , 138{ x =- 1 , y =0 } , 139{ x =- 1 , y =1 } , 140{ x =- 1 , y =2 } , 141{ x =0 , y =- 4 } , 142{ x =0 , y =- 3 } , 143{ x =0 , y =- 2 } , 144{ x =0 , y =- 1 } , 145{ x =0 , y =0 } , 146{ x =0 , y =1 } , 147{ x =1 , y =- 4 } , 148{ x =1 , y =- 3 } , 149{ x =1 , y =- 2 } , 150{ x =1 , y =- 1 } , 151} , 152[ 6 ] ={ 153{ x =- 4 , y =1 } , 154{ x =- 3 , y =0 } , 155{ x =- 3 , y =1 } , 156{ x =- 3 , y =2 } , 157{ x =- 2 , y =- 1 } , 158{ x =- 2 , y =0 } , 159{ x =- 2 , y =1 } , 160{ x =- 2 , y =2 } , 161{ x =- 1 , y =- 1 } , 162{ x =- 1 , y =0 } , 163{ x =- 1 , y =1 } , 164{ x =0 , y =- 2 } , 165{ x =0 , y =- 1 } , 166{ x =0 , y =0 } , 167{ x =1 , y =- 2 } , 168{ x =1 , y =- 1 } , 169{ x =2 , y =- 2 } , 170{ x =2 , y =- 1 } , 171{ x =3 , y =- 2 } , 172{ x =3 , y =- 1 } , 173} , 174[ 7 ] ={ 175{ x =- 4 , y =- 2 } , 176{ x =- 3 , y =- 3 } , 177{ x =- 3 , y =- 2 } , 178{ x =- 3 , y =- 1 } , 179{ x =- 2 , y =- 3 } , 180{ x =- 2 , y =- 2 } , 181{ x =- 2 , y =- 1 } , 182{ x =- 2 , y =0 } , 183{ x =- 1 , y =- 2 } , 184{ x =- 1 , y =- 1 } , 185{ x =- 1 , y =0 } , 186{ x =0 , y =- 1 } , 187{ x =0 , y =0 } , 188{ x =0 , y =1 } , 189{ x =1 , y =0 } , 190{ x =1 , y =1 } , 191{ x =2 , y =0 } , 192{ x =2 , y =1 } , 193{ x =3 , y =0 } , 194{ x =3 , y =1 } , 195} , 196} , 197[ "straight-rail" ] ={ 198[ 1 ] ={ 199{ x =- 1 , y =- 1 } , 200{ x =0 , y =- 2 } , 201{ x =0 , y =- 1 } , 202{ x =0 , y =0 } , 203{ x =1 , y =- 1 } , 204} , 205[ 3 ] ={ 206{ x =- 1 , y =0 } , 207{ x =0 , y =- 1 } , 208{ x =0 , y =0 } , 209{ x =0 , y =1 } , 210{ x =1 , y =0 } , 211} , 212[ 5 ] ={ 213{ x =- 2 , y =0 } , 214{ x =- 1 , y =- 1 } , 215{ x =- 1 , y =0 } , 216{ x =- 1 , y =1 } , 217{ x =0 , y =0 } , 218} , 219[ 7 ] ={ 220{ x =- 2 , y =- 1 } , 221{ x =- 1 , y =- 2 } , 222{ x =- 1 , y =- 1 } , 223{ x =- 1 , y =0 } , 224{ x =0 , y =- 1 } , 225} , 226} , 227} 228 229constants . settings ={ 230show_swap_wire_colors ="bpt-show-swap-wire-colors" , 231show_set_tiles ="bpt-show-set-tiles" , 232show_configure ="bpt-show-configure" , 233show_library_shortcuts ="bpt-show-library-shortcuts" , 234} 235 236return constants