├── Alphabet.py ├── Alphabet1.py ├── Game1.py ├── Game2.py ├── Game3.py ├── README.md ├── anime1.py ├── bashny.py ├── block.py ├── block1.py ├── block2.py ├── car.py ├── color_map.png ├── coord.py ├── cord1.py ├── dom.py ├── dom1.py ├── dom2.py ├── dom3.py ├── dom3_1.py ├── dom3_E.py ├── dom3_N.py ├── dom3_S.py ├── dom3_W.py ├── drive.py ├── foto.py ├── game.py ├── lin1.py ├── lin1С.py ├── lin2.py ├── lin2С.py ├── lin3.py ├── lin4.py ├── lin5.py ├── logic1.py ├── stena.py ├── stena1.py ├── stena1_opt.py ├── stena_opt.py ├── street.py ├── street1.py └── teleport.py /Alphabet.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() # получение 8 | 9 | class alpha: 10 | def __init__(self, x,y,z): 11 | self.x = x 12 | self.y = y 13 | self.z = z 14 | def A(self, color): 15 | Letter = [ 16 | [0,0,0,0,0,1], 17 | [0,0,0,0,1,1], 18 | [0,0,0,1,0,1], 19 | [0,0,1,1,1,1], 20 | [0,1,0,0,0,1], 21 | [1,0,0,0,0,1], 22 | ] 23 | self.run(Letter, color) 24 | 25 | def B(self, color): 26 | Letter = [ 27 | [1,1,1,1,1,1], 28 | [1,0,0,0,0,0], 29 | [1,1,1,1,1,0], 30 | [1,0,0,0,0,1], 31 | [1,0,0,0,0,1], 32 | [1,1,1,1,1,1], 33 | ] 34 | self.run(Letter, color) 35 | 36 | def V(self, color): 37 | Letter = [ 38 | [1,1,1,1,0,0], 39 | [1,0,0,0,1,0], 40 | [1,0,0,0,1,0], 41 | [1,1,1,1,1,0], 42 | [1,0,0,0,0,1], 43 | [1,0,0,0,0,1], 44 | [1,0,0,0,0,1], 45 | [1,1,1,1,1,0], 46 | ] 47 | self.run(Letter, color) 48 | 49 | def G(self, color): 50 | Letter = [ 51 | [1,1,1,1,1,1], 52 | [1,0,0,0,0,1], 53 | [1,0,0,0,0,0], 54 | [1,0,0,0,0,0], 55 | [1,0,0,0,0,0], 56 | [1,0,0,0,0,0], 57 | [1,0,0,0,0,0], 58 | [1,0,0,0,0,0], 59 | ] 60 | self.run(Letter, color) 61 | 62 | def D(self, color): 63 | Letter = [ 64 | [0,1,1,1,1,0], 65 | [0,1,0,0,1,0], 66 | [0,1,0,0,1,0], 67 | [0,1,0,0,1,0], 68 | [0,1,0,0,1,0], 69 | [1,1,1,1,1,1], 70 | [1,0,0,0,0,1], 71 | [1,0,0,0,0,1], 72 | ] 73 | self.run(Letter, color) 74 | 75 | def E(self, color): 76 | Letter = [ 77 | [1,1,1,1,1,1], 78 | [1,0,0,0,0,0], 79 | [1,0,0,0,0,0], 80 | [1,1,1,1,1,0], 81 | [1,0,0,0,0,0], 82 | [1,0,0,0,0,0], 83 | [1,0,0,0,0,0], 84 | [1,1,1,1,1,1], 85 | ] 86 | self.run(Letter, color) 87 | 88 | def J(self, color): 89 | Letter = [ 90 | [1,0,0,1,0,0,1], 91 | [1,0,0,1,0,0,1], 92 | [0,1,0,1,0,1,0], 93 | [0,1,1,1,1,1,0], 94 | [0,0,1,1,1,0,0], 95 | [0,1,0,1,0,1,0], 96 | [0,1,0,1,0,1,0], 97 | [1,0,0,1,0,0,1], 98 | ] 99 | self.run(Letter, color) 100 | 101 | def Z(self, color): 102 | Letter = [ 103 | [1,1,1,1,1,1], 104 | [1,0,0,0,0,1], 105 | [0,0,0,0,0,1], 106 | [0,1,1,1,1,1], 107 | [0,0,0,0,0,1], 108 | [0,0,0,0,0,1], 109 | [1,0,0,0,0,1], 110 | [1,1,1,1,1,1], 111 | ] 112 | self.run(Letter, color) 113 | 114 | def I(self, color): 115 | Letter = [ 116 | [1,0,0,0,1,1], 117 | [1,0,0,0,1,1], 118 | [1,0,0,1,0,1], 119 | [1,0,0,1,0,1], 120 | [1,0,1,0,0,1], 121 | [1,0,1,0,0,1], 122 | [1,1,0,0,0,1], 123 | [1,1,0,0,0,1], 124 | ] 125 | self.run(Letter, color) 126 | 127 | def Ii(self, color): 128 | Letter = [ 129 | [0,0,1,1,0,0], 130 | [1,0,0,0,0,1], 131 | [1,0,0,0,1,1], 132 | [1,0,0,1,0,1], 133 | [1,0,0,1,0,1], 134 | [1,0,1,0,0,1], 135 | [1,1,0,0,0,1], 136 | [1,1,0,0,0,1], 137 | ] 138 | self.run(Letter, color) 139 | 140 | def K(self, color): 141 | Letter = [ 142 | [1,0,0,0,1,1], 143 | [1,0,0,1,0,0], 144 | [1,0,1,0,0,0], 145 | [1,1,0,0,0,0], 146 | [1,0,1,0,0,0], 147 | [1,0,0,1,0,0], 148 | [1,0,0,0,1,0], 149 | [1,0,0,0,0,1], 150 | ] 151 | self.run(Letter, color) 152 | 153 | def L(self, color): 154 | Letter = [ 155 | [0,0,0,1,1,1], 156 | [0,0,0,1,0,1], 157 | [0,0,1,0,0,1], 158 | [0,0,1,0,0,1], 159 | [0,1,0,0,0,1], 160 | [0,1,0,0,0,1], 161 | [1,0,0,0,0,1], 162 | [1,0,0,0,0,1], 163 | ] 164 | self.run(Letter, color) 165 | 166 | 167 | def M(self, color): 168 | Letter = [ 169 | [1,1,0,0,0,1,1], 170 | [1,1,0,0,0,1,1], 171 | [1,0,1,0,1,0,1], 172 | [1,0,1,0,1,0,1], 173 | [1,0,0,1,0,0,1], 174 | [1,0,0,1,0,0,1], 175 | [1,0,0,0,0,0,1], 176 | [1,0,0,0,0,0,1], 177 | ] 178 | self.run(Letter, color) 179 | 180 | def N(self, color): 181 | Letter = [ 182 | [1,0,0,0,0,1], 183 | [1,0,0,0,0,1], 184 | [1,0,0,0,0,1], 185 | [1,0,0,0,0,1], 186 | [1,1,1,1,1,1], 187 | [1,0,0,0,0,1], 188 | [1,0,0,0,0,1], 189 | [1,0,0,0,0,1], 190 | ] 191 | self.run(Letter, color) 192 | 193 | def O(self, color): 194 | Letter = [ 195 | [0,1,1,1,1,0], 196 | [1,0,0,0,0,1], 197 | [1,0,0,0,0,1], 198 | [1,0,0,0,0,1], 199 | [1,0,0,0,0,1], 200 | [1,0,0,0,0,1], 201 | [1,0,0,0,0,1], 202 | [0,1,1,1,1,0], 203 | ] 204 | self.run(Letter, color) 205 | 206 | def P(self, color): 207 | Letter = [ 208 | [1,1,1,1,1,1], 209 | [1,0,0,0,0,1], 210 | [1,0,0,0,0,1], 211 | [1,0,0,0,0,1], 212 | [1,0,0,0,0,1], 213 | [1,0,0,0,0,1], 214 | [1,0,0,0,0,1], 215 | [1,0,0,0,0,1], 216 | ] 217 | self.run(Letter, color) 218 | 219 | def R(self, color): 220 | Letter = [ 221 | [1,1,1,1,1,0], 222 | [1,0,0,0,0,1], 223 | [1,0,0,0,0,1], 224 | [1,0,0,0,0,1], 225 | [1,1,1,1,1,0], 226 | [1,0,0,0,0,0], 227 | [1,0,0,0,0,0], 228 | [1,0,0,0,0,0], 229 | ] 230 | self.run(Letter, color) 231 | 232 | def C(self, color): 233 | Letter = [ 234 | [0,1,1,1,1,1], 235 | [1,0,0,0,0,1], 236 | [1,0,0,0,0,0], 237 | [1,0,0,0,0,0], 238 | [1,0,0,0,0,0], 239 | [1,0,0,0,0,0], 240 | [1,0,0,0,0,1], 241 | [0,1,1,1,1,1], 242 | ] 243 | self.run(Letter, color) 244 | 245 | 246 | def T(self, color): 247 | Letter = [ 248 | [1,1,1,1,1,1], 249 | [1,0,1,1,0,1], 250 | [0,0,1,1,0,0], 251 | [0,0,1,1,0,0], 252 | [0,0,1,1,0,0], 253 | [0,0,1,1,0,0], 254 | [0,0,1,1,0,0], 255 | [0,0,1,1,0,0], 256 | ] 257 | self.run(Letter, color) 258 | 259 | def Y(self, color): 260 | Letter = [ 261 | [1,0,0,0,0,1], 262 | [0,1,0,0,0,1], 263 | [0,1,0,0,1,0], 264 | [0,0,1,0,1,0], 265 | [0,0,1,1,0,0], 266 | [0,0,0,1,0,0], 267 | [0,0,1,0,0,0], 268 | [0,1,1,0,0,0], 269 | ] 270 | self.run(Letter, color) 271 | 272 | def F(self, color): 273 | Letter = [ 274 | [0,1,1,0,1,1,0], 275 | [1,0,0,1,0,0,1], 276 | [1,0,0,1,0,0,1], 277 | [1,0,0,1,0,0,1], 278 | [1,1,0,1,0,1,1], 279 | [0,1,1,1,1,1,0], 280 | [0,0,0,1,0,0,0], 281 | [0,0,0,1,0,0,0], 282 | ] 283 | self.run(Letter, color) 284 | 285 | def X(self, color): 286 | Letter = [ 287 | [1,0,0,0,0,1], 288 | [0,1,0,0,1,0], 289 | [0,1,0,0,1,0], 290 | [0,0,1,1,0,0], 291 | [0,0,1,1,0,0], 292 | [0,1,0,0,1,0], 293 | [0,1,0,0,1,0], 294 | [1,0,0,0,0,1], 295 | ] 296 | self.run(Letter, color) 297 | 298 | def Ca(self, color): 299 | Letter = [ 300 | [0,0,0,0,0,0], 301 | [1,0,0,0,1,0], 302 | [1,0,0,0,1,0], 303 | [1,0,0,0,1,0], 304 | [1,0,0,0,1,0], 305 | [1,0,0,0,1,0], 306 | [0,1,1,1,1,1], 307 | [0,0,0,0,0,1], 308 | ] 309 | self.run(Letter, color) 310 | 311 | def Ch(self, color): 312 | Letter = [ 313 | [1,0,0,0,0,1], 314 | [1,0,0,0,0,1], 315 | [1,0,0,0,0,1], 316 | [1,0,0,0,0,1], 317 | [0,1,1,1,1,1], 318 | [0,0,0,0,0,1], 319 | [0,0,0,0,0,1], 320 | [0,0,0,0,0,1], 321 | ] 322 | self.run(Letter, color) 323 | 324 | def Sh(self, color): 325 | Letter = [ 326 | [1,0,0,0,0,0,1], 327 | [1,0,0,1,0,0,1], 328 | [1,0,0,1,0,0,1], 329 | [1,0,0,1,0,0,1], 330 | [1,0,0,1,0,0,1], 331 | [1,0,0,1,0,0,1], 332 | [1,0,0,1,0,0,1], 333 | [1,1,1,1,1,1,1], 334 | ] 335 | self.run(Letter, color) 336 | 337 | def She(self, color): 338 | Letter = [ 339 | [0,0,0,0,0,0,0], 340 | [1,0,0,1,0,1,0], 341 | [1,0,0,1,0,1,0], 342 | [1,0,0,1,0,1,0], 343 | [1,0,0,1,0,1,0], 344 | [1,0,0,1,0,1,0], 345 | [1,1,1,1,1,1,1], 346 | [0,0,0,0,0,0,1], 347 | ] 348 | self.run(Letter, color) 349 | 350 | def TV(self, color): 351 | Letter = [ 352 | [1,1,0,0,0,0], 353 | [0,1,0,0,0,0], 354 | [0,1,0,0,0,0], 355 | [0,1,0,0,0,0], 356 | [0,1,1,1,1,0], 357 | [0,1,0,0,0,1], 358 | [0,1,0,0,0,1], 359 | [0,1,1,1,1,0], 360 | ] 361 | self.run(Letter, color) 362 | 363 | def Yu(self, color): 364 | Letter = [ 365 | [1,0,0,0,0,0,1], 366 | [1,0,0,0,0,0,1], 367 | [1,0,0,0,0,0,1], 368 | [1,0,0,0,0,0,1], 369 | [1,1,1,1,0,0,1], 370 | [1,0,0,0,1,0,1], 371 | [1,0,0,0,1,0,1], 372 | [0,1,1,1,0,0,1], 373 | ] 374 | self.run(Letter, color) 375 | 376 | def Mi(self, color): 377 | Letter = [ 378 | [1,0,0,0,0,0], 379 | [1,0,0,0,0,0], 380 | [1,0,0,0,0,0], 381 | [1,0,0,0,0,0], 382 | [1,1,1,1,1,0], 383 | [1,0,0,0,0,1], 384 | [1,0,0,0,0,1], 385 | [0,1,1,1,1,0], 386 | ] 387 | self.run(Letter, color) 388 | 389 | def Ea(self, color): 390 | Letter = [ 391 | [1,1,1,1,1,0], 392 | [1,0,0,0,0,1], 393 | [0,0,0,0,0,1], 394 | [0,1,1,1,1,1], 395 | [0,0,0,0,0,1], 396 | [0,0,0,0,0,1], 397 | [1,0,0,0,0,1], 398 | [1,1,1,1,1,0], 399 | ] 400 | self.run(Letter, color) 401 | 402 | def You(self, color): 403 | Letter = [ 404 | [1,0,0,1,1,1,0], 405 | [1,0,1,0,0,0,1], 406 | [1,0,1,0,0,0,1], 407 | [1,0,1,0,0,0,1], 408 | [1,1,1,0,0,0,1], 409 | [1,0,1,0,0,0,1], 410 | [1,0,1,0,0,0,1], 411 | [1,0,0,1,1,1,0], 412 | ] 413 | self.run(Letter, color) 414 | 415 | def Ia(self, color): 416 | Letter = [ 417 | [0,1,1,1,1,0], 418 | [1,0,0,0,0,1], 419 | [1,0,0,0,0,1], 420 | [0,1,1,1,1,1], 421 | [0,0,0,1,0,1], 422 | [0,0,1,0,0,1], 423 | [0,1,0,0,0,1], 424 | [1,0,0,0,0,1], 425 | ] 426 | self.run(Letter, color) 427 | 428 | def Space(self, color): 429 | Letter = [ 430 | [0,0,0,0,0,0,0], 431 | [0,0,0,0,0,0,0], 432 | [0,0,0,0,0,0,0], 433 | [0,0,0,0,0,0,0], 434 | [0,0,0,0,0,0,0], 435 | [0,0,0,0,0,0,0], 436 | [0,0,0,0,0,0,0], 437 | [0,0,0,0,0,0,0], 438 | ] 439 | self.run(Letter, color) 440 | 441 | 442 | def run(self, Letter, color): 443 | for j in range(len(Letter)): 444 | for i in range(len(Letter[0])): 445 | if Letter[j][i]==1: 446 | craft.setBlock(self.x+i, self.y-j, self.z, color) 447 | else: #elif n[j][i]==0: 448 | craft.setBlock(self.x+i, self.y-j, self.z,0) 449 | 450 | x = cor.x + 1 451 | y = cor.y + 8 452 | z = cor.z 453 | Byk = alpha(x,y,z) 454 | 455 | color =(35,0) 456 | #Byk.A(color) 457 | 458 | # словарь русского алфавита 459 | '''Alpha = {"А": Byk.A(color), "Б": Byk.B(color), "В": Byk.V(color), "Г":Byk.G(color), "Д": Byk.D(color), "Е": Byk.E(color), 460 | "Ж":Byk.J(color) , "З": Byk.Z(color), "И": Byk.I(color), "Й": Byk.Ii(color), "К": Byk.K(color), "Л":Byk.L(color), 461 | "М": Byk.M(color), "Н": Byk.N(color), "О": Byk.O(color), "П": Byk.P(color), "Р": Byk.R(color), "С": Byk.C(color), 462 | "Т": Byk.T(color), "У": Byk.Y(color), "Ф": Byk.F(color) , "Х": Byk.X(color) , "Ц": Byk.Ca(color), "Ч": Byk.Ch(color), 463 | "Ш": Byk.Sh(color), "Щ": Byk.She(color), "Ъ": Byk.TV(color), "Ы": Byk.Yu(color), "Ь": Byk.Mi(color), "Э": Byk.Ea(color), 464 | "Ю": Byk.You(color), "Я": Byk.Ia(color)}''' 465 | 466 | Alpha1 = ("А", "Б", "В", "Г", "Д", "Е", "Ж", "З", "И", "Й", "К", "Л","М", "Н", "О", "П", "Р", "С","Т", "У", "Ф", "Х", 467 | "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э","Ю", "Я") 468 | 469 | Alpha2 = (Byk.A(color), Byk.B(color), Byk.V(color), Byk.G(color), Byk.D(color), Byk.E(color), 470 | Byk.J(color), Byk.Z(color), Byk.I(color), Byk.Ii(color), Byk.K(color), Byk.L(color), Byk.M(color), Byk.N(color), 471 | Byk.O(color), Byk.P(color), Byk.R(color), Byk.C(color), Byk.T(color), Byk.Y(color), Byk.F(color), Byk.X(color), 472 | Byk.Ca(color), Byk.Ch(color), Byk.Sh(color), Byk.She(color), Byk.TV(color), Byk.Yu(color), Byk.Mi(color), Byk.Ea(color), 473 | Byk.You(color), Byk.Ia(color)) 474 | 475 | #Alpha["А"]() 476 | #Alpha.get("А") 477 | 478 | 479 | # Ввод текста 480 | Text = input() 481 | 482 | for i in Text: 483 | ind = Alpha1.index(i) 484 | Alpha2[ind] 485 | x=x+9 486 | y = cor.y + 8 487 | z = cor.z 488 | Byk = alpha(x,y,z) 489 | 490 | 491 | 492 | # 42 IRON_BLOCK ЖЕЛЕЗНЫЙ БЛОК 493 | # 7 BEDROCK 494 | # 5 WOOD_PLANKS ДЕРЕВЯННЫЕ ДОСКИ 495 | # 3 DIRT ЗЕМЛЯ 496 | # 35 WOOL ШЕРСТЬ 497 | # 45 BRICK_BLOCK кИРПИЧНЫЙ БЛОК 498 | # 57 DIAMOND_BLOCK АЛМАЗНЫЙ БЛОК 499 | 500 | 501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 509 | 510 | 511 | -------------------------------------------------------------------------------- /Alphabet1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() # получение 8 | 9 | class alpha: 10 | def __init__(self, x,y,z): 11 | self.x = x 12 | self.y = y 13 | self.z = z 14 | def A(self, color): 15 | Letter = [ 16 | [0,0,0,0,0,1], 17 | [0,0,0,0,1,1], 18 | [0,0,0,1,0,1], 19 | [0,0,1,0,0,1], 20 | [0,1,1,1,1,1], 21 | [0,1,0,0,0,1], 22 | [1,0,0,0,0,1], 23 | [1,0,0,0,0,1], 24 | ] 25 | self.run(Letter, color) 26 | 27 | def B(self, color): 28 | Letter = [ 29 | [1,1,1,1,1,1], 30 | [1,0,0,0,0,0], 31 | [1,0,0,0,0,0], 32 | [1,1,1,1,1,0], 33 | [1,0,0,0,0,1], 34 | [1,0,0,0,0,1], 35 | [1,0,0,0,0,1], 36 | [1,1,1,1,1,1], 37 | 38 | ] 39 | self.run(Letter, color) 40 | 41 | def V(self, color): 42 | Letter = [ 43 | [1,1,1,1,0,0], 44 | [1,0,0,0,1,0], 45 | [1,0,0,0,1,0], 46 | [1,1,1,1,1,0], 47 | [1,0,0,0,0,1], 48 | [1,0,0,0,0,1], 49 | [1,0,0,0,0,1], 50 | [1,1,1,1,1,0], 51 | ] 52 | self.run(Letter, color) 53 | 54 | def G(self, color): 55 | Letter = [ 56 | [1,1,1,1,1,1], 57 | [1,0,0,0,0,1], 58 | [1,0,0,0,0,0], 59 | [1,0,0,0,0,0], 60 | [1,0,0,0,0,0], 61 | [1,0,0,0,0,0], 62 | [1,0,0,0,0,0], 63 | [1,0,0,0,0,0], 64 | ] 65 | self.run(Letter, color) 66 | 67 | def D(self, color): 68 | Letter = [ 69 | [0,1,1,1,1,0], 70 | [0,1,0,0,1,0], 71 | [0,1,0,0,1,0], 72 | [0,1,0,0,1,0], 73 | [0,1,0,0,1,0], 74 | [1,1,1,1,1,1], 75 | [1,0,0,0,0,1], 76 | [1,0,0,0,0,1], 77 | ] 78 | self.run(Letter, color) 79 | 80 | def E(self, color): 81 | Letter = [ 82 | [1,1,1,1,1,1], 83 | [1,0,0,0,0,0], 84 | [1,0,0,0,0,0], 85 | [1,1,1,1,1,0], 86 | [1,0,0,0,0,0], 87 | [1,0,0,0,0,0], 88 | [1,0,0,0,0,0], 89 | [1,1,1,1,1,1], 90 | ] 91 | self.run(Letter, color) 92 | 93 | def J(self, color): 94 | Letter = [ 95 | [1,0,0,1,0,0,1], 96 | [1,0,0,1,0,0,1], 97 | [0,1,0,1,0,1,0], 98 | [0,1,1,1,1,1,0], 99 | [0,0,1,1,1,0,0], 100 | [0,1,0,1,0,1,0], 101 | [0,1,0,1,0,1,0], 102 | [1,0,0,1,0,0,1], 103 | ] 104 | self.run(Letter, color) 105 | 106 | def Z(self, color): 107 | Letter = [ 108 | [1,1,1,1,1,1], 109 | [1,0,0,0,0,1], 110 | [0,0,0,0,0,1], 111 | [0,1,1,1,1,1], 112 | [0,0,0,0,0,1], 113 | [0,0,0,0,0,1], 114 | [1,0,0,0,0,1], 115 | [1,1,1,1,1,1], 116 | ] 117 | self.run(Letter, color) 118 | 119 | def I(self, color): 120 | Letter = [ 121 | [1,0,0,0,1,1], 122 | [1,0,0,0,1,1], 123 | [1,0,0,1,0,1], 124 | [1,0,0,1,0,1], 125 | [1,0,1,0,0,1], 126 | [1,0,1,0,0,1], 127 | [1,1,0,0,0,1], 128 | [1,1,0,0,0,1], 129 | ] 130 | self.run(Letter, color) 131 | 132 | def Ii(self, color): 133 | Letter = [ 134 | [0,0,1,1,0,0], 135 | [1,0,0,0,0,1], 136 | [1,0,0,0,1,1], 137 | [1,0,0,1,0,1], 138 | [1,0,0,1,0,1], 139 | [1,0,1,0,0,1], 140 | [1,1,0,0,0,1], 141 | [1,1,0,0,0,1], 142 | ] 143 | self.run(Letter, color) 144 | 145 | def K(self, color): 146 | Letter = [ 147 | [1,0,0,0,1,1], 148 | [1,0,0,1,0,0], 149 | [1,0,1,0,0,0], 150 | [1,1,0,0,0,0], 151 | [1,0,1,0,0,0], 152 | [1,0,0,1,0,0], 153 | [1,0,0,0,1,0], 154 | [1,0,0,0,0,1], 155 | ] 156 | self.run(Letter, color) 157 | 158 | def L(self, color): 159 | Letter = [ 160 | [0,0,0,1,1,1], 161 | [0,0,0,1,0,1], 162 | [0,0,1,0,0,1], 163 | [0,0,1,0,0,1], 164 | [0,1,0,0,0,1], 165 | [0,1,0,0,0,1], 166 | [1,0,0,0,0,1], 167 | [1,0,0,0,0,1], 168 | ] 169 | self.run(Letter, color) 170 | 171 | 172 | def M(self, color): 173 | Letter = [ 174 | [1,1,0,0,0,1,1], 175 | [1,1,0,0,0,1,1], 176 | [1,0,1,0,1,0,1], 177 | [1,0,1,0,1,0,1], 178 | [1,0,0,1,0,0,1], 179 | [1,0,0,1,0,0,1], 180 | [1,0,0,0,0,0,1], 181 | [1,0,0,0,0,0,1], 182 | ] 183 | self.run(Letter, color) 184 | 185 | def N(self, color): 186 | Letter = [ 187 | [1,0,0,0,0,1], 188 | [1,0,0,0,0,1], 189 | [1,0,0,0,0,1], 190 | [1,0,0,0,0,1], 191 | [1,1,1,1,1,1], 192 | [1,0,0,0,0,1], 193 | [1,0,0,0,0,1], 194 | [1,0,0,0,0,1], 195 | ] 196 | self.run(Letter, color) 197 | 198 | def O(self, color): 199 | Letter = [ 200 | [0,1,1,1,1,0], 201 | [1,0,0,0,0,1], 202 | [1,0,0,0,0,1], 203 | [1,0,0,0,0,1], 204 | [1,0,0,0,0,1], 205 | [1,0,0,0,0,1], 206 | [1,0,0,0,0,1], 207 | [0,1,1,1,1,0], 208 | ] 209 | self.run(Letter, color) 210 | 211 | def P(self, color): 212 | Letter = [ 213 | [1,1,1,1,1,1], 214 | [1,0,0,0,0,1], 215 | [1,0,0,0,0,1], 216 | [1,0,0,0,0,1], 217 | [1,0,0,0,0,1], 218 | [1,0,0,0,0,1], 219 | [1,0,0,0,0,1], 220 | [1,0,0,0,0,1], 221 | ] 222 | self.run(Letter, color) 223 | 224 | def R(self, color): 225 | Letter = [ 226 | [1,1,1,1,1,0], 227 | [1,0,0,0,0,1], 228 | [1,0,0,0,0,1], 229 | [1,0,0,0,0,1], 230 | [1,1,1,1,1,0], 231 | [1,0,0,0,0,0], 232 | [1,0,0,0,0,0], 233 | [1,0,0,0,0,0], 234 | ] 235 | self.run(Letter, color) 236 | 237 | def C(self, color): 238 | Letter = [ 239 | [0,1,1,1,1,1], 240 | [1,0,0,0,0,1], 241 | [1,0,0,0,0,0], 242 | [1,0,0,0,0,0], 243 | [1,0,0,0,0,0], 244 | [1,0,0,0,0,0], 245 | [1,0,0,0,0,1], 246 | [0,1,1,1,1,1], 247 | ] 248 | self.run(Letter, color) 249 | 250 | 251 | def T(self, color): 252 | Letter = [ 253 | [1,1,1,1,1,1], 254 | [1,0,1,1,0,1], 255 | [0,0,1,1,0,0], 256 | [0,0,1,1,0,0], 257 | [0,0,1,1,0,0], 258 | [0,0,1,1,0,0], 259 | [0,0,1,1,0,0], 260 | [0,0,1,1,0,0], 261 | ] 262 | self.run(Letter, color) 263 | 264 | def Y(self, color): 265 | Letter = [ 266 | [1,0,0,0,0,1], 267 | [0,1,0,0,0,1], 268 | [0,1,0,0,1,0], 269 | [0,0,1,0,1,0], 270 | [0,0,1,1,0,0], 271 | [0,0,0,1,0,0], 272 | [0,0,1,0,0,0], 273 | [0,1,1,0,0,0], 274 | ] 275 | self.run(Letter, color) 276 | 277 | def F(self, color): 278 | Letter = [ 279 | [0,1,1,0,1,1,0], 280 | [1,0,0,1,0,0,1], 281 | [1,0,0,1,0,0,1], 282 | [1,0,0,1,0,0,1], 283 | [1,1,0,1,0,1,1], 284 | [0,1,1,1,1,1,0], 285 | [0,0,0,1,0,0,0], 286 | [0,0,0,1,0,0,0], 287 | ] 288 | self.run(Letter, color) 289 | 290 | def X(self, color): 291 | Letter = [ 292 | [1,0,0,0,0,1], 293 | [0,1,0,0,1,0], 294 | [0,1,0,0,1,0], 295 | [0,0,1,1,0,0], 296 | [0,0,1,1,0,0], 297 | [0,1,0,0,1,0], 298 | [0,1,0,0,1,0], 299 | [1,0,0,0,0,1], 300 | ] 301 | self.run(Letter, color) 302 | 303 | def Ca(self, color): 304 | Letter = [ 305 | [0,0,0,0,0,0], 306 | [1,0,0,0,1,0], 307 | [1,0,0,0,1,0], 308 | [1,0,0,0,1,0], 309 | [1,0,0,0,1,0], 310 | [1,0,0,0,1,0], 311 | [0,1,1,1,1,1], 312 | [0,0,0,0,0,1], 313 | ] 314 | self.run(Letter, color) 315 | 316 | def Ch(self, color): 317 | Letter = [ 318 | [1,0,0,0,0,1], 319 | [1,0,0,0,0,1], 320 | [1,0,0,0,0,1], 321 | [1,0,0,0,0,1], 322 | [0,1,1,1,1,1], 323 | [0,0,0,0,0,1], 324 | [0,0,0,0,0,1], 325 | [0,0,0,0,0,1], 326 | ] 327 | self.run(Letter, color) 328 | 329 | def Sh(self, color): 330 | Letter = [ 331 | [1,0,0,0,0,0,1], 332 | [1,0,0,1,0,0,1], 333 | [1,0,0,1,0,0,1], 334 | [1,0,0,1,0,0,1], 335 | [1,0,0,1,0,0,1], 336 | [1,0,0,1,0,0,1], 337 | [1,0,0,1,0,0,1], 338 | [1,1,1,1,1,1,1], 339 | ] 340 | self.run(Letter, color) 341 | 342 | def She(self, color): 343 | Letter = [ 344 | [0,0,0,0,0,0,0], 345 | [1,0,0,1,0,1,0], 346 | [1,0,0,1,0,1,0], 347 | [1,0,0,1,0,1,0], 348 | [1,0,0,1,0,1,0], 349 | [1,0,0,1,0,1,0], 350 | [1,1,1,1,1,1,1], 351 | [0,0,0,0,0,0,1], 352 | ] 353 | self.run(Letter, color) 354 | 355 | def TV(self, color): 356 | Letter = [ 357 | [1,1,0,0,0,0], 358 | [0,1,0,0,0,0], 359 | [0,1,0,0,0,0], 360 | [0,1,0,0,0,0], 361 | [0,1,1,1,1,0], 362 | [0,1,0,0,0,1], 363 | [0,1,0,0,0,1], 364 | [0,1,1,1,1,0], 365 | ] 366 | self.run(Letter, color) 367 | 368 | def Yu(self, color): 369 | Letter = [ 370 | [1,0,0,0,0,0,1], 371 | [1,0,0,0,0,0,1], 372 | [1,0,0,0,0,0,1], 373 | [1,0,0,0,0,0,1], 374 | [1,1,1,1,0,0,1], 375 | [1,0,0,0,1,0,1], 376 | [1,0,0,0,1,0,1], 377 | [0,1,1,1,0,0,1], 378 | ] 379 | self.run(Letter, color) 380 | 381 | def Mi(self, color): 382 | Letter = [ 383 | [1,0,0,0,0,0], 384 | [1,0,0,0,0,0], 385 | [1,0,0,0,0,0], 386 | [1,0,0,0,0,0], 387 | [1,1,1,1,1,0], 388 | [1,0,0,0,0,1], 389 | [1,0,0,0,0,1], 390 | [0,1,1,1,1,0], 391 | ] 392 | self.run(Letter, color) 393 | 394 | def Ea(self, color): 395 | Letter = [ 396 | [1,1,1,1,1,0], 397 | [1,0,0,0,0,1], 398 | [0,0,0,0,0,1], 399 | [0,1,1,1,1,1], 400 | [0,0,0,0,0,1], 401 | [0,0,0,0,0,1], 402 | [1,0,0,0,0,1], 403 | [1,1,1,1,1,0], 404 | ] 405 | self.run(Letter, color) 406 | 407 | def You(self, color): 408 | Letter = [ 409 | [1,0,0,1,1,1,0], 410 | [1,0,1,0,0,0,1], 411 | [1,0,1,0,0,0,1], 412 | [1,0,1,0,0,0,1], 413 | [1,1,1,0,0,0,1], 414 | [1,0,1,0,0,0,1], 415 | [1,0,1,0,0,0,1], 416 | [1,0,0,1,1,1,0], 417 | ] 418 | self.run(Letter, color) 419 | 420 | def Ia(self, color): 421 | Letter = [ 422 | [0,1,1,1,1,0], 423 | [1,0,0,0,0,1], 424 | [1,0,0,0,0,1], 425 | [0,1,1,1,1,1], 426 | [0,0,0,1,0,1], 427 | [0,0,1,0,0,1], 428 | [0,1,0,0,0,1], 429 | [1,0,0,0,0,1], 430 | ] 431 | self.run(Letter, color) 432 | 433 | def Space(self, color): 434 | Letter = [ 435 | [0,0,0,0,0,0,0], 436 | [0,0,0,0,0,0,0], 437 | [0,0,0,0,0,0,0], 438 | [0,0,0,0,0,0,0], 439 | [0,0,0,0,0,0,0], 440 | [0,0,0,0,0,0,0], 441 | [0,0,0,0,0,0,0], 442 | [0,0,0,0,0,0,0], 443 | ] 444 | self.run(Letter, color) 445 | 446 | 447 | def run(self, Letter, color): 448 | for j in range(len(Letter)): 449 | for i in range(len(Letter[0])): 450 | if Letter[j][i]==1: 451 | craft.setBlock(self.x+i, self.y-j, self.z, color) 452 | else: #elif n[j][i]==0: 453 | craft.setBlock(self.x+i, self.y-j, self.z,0) 454 | 455 | x = cor.x + 1 456 | y = cor.y + 8 457 | z = cor.z 458 | Byk = alpha(x,y,z) 459 | 460 | #color =(35,0) 461 | #Byk.A(color) 462 | 463 | # словарь русского алфавита 464 | Alpha = {"А": 'Byk.A(color)', "Б": 'Byk.B(color)', "В": 'Byk.V(color)', "Г":'Byk.G(color)', "Д": 'Byk.D(color)', "Е": 'Byk.E(color)', 465 | "Ж":'Byk.J(color)' , "З": 'Byk.Z(color)', "И": 'Byk.I(color)', "Й": 'Byk.Ii(color)', "К": 'Byk.K(color)', "Л":'Byk.L(color)', 466 | "М": 'Byk.M(color)', "Н": 'Byk.N(color)', "О": 'Byk.O(color)', "П": 'Byk.P(color)', "Р": 'Byk.R(color)', "С": 'Byk.C(color)', 467 | "Т": 'Byk.T(color)', "У": 'Byk.Y(color)', "Ф": 'Byk.F(color)' , "Х": 'Byk.X(color)' , "Ц": 'Byk.Ca(color)', "Ч": 'Byk.Ch(color)', 468 | "Ш": 'Byk.Sh(color)', "Щ": 'Byk.She(color)', "Ъ": 'Byk.TV(color)', "Ы": 'Byk.Yu(color)', "Ь": 'Byk.Mi(color)', "Э": 'Byk.Ea(color)', 469 | "Ю": 'Byk.You(color)', "Я": 'Byk.Ia(color)', " ": 'Byk.Space(color)'} 470 | 471 | Alpha1 = ("А", "Б", "В", "Г", "Д", "Е", "Ж", "З", "И", "Й", "К", "Л","М", "Н", "О", "П", "Р", "С","Т", "У", "Ф", "Х", 472 | "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э","Ю", "Я") 473 | # Ввод текста 474 | 475 | 476 | Text = input().upper() 477 | col = int(input("Выберите цвет шерсти")) 478 | color = (35, col) 479 | #Text = Text0.get(1.0, tkinter.END) 480 | print(len(Text)) 481 | column = len(Text)//15 482 | Byk.y += column*9 + 9 483 | n = False 484 | for i, s in enumerate(Text): 485 | print(i) 486 | if i%15==0 and s==" ": 487 | Byk.y -= 9 488 | Byk.x = cor.x + 1 489 | 490 | if i%15==0 and s!=" ": 491 | n = True 492 | if n == True and s== " ": 493 | Byk.y -= 9 494 | Byk.x = cor.x + 1 495 | n = False 496 | exec(Alpha.get(s)) 497 | Byk.x +=9 498 | 499 | 500 | # 42 IRON_BLOCK ЖЕЛЕЗНЫЙ БЛОК 501 | # 7 BEDROCK 502 | # 5 WOOD_PLANKS ДЕРЕВЯННЫЕ ДОСКИ 503 | # 3 DIRT ЗЕМЛЯ 504 | # 35 WOOL ШЕРСТЬ 505 | # 45 BRICK_BLOCK кИРПИЧНЫЙ БЛОК 506 | # 57 DIAMOND_BLOCK АЛМАЗНЫЙ БЛОК 507 | 508 | 509 | 510 | 511 | 512 | 513 | 514 | 515 | 516 | 517 | 518 | 519 | -------------------------------------------------------------------------------- /Game1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | import random 5 | import time 6 | 7 | craft = minecraft.Minecraft.create() 8 | 9 | cor = craft.player.getTilePos() 10 | x=cor.x+1 11 | y=cor.y 12 | z=cor.z 13 | 14 | # Создаём ограниченную область из кирпича 15 | craft.setBlocks(x, y,z, x+15, y, z+10, 45) 16 | craft.setBlocks(x+1, y,z+1, x+14, y, z+9, 0) 17 | 18 | # Создаём 10 лазуритов в случайном порядке расположения в области 19 | for i in range(10): 20 | x1=x+random.randint(1, 14) 21 | z1=z+random.randint(1,9) 22 | craft.setBlock(x1, y,z1, 22) 23 | 24 | t =0 25 | l =0 26 | while True: 27 | cor = craft.player.getTilePos() 28 | if cor.x >=x and cor.x<=x+15 and cor.z >=z and cor.z<=z+10: 29 | craft.postToChat("До завершения осталось "+ " t = "+ str(10 - t)) 30 | t=t+0.1 31 | else: 32 | t=0 33 | if t>=15: 34 | craft.postToChat("Вы проиграли") 35 | break 36 | 37 | 38 | if craft.getBlock(cor.x+1, cor.y, cor.z)==22: 39 | craft.setBlock(cor.x+1, cor.y, cor.z, 0) 40 | l=l+1 41 | craft.postToChat("Вы собрали лазурита "+ " l = "+ str(l)) 42 | 43 | elif craft.getBlock(cor.x-1, cor.y, cor.z)==22: 44 | craft.setBlock(cor.x-1, cor.y, cor.z, 0) 45 | l=l+1 46 | craft.postToChat("Вы собрали лазурита "+ " l = "+ str(l)) 47 | 48 | elif craft.getBlock(cor.x, cor.y, cor.z-1)==22: 49 | craft.setBlock(cor.x, cor.y, cor.z-1, 0) 50 | l=l+1 51 | craft.postToChat("Вы собрали лазурита "+ " l = "+ str(l)) 52 | 53 | elif craft.getBlock(cor.x-1, cor.y, cor.z+1)==22: 54 | craft.setBlock(cor.x, cor.y, cor.z+1, 0) 55 | l=l+1 56 | craft.postToChat("Вы собрали лазурита "+ " l = "+ str(l)) 57 | 58 | time.sleep(0.3) 59 | 60 | if l>=10: 61 | craft.setBlocks(x-20, y,z-20, x+20, y, z+20, 0) 62 | craft.postToChat("Вы перешли на второй уровень ") 63 | break 64 | 65 | cor = craft.player.getTilePos() 66 | x=cor.x+1 67 | y=cor.y 68 | z=cor.z 69 | craft.setBlocks(x-2, y,z, x+5, y, z+10, 5) 70 | craft.setBlocks(x+5, y+1,z, x+7, y+1, z+10, 5) 71 | craft.setBlocks(x+10, y+1,z, x+15, y+1, z+8, 5) 72 | craft.setBlocks(x+15, y+2,z+3, x+25, y+2, z+5, 5) 73 | craft.setBlocks(x+25, y+2,z+3, x+25, y+2, z+20, 5) 74 | craft.setBlocks(x+25, y+3,z+20, x+35, y+3, z+20, 5) 75 | 76 | for i in range (20): 77 | craft.setBlocks(x+35, y+3+i,z+20+i, x+35, y+3+i, z+25+i, 5) 78 | craft.setBlocks(x+35, y+3+i,z+23+i, x+35, y+3+i, z+24+i, 0) 79 | z=z+3 80 | #y=y-1 81 | for i in range (20): 82 | craft.setBlocks(x+35+i, y+23+i,z+44, x+36+i, y+23+i, z+44, 5) 83 | 84 | craft.setBlocks(x+55, y+43,z+44, x+61, y+43, z+50, 5) 85 | craft.setBlocks(x+58, y+44,z+47, x+59, y+44, z+48, 41) 86 | while True: 87 | cor = craft.player.getTilePos() 88 | if craft.getBlock(cor.x, cor.y-1, cor.z)==41: 89 | x=cor.x-58 90 | y = cor.y-44 91 | z= cor.z - 48 92 | craft.player.setTilePos(cor.x-58, cor.y-44, cor.z - 48) 93 | craft.postToChat("Вы перешли на третий уровень ") 94 | craft.setBlocks(x-40, y,z-65, x+60, y+50, z+65, 0) 95 | break 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | -------------------------------------------------------------------------------- /Game2.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | import random 5 | import time 6 | 7 | craft = minecraft.Minecraft.create() 8 | 9 | 10 | cor = craft.player.getTilePos() 11 | x=cor.x+1 12 | y=cor.y 13 | z=cor.z 14 | craft.setBlocks(x-2, y,z, x+5, y, z+10, 5) 15 | craft.setBlocks(x+5, y+1,z, x+7, y+1, z+10, 5) 16 | craft.setBlocks(x+10, y+1,z, x+15, y+1, z+8, 5) 17 | craft.setBlocks(x+15, y+2,z+3, x+25, y+2, z+5, 5) 18 | craft.setBlocks(x+25, y+2,z+3, x+25, y+2, z+20, 5) 19 | craft.setBlocks(x+25, y+3,z+20, x+35, y+3, z+20, 5) 20 | 21 | for i in range (20): 22 | craft.setBlocks(x+35, y+3+i,z+20+i, x+35, y+3+i, z+25+i, 5) 23 | craft.setBlocks(x+35, y+3+i,z+23+i, x+35, y+3+i, z+24+i, 0) 24 | z=z+3 25 | 26 | for i in range (20): 27 | craft.setBlocks(x+35+i, y+23+i,z+44, x+36+i, y+23+i, z+44, 5) 28 | 29 | craft.setBlocks(x+55, y+43,z+44, x+61, y+43, z+50, 5) 30 | craft.setBlocks(x+58, y+44,z+47, x+59, y+44, z+48, 41) 31 | while True: 32 | cor = craft.player.getTilePos() 33 | if craft.getBlock(cor.x, cor.y-1, cor.z)==41: 34 | x=cor.x-58 35 | y = cor.y-44 36 | z= cor.z - 48 37 | craft.player.setTilePos(cor.x-58, cor.y-44, cor.z - 48) 38 | craft.postToChat("Вы перешли на третий уровень ") 39 | craft.setBlocks(x-40, y,z-65, x+60, y+50, z+65, 0) 40 | break 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /Game3.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import random 4 | import time 5 | 6 | craft = minecraft.Minecraft.create() 7 | cor = craft.player.getTilePos() 8 | x=cor.x+1 9 | y=cor.y 10 | z=cor.z 11 | 12 | def avto1(x,y,z): 13 | 14 | craft.setBlocks(x, y, z, x+1, y+2, z+4, 5) 15 | craft.setBlocks(x, y+1, z, x+1, y+2, z, 0) 16 | craft.setBlocks(x, y+1, z+2, x+1, y+1, z+2, 0) 17 | craft.setBlocks(x, y+1, z+4, x+1, y+2, z+4, 0) 18 | 19 | def avto2(x,y,z): 20 | 21 | craft.setBlocks(x, y, z, x+4, y+2, z+1, 5) 22 | craft.setBlocks(x, y+1, z, x, y+2, z+1, 0) 23 | craft.setBlocks(x+2, y+1, z, x+2, y+1, z+1, 0) 24 | craft.setBlocks(x+4, y+1, z, x+4, y+2, z+1, 0) 25 | 26 | def dom_N(x, y, z): 27 | sx = x +2+ 5/2 # центр по X 28 | 29 | sy = y + 5/2 # центр по Y 30 | 31 | sz = z+5/2 # центр по Z 32 | 33 | craft.setBlocks(x+1, y, z, x+6, y+5, z+5, block.GOLD_BLOCK.id) 34 | 35 | craft.setBlocks(x+2, y+1, z+1, x+5, y+4, z+4, block.AIR.id) 36 | 37 | craft.setBlocks(sx-1, y+1, z, sx, y+2, z, block.AIR.id) 38 | 39 | craft.setBlocks(sx+1, sy+1, z, sx+1, sy+2, z, block.GLASS.id) 40 | 41 | craft.setBlocks(sx-2, sy+1, z, sx-2, sy+2, z, block.GLASS.id) 42 | 43 | craft.setBlocks(x+1, sy+1, sz+2, x+1, sy+2, sz+2, block.GLASS.id) 44 | 45 | craft.setBlocks(x+1, sy+1, sz-1, x+1, sy+2, sz-1, block.GLASS.id) 46 | 47 | craft.setBlocks(x+6, sy+1, sz+2, x+6, sy+2, sz+2, block.GLASS.id) 48 | 49 | craft.setBlocks(x+6, sy+1, sz-1, x+6, sy+2, sz-1, block.GLASS.id) 50 | 51 | craft.setBlocks(x+1, y+6, z, x+6, y+6, z+5, block.IRON_BLOCK.id) 52 | craft.setBlocks(x+2, y+7, z, x+5, y+7, z+5, block.IRON_BLOCK.id) 53 | craft.setBlocks(x+3, y+8, z, x+4, y+8, z+5, block.IRON_BLOCK.id) 54 | 55 | 56 | craft.setBlocks(cor.x-2, cor.y, cor.z-2, cor.x+22, cor.y+3, cor.z+76, block.IRON_BLOCK.id) 57 | craft.setBlocks(cor.x-1, cor.y, cor.z-1, cor.x+21, cor.y+3, cor.z+75, 0) 58 | craft.setBlocks(cor.x-1, cor.y-1, cor.z+50, cor.x+21, cor.y-1, cor.z+51, 10) 59 | 60 | # Создаём пьедестал к кубку 61 | craft.setBlocks(cor.x+5, cor.y+1, cor.z+70, cor.x+15, cor.y+1, cor.z+75, 57) 62 | 63 | # Создаём кубок 64 | craft.setBlocks(cor.x+8, cor.y+2, cor.z+72, cor.x+12, cor.y+2, cor.z+72, 89) 65 | craft.setBlocks(cor.x+10, cor.y+2, cor.z+72, cor.x+10, cor.y+4, cor.z+72, 89) 66 | craft.setBlocks(cor.x+8, cor.y+5, cor.z+72, cor.x+12, cor.y+5, cor.z+72, 89) 67 | craft.setBlocks(cor.x+7, cor.y+6, cor.z+72, cor.x+13, cor.y+6, cor.z+72, 89) 68 | craft.setBlocks(cor.x+6, cor.y+7, cor.z+72, cor.x+14, cor.y+7, cor.z+72, 89) 69 | craft.setBlocks(cor.x+6, cor.y+8, cor.z+72, cor.x+14, cor.y+8, cor.z+72, 89) 70 | craft.setBlocks(cor.x+6, cor.y+9, cor.z+72, cor.x+14, cor.y+9, cor.z+72, 89) 71 | 72 | 73 | z=z+5 74 | z1=cor.z+20 75 | z2 = cor.z+40 76 | x1 = cor.x+15 77 | x11 = cor.x +5 78 | x22 = cor.x+10 79 | z11 = cor.z+10 80 | z22 = cor.z+30 81 | y11 =cor.y +12 82 | y22 = cor.y 83 | 84 | x33 = cor.x 85 | z33 = cor.z 86 | while True: 87 | cor = craft.player.getTilePos() 88 | for i in range(8): 89 | cor = craft.player.getPos() 90 | for i in range(5): 91 | if craft.getBlock(cor.x-i, cor.y, cor.z)==5 or craft.getBlock(cor.x+i, cor.y, cor.z)==5: 92 | craft.player.setTilePos(x33, y, z33) 93 | craft.postToChat("Вы проиграли, начните заново") 94 | 95 | if craft.getBlock(cor.x, cor.y-1, cor.z)==11: 96 | craft.player.setTilePos(x33, y, z33) 97 | craft.postToChat("Вы проиграли, начните заново") 98 | 99 | elif craft.getBlock(cor.x-1, cor.y, cor.z)==89 or craft.getBlock(cor.x+1, cor.y, cor.z)==89 or craft.getBlock(cor.x, cor.y, cor.z-1)==89 or craft.getBlock(cor.x, cor.y, cor.z+1)==89: 100 | craft.postToChat("Вы ПОБЕДИЛИ") 101 | for i in range(10): 102 | if craft.getBlock(cor.x, cor.y+i, cor.z)==41: 103 | craft.player.setTilePos(x33, y, z33) 104 | craft.postToChat("Вы проиграли, начните заново") 105 | 106 | avto2(x,y,z) 107 | avto2(x1,y,z1) 108 | avto2(x,y,z2) 109 | 110 | dom_N(x11,y11,z11) 111 | dom_N(x22, y22, z22) 112 | 113 | x=x+2 114 | x1=x1-2 115 | y11 = y11 - 1 116 | y22 = y22 + 1 117 | 118 | time.sleep(0.5) 119 | craft.setBlocks(x-5, y, z, x, y+2, z+1, 0) 120 | craft.setBlocks(x1, y, z1, x1+10, y+2, z1+1, 0) 121 | craft.setBlocks(x-5, y, z2, x, y+2, z2+1, 0) 122 | 123 | craft.setBlocks(x11, y11+10, z11, x11+6, y11, z11+5, 0) 124 | craft.setBlocks(x22, y22-1, z22, x22+6, y22, z22+5, 0) 125 | 126 | 127 | 128 | 129 | 130 | 131 | for i in range(8): 132 | cor = craft.player.getTilePos() 133 | 134 | for i in range(5): 135 | if craft.getBlock(cor.x-i, cor.y, cor.z)==5 or craft.getBlock(cor.x+i, cor.y, cor.z)==5: 136 | craft.player.setTilePos(x33, y, z33) 137 | craft.postToChat("Вы проиграли, начните заново") 138 | 139 | if craft.getBlock(cor.x, cor.y-1, cor.z)==11: 140 | craft.player.setTilePos(x33, y, z33) 141 | craft.postToChat("Вы проиграли, начните заново") 142 | 143 | elif craft.getBlock(cor.x-1, cor.y, cor.z)==89 or craft.getBlock(cor.x+1, cor.y, cor.z)==89 or craft.getBlock(cor.x, cor.y, cor.z-1)==89 or craft.getBlock(cor.x, cor.y, cor.z+1)==89: 144 | craft.postToChat("Вы ПОБЕДИЛИ") 145 | for i in range(10): 146 | if craft.getBlock(cor.x, cor.y+i, cor.z)==41: 147 | craft.player.setTilePos(x33, y, z33) 148 | craft.postToChat("Вы проиграли, начните заново") 149 | 150 | avto2(x,y,z) 151 | avto2(x1,y,z1) 152 | avto2(x,y,z2) 153 | 154 | dom_N(x11,y11,z11) 155 | dom_N(x22, y22, z22) 156 | 157 | x=x-2 158 | x1=x1+2 159 | 160 | y11 = y11 + 1 161 | y22 = y22 - 1 162 | 163 | time.sleep(0.5) 164 | craft.setBlocks(x, y, z, x+10, y+2, z+1, 0) 165 | craft.setBlocks(x1-5, y, z1, x1, y+2, z1+1, 0) 166 | craft.setBlocks(x, y, z2, x+10, y+2, z2+1, 0) 167 | 168 | craft.setBlocks(x11, y11-1, z11, x11+6, y11, z11+5, 0) 169 | craft.setBlocks(x22, y22+10, z22, x22+6, y22, z22+5, 0) 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # python_minecraft 2 | Программы для работы с книгой "Python. Великое программирование в Minecraft" 3 | Каждая программа соответствует главе, в которой изучается особенности программирования. 4 | 5 | Добавил сервер для последней на сегодняшней день версии Minecraft 1.19. Настроен под Python 3.10 и выше 6 | 7 | ПЕРВЫЕ ДВЕ СБОРКИ ДЛЯ PYTHON 3.9.X И НИЖЕ 8 | 9 | Скачать сервер Spigot для minecraft 1.12.2 вы можете, пройдя по ссылке https://yadi.sk/d/GjYg41gtDdZmMw 10 | 11 | Скачать сервер Spigot для minecraft 1.17.1 вы можете, пройдя по ссылке https://disk.yandex.ru/d/FbO-RWa3pw2THw 12 | 13 | 14 | СБОРКИ ПОД PYTHON 3.10.X И ВЫШЕ 15 | 16 | Новая последняя версия сервер Spigot для minecraft 1.21.5 вы можете, пройдя по ссылке https://disk.yandex.ru/d/gXeukVD-hE1clg 17 | 18 | ################# 19 | Старые версии сервера Spigot 20 | ################# 21 | 22 | Скачать сервер Spigot для minecraft 1.12.2 вы можете, пройдя по ссылке https://disk.yandex.ru/d/EQcFnLLAuU_9Zg 23 | 24 | Скачать сервер Spigot для minecraft 1.17.1 вы можете, пройдя по ссылке https://disk.yandex.ru/d/9xhDVtZ_6UhrpA 25 | 26 | Скачать сервер Spigot для minecraft 1.19.1 вы можете, пройдя по ссылке https://disk.yandex.ru/d/i-yUfbAO-Ic8Vg 27 | 28 | Скачать сервер Spigot для minecraft 1.19.2 вы можете, пройдя по ссылке https://disk.yandex.ru/d/Wg681FS0csJlBg 29 | 30 | Скачать сервер Spigot для minecraft 1.20.4 вы можете, пройдя по ссылке https://disk.yandex.ru/d/bbJFZsKn1_OEug 31 | 32 | Скачать сервер Spigot для minecraft 1.21 вы можете, пройдя по ссылке https://disk.yandex.ru/d/49y1Wz3UiP2Ndw 33 | 34 | 35 | 36 | ВАЖНО!!!! 37 | 38 | Для сервера под minecraft 1.12.2 используется Java 8 39 | 40 | Для сервера под minecraft 1.17.1 используется Java 17 41 | 42 | Для сервера под minecraft 1.19 можно использовать Java 17 и выше. 43 | 44 | Для сервера minecraft 1.21 нужен Java 21 (Java jdk 1.21) 45 | 46 | Если при запуске сервера выходит ошибка, то скорее всего вам нужно установить одну из этих Java. 47 | 48 | Ссылки на них прикладываю: 49 | - Java 21 - https://disk.yandex.ru/d/a-xOisjfSF2JsA 50 | - Java 17 - https://disk.yandex.ru/d/sY1lAXRi0sxnrw 51 | - Java 8 - https://disk.yandex.ru/d/MZ8rmHdSBcSAGg 52 | 53 | ЕСЛИ ВЫ НЕ МОЖЕТЕ ПО КАКОЙ-ЛИБО ПРИЧИНЕ СКАЧАТЬ MINECRAFT С ОФИЦИАЛЬНОГО САЙТА, ТО ИСПОЛЬЗУЙТЕ TLAUNCHER. Все игроки в minecraft знают о нём. 54 | -------------------------------------------------------------------------------- /anime1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | import random 5 | import time 6 | 7 | craft = minecraft.Minecraft.create() 8 | 9 | cor = craft.player.getTilePos() 10 | 11 | d=[0,1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] 12 | 13 | while True: 14 | k=random.randint(0, 15) 15 | craft.setBlock(cor.x+2, cor.y, cor.z, 35, d[k]) 16 | time.sleep(0.1) 17 | k=random.randint(0, 15) 18 | 19 | craft.setBlocks(cor.x+2, cor.y, cor.z+5, cor.x+2, cor.y+k, cor.z+5, 35, d[k]) 20 | craft.setBlocks(cor.x+2, cor.y+k, cor.z+5, cor.x+2, cor.y+14, cor.z+5, 0) 21 | time.sleep(0.1) 22 | 23 | k=random.randint(0, 15) 24 | craft.setBlock(cor.x+2, cor.y, cor.z+2, 35, d[k]) 25 | craft.setBlocks(cor.x+2, cor.y, cor.z+4, cor.x+2, cor.y+k, cor.z+4, 35, d[k]) 26 | craft.setBlocks(cor.x+2, cor.y+k, cor.z+4, cor.x+2, cor.y+14, cor.z+4, 0) 27 | time.sleep(0.1) 28 | k=random.randint(0, 15) 29 | craft.setBlock(cor.x+2, cor.y, cor.z+2, 35, d[k]) 30 | craft.setBlocks(cor.x+2, cor.y, cor.z+3, cor.x+2, cor.y+k, cor.z+3, 35, d[k]) 31 | craft.setBlocks(cor.x+2, cor.y+k, cor.z+3, cor.x+2, cor.y+14, cor.z+3, 0) 32 | time.sleep(0.1) 33 | -------------------------------------------------------------------------------- /bashny.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | craft=minecraft.Minecraft.create() 4 | cor=craft.player.getTilePos () 5 | x=cor.x 6 | y=cor.y 7 | z=cor.z 8 | 9 | # Создаём первую опору башни 10 | for i in range (5): 11 | craft.setBlock(x+i,y+i,z, block.STONE.id) 12 | 13 | # Создаём вторую опору башни 14 | for i in range (5): 15 | craft.setBlock(x+10+i,y+4-i,z, block.STONE.id) 16 | 17 | # Создаём площадку на высоте y+5 18 | craft.setBlocks(x+5,y+5,z,x+10, y+5, z+5, block.STONE.id) 19 | 20 | # Создаём третью опору 21 | for i in range (5): 22 | craft.setBlock(x+10+i,y+4-i,z+5, block.STONE.id) 23 | 24 | # Создаём четвёртую опору 25 | for i in range (5): 26 | craft.setBlock(x+i,y+i,z+5, block.STONE.id) 27 | 28 | # Создаём четыре опоры на высоте y+5 29 | for w in range(5): 30 | craft.setBlock(x+5,y+5+w,z, block.STONE.id) 31 | craft.setBlock(x+10,y+5+w,z, block.STONE.id) 32 | craft.setBlock(x+5,y+5+w,z+5, block.STONE.id) 33 | craft.setBlock(x+10,y+5+w,z+5, block.STONE.id) 34 | 35 | #создаём площадку на высоте y+10 36 | craft.setBlocks(x+5,y+10,z,x+10, y+10, z+5, block.STONE.id) 37 | 38 | #Создаём две опоры для третьей площадки-крыши 39 | for i in range (3): 40 | craft.setBlock(x+5+i,y+11+i,z, block.STONE.id) 41 | for i in range (3): 42 | craft.setBlock(x+8+i,y+13-i,z, block.STONE.id) 43 | 44 | #Создание третьей площадки-крыши 45 | craft.setBlocks(x+7,y+13,z,x+8, y+13, z+5, block.STONE.id) 46 | 47 | # Создание двух оставшихся опор от второй до третьей площадки 48 | for i in range (3): 49 | craft.setBlock(x+5+i,y+11+i,z+5, block.STONE.id) 50 | for i in range (3): 51 | craft.setBlock(x+8+i,y+13-i,z+5, block.STONE.id) 52 | 53 | # Создание в центре башни на второй площадке куба из Золотых и стеклянных блоков с центральным блоком - лава. 54 | craft.setBlocks(x+7,y+6,z+2,x+8, y+6, z+3, block.GOLD_BLOCK.id) 55 | craft.setBlocks(x+6,y+7,z+1,x+9, y+8, z+4, block.GLASS.id) 56 | craft.setBlocks(x+7,y+7,z+2,x+8, y+8, z+3, block.LAVA_FLOWING .id) 57 | craft.setBlocks(x+7,y+9,z+2,x+8, y+9, z+3, block.GOLD_BLOCK.id) 58 | 59 | 60 | 61 | -------------------------------------------------------------------------------- /block.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | craft.setBlock(cor.x+2, cor.y, cor.z, block.DIAMOND_BLOCK.id) 10 | 11 | craft.setBlock(cor.x+2, cor.y+2, cor.z, block.WOOD.id) 12 | 13 | craft.setBlock(cor.x+2, cor.y, cor.z+2, block.IRON_BLOCK.id) 14 | 15 | craft.setBlock(cor.x+2, cor.y+2, cor.z+2, block.GOLD_BLOCK.id) 16 | 17 | craft.setBlock(cor.x+2, cor.y-1, cor.z-2, block.WATER.id) 18 | -------------------------------------------------------------------------------- /block1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | for i in range(10): 10 | craft.setBlock(cor.x+2, cor.y, cor.z, block.DIAMOND_BLOCK.id) 11 | cor.x = cor.x+1 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /block2.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | for i in range(10): 10 | craft.setBlock(cor.x+2+i, cor.y, cor.z, block.DIAMOND_BLOCK.id) 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /car.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | import time 6 | 7 | craft = minecraft.Minecraft.create() 8 | 9 | cor = craft.player.getTilePos() 10 | x=cor.x+1 11 | y=cor.y 12 | z=cor.z 13 | def avto1(): 14 | 15 | craft.setBlocks(x, y, z, x+1, y+2, z+4, 5) 16 | craft.setBlocks(x, y+1, z, x+1, y+2, z, 0) 17 | craft.setBlocks(x, y+1, z+2, x+1, y+1, z+2, 0) 18 | craft.setBlocks(x, y+1, z+4, x+1, y+2, z+4, 0) 19 | def avto2(): 20 | 21 | craft.setBlocks(x, y, z, x+4, y+2, z+1, 5) 22 | craft.setBlocks(x, y+1, z, x, y+2, z+1, 0) 23 | craft.setBlocks(x+2, y+1, z, x+2, y+1, z+1, 0) 24 | craft.setBlocks(x+4, y+1, z, x+4, y+2, z+1, 0) 25 | 26 | for i in range(10): 27 | avto1() 28 | z=z+5 29 | time.sleep(1) 30 | craft.setBlocks(x, y, z-5, x+1, y+2, z, 0) 31 | for i in range(10): 32 | avto2() 33 | x=x+5 34 | time.sleep(1) 35 | craft.setBlocks(x-5, y, z, x, y+2, z+1, 0) 36 | for i in range(10): 37 | avto1() 38 | z=z-5 39 | time.sleep(1) 40 | craft.setBlocks(x, y, z, x+1, y+2, z+10, 0) 41 | for i in range(10): 42 | avto2() 43 | x=x-5 44 | time.sleep(1) 45 | craft.setBlocks(x, y, z, x+10, y+2, z+1, 0) 46 | -------------------------------------------------------------------------------- /color_map.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Antipat/python_minecraft/1fa8a296f93877009aedcd5b8846bbd26486cbb4/color_map.png -------------------------------------------------------------------------------- /coord.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | craft=minecraft.Minecraft.create() 4 | 5 | while True: 6 | cor=craft.player.getTilePos() 7 | craft.postToChat("x = "+str(cor.x)+" y = "+ str(cor.y)+" z = "+str(cor.z)) 8 | 9 | -------------------------------------------------------------------------------- /cord1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | craft=minecraft.Minecraft.create() 3 | 4 | cor=craft.player.getTilePos() 5 | 6 | print(cor.x, cor.y, cor.z) 7 | -------------------------------------------------------------------------------- /dom.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | craft=minecraft.Minecraft.create() 4 | 5 | while True: 6 | cor=craft.player.getTilePos() 7 | 8 | if cor.x==-472 and cor.y == 68 and cor.z == -547: 9 | craft.postToChat("Добро пожаловать домой") 10 | else: 11 | craft.postToChat("Иди домой") 12 | 13 | -------------------------------------------------------------------------------- /dom1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | for j in range (5): 10 | for i in range(10): 11 | craft.setBlock(cor.x+2+i, cor.y, cor.z, 35, 14) 12 | 13 | cor.y = cor.y+1 14 | 15 | cor.y = cor.y - 5 16 | 17 | for j in range (5): 18 | for i in range(10): 19 | craft.setBlock(cor.x+2, cor.y, cor.z+i, 35, 14) 20 | 21 | cor.y = cor.y+1 22 | 23 | cor.y = cor.y - 5 24 | 25 | for j in range (5): 26 | for i in range(10): 27 | craft.setBlock(cor.x+2+i, cor.y, cor.z+10, 35, 14) 28 | 29 | cor.y = cor.y+1 30 | 31 | cor.y = cor.y - 5 32 | 33 | for j in range (5): 34 | for i in range(10): 35 | craft.setBlock(cor.x+12, cor.y, cor.z+i, 35, 14) 36 | 37 | cor.y = cor.y+1 38 | 39 | cor.y = cor.y - 5 40 | for j in range (10): 41 | for i in range(10): 42 | craft.setBlock(cor.x+2, cor.y, cor.z+i, 17) 43 | 44 | cor.x = cor.x+1 45 | 46 | cor.y = cor.y+5 47 | 48 | for j in range (8): 49 | for i in range(10): 50 | craft.setBlock(cor.x+2, cor.y, cor.z+i, block.GLASS.id) 51 | 52 | cor.x = cor.x-1 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /dom2.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | sx = cor.x +2+ 5/2 # центр по X 10 | 11 | sy = cor.y + 5/2 # центр по Y 12 | 13 | sz = cor.z+5/2 # центр по Z 14 | 15 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 16 | 17 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 18 | 19 | craft.setBlocks(sx-1, cor.y+1, cor.z, sx, cor.y+2, cor.z, block.AIR.id) 20 | 21 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 22 | 23 | craft.setBlocks(sx-2, sy+1, cor.z, sx-2, sy+2, cor.z, block.GLASS.id) 24 | 25 | 26 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 27 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 28 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 29 | 30 | -------------------------------------------------------------------------------- /dom3.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | sx = cor.x +2+ 5/2 # центр по X 10 | 11 | sy = cor.y + 5/2 # центр по Y 12 | 13 | sz = cor.z+5/2 # центр по Z 14 | 15 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 16 | 17 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 18 | 19 | craft.setBlocks(sx-1, cor.y+1, cor.z, sx, cor.y+2, cor.z, block.AIR.id) 20 | 21 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 22 | 23 | craft.setBlocks(sx-2, sy+1, cor.z, sx-2, sy+2, cor.z, block.GLASS.id) 24 | 25 | 26 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 27 | 28 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 29 | 30 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 31 | 32 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 33 | 34 | 35 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 36 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 37 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 38 | 39 | -------------------------------------------------------------------------------- /dom3_1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | d1 = [1, 1, 1, 1, 1] 10 | d2 = [1, 2, 1, 2, 1] 11 | d3 = [1, 1, 0, 1, 1] 12 | 13 | #Строим два первых ряда со входом 14 | for j in range(2): 15 | for i in range(len(d3)): 16 | if d3[i]==1: 17 | craft.setBlock(cor.x, cor.y, cor.z, 4) 18 | elif d3[i]==0: 19 | craft.setBlock(cor.x, cor.y, cor.z, 0) 20 | cor.x = cor.x+1 21 | cor.y = cor.y+1 22 | cor.x = cor.x-5 23 | 24 | # строим двасплошных ряда блоков 25 | for j in range(2): 26 | for i in range(len(d1)): 27 | if d1[i]==1: 28 | craft.setBlock(cor.x, cor.y, cor.z, 4) 29 | elif d1[i]==0: 30 | craft.setBlock(cor.x, cor.y, cor.z, 0) 31 | cor.x = cor.x+1 32 | cor.y = cor.y+1 33 | cor.x = cor.x-5 34 | 35 | # строим ряд блоков с окнами 36 | for i in range(len(d2)): 37 | if d2[i]==1: 38 | craft.setBlock(cor.x, cor.y, cor.z, 4) 39 | elif d2[i]==2: 40 | craft.setBlock(cor.x, cor.y, cor.z, 20) 41 | cor.x = cor.x+1 42 | cor.y = cor.y+1 43 | cor.x = cor.x-5 44 | 45 | # строим двасплошных ряда блоков 46 | for j in range(2): 47 | for i in range(len(d1)): 48 | if d1[i]==1: 49 | craft.setBlock(cor.x, cor.y, cor.z, 4) 50 | elif d1[i]==0: 51 | craft.setBlock(cor.x, cor.y, cor.z, 0) 52 | cor.x = cor.x+1 53 | cor.y = cor.y+1 54 | cor.x = cor.x-5 55 | 56 | # строим ряд блоков с окнами 57 | for i in range(len(d2)): 58 | if d2[i]==1: 59 | craft.setBlock(cor.x, cor.y, cor.z, 4) 60 | elif d2[i]==2: 61 | craft.setBlock(cor.x, cor.y, cor.z, 20) 62 | cor.x = cor.x+1 63 | cor.y = cor.y+1 64 | cor.x = cor.x-5 65 | 66 | for i in range(len(d1)): 67 | if d1[i]==1: 68 | craft.setBlock(cor.x, cor.y, cor.z, 4) 69 | elif d1[i]==0: 70 | craft.setBlock(cor.x, cor.y, cor.z, 0) 71 | cor.x = cor.x+1 72 | 73 | # строим вторую стену 74 | cor.y =cor.y - 8 75 | cor.x=cor.x-1 76 | 77 | for j in range(4): 78 | for i in range(len(d1)): 79 | if d1[i]==1: 80 | craft.setBlock(cor.x, cor.y, cor.z, 4) 81 | elif d1[i]==0: 82 | craft.setBlock(cor.x, cor.y, cor.z, 0) 83 | cor.z = cor.z+1 84 | cor.y = cor.y+1 85 | cor.z = cor.z-5 86 | 87 | for i in range(len(d2)): 88 | if d2[i]==1: 89 | craft.setBlock(cor.x, cor.y, cor.z, 4) 90 | elif d2[i]==2: 91 | craft.setBlock(cor.x, cor.y, cor.z, 20) 92 | cor.z = cor.z+1 93 | cor.y = cor.y+1 94 | cor.z = cor.z-5 95 | 96 | for j in range(2): 97 | for i in range(len(d1)): 98 | if d1[i]==1: 99 | craft.setBlock(cor.x, cor.y, cor.z, 4) 100 | elif d1[i]==0: 101 | craft.setBlock(cor.x, cor.y, cor.z, 0) 102 | cor.z = cor.z+1 103 | cor.y = cor.y+1 104 | cor.z = cor.z-5 105 | 106 | for i in range(len(d2)): 107 | if d2[i]==1: 108 | craft.setBlock(cor.x, cor.y, cor.z, 4) 109 | elif d2[i]==2: 110 | craft.setBlock(cor.x, cor.y, cor.z, 20) 111 | cor.z = cor.z+1 112 | cor.y = cor.y+1 113 | cor.z = cor.z-5 114 | 115 | for i in range(len(d1)): 116 | if d1[i]==1: 117 | craft.setBlock(cor.x, cor.y, cor.z, 4) 118 | elif d1[i]==0: 119 | craft.setBlock(cor.x, cor.y, cor.z, 0) 120 | cor.z = cor.z+1 121 | cor.y = cor.y+1 122 | cor.z = cor.z-5 123 | 124 | # строим третью стену 125 | cor.y =cor.y - 9 126 | cor.x=cor.x-4 127 | 128 | for j in range(4): 129 | for i in range(len(d1)): 130 | if d1[i]==1: 131 | craft.setBlock(cor.x, cor.y, cor.z, 4) 132 | elif d1[i]==0: 133 | craft.setBlock(cor.x, cor.y, cor.z, 0) 134 | cor.z = cor.z+1 135 | cor.y = cor.y+1 136 | cor.z = cor.z-5 137 | 138 | for i in range(len(d2)): 139 | if d2[i]==1: 140 | craft.setBlock(cor.x, cor.y, cor.z, 4) 141 | elif d2[i]==2: 142 | craft.setBlock(cor.x, cor.y, cor.z, 20) 143 | cor.z = cor.z+1 144 | cor.y = cor.y+1 145 | cor.z = cor.z-5 146 | 147 | for j in range(2): 148 | for i in range(len(d1)): 149 | if d1[i]==1: 150 | craft.setBlock(cor.x, cor.y, cor.z, 4) 151 | elif d1[i]==0: 152 | craft.setBlock(cor.x, cor.y, cor.z, 0) 153 | cor.z = cor.z+1 154 | cor.y = cor.y+1 155 | cor.z = cor.z-5 156 | 157 | for i in range(len(d2)): 158 | if d2[i]==1: 159 | craft.setBlock(cor.x, cor.y, cor.z, 4) 160 | elif d2[i]==2: 161 | craft.setBlock(cor.x, cor.y, cor.z, 20) 162 | cor.z = cor.z+1 163 | cor.y = cor.y+1 164 | cor.z = cor.z-5 165 | 166 | for i in range(len(d1)): 167 | if d1[i]==1: 168 | craft.setBlock(cor.x, cor.y, cor.z, 4) 169 | elif d1[i]==0: 170 | craft.setBlock(cor.x, cor.y, cor.z, 0) 171 | cor.z = cor.z+1 172 | 173 | 174 | 175 | # строим четвёртую стену 176 | cor.y =cor.y -8 177 | 178 | craft.setBlocks(cor.x, cor.y,cor.z, cor.x+4, cor.y+8, cor.z, 4) 179 | 180 | # строим крышу 181 | craft.setBlocks(cor.x, cor.y+9,cor.z, cor.x+4, cor.y+9, cor.z-5, 20) 182 | -------------------------------------------------------------------------------- /dom3_E.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | sx = cor.x +2+ 5/2 # центр по X 10 | 11 | sy = cor.y + 5/2 # центр по Y 12 | 13 | sz = cor.z+5/2 # центр по Z 14 | 15 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 16 | 17 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 18 | 19 | 20 | 21 | craft.setBlocks(cor.x+6, cor.y+1, sz, cor.x+6, cor.y+2, sz+1, block.AIR.id) 22 | 23 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 24 | 25 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 26 | 27 | 28 | craft.setBlocks(sx-1, sy+1, cor.z, sx-1, sy+2, cor.z, block.GLASS.id) 29 | 30 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 31 | 32 | craft.setBlocks(sx-1, sy+1, cor.z+5, sx-1, sy+2, cor.z+5, block.GLASS.id) 33 | 34 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 35 | 36 | 37 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 38 | craft.setBlocks(cor.x+1, cor.y+7, cor.z+1, cor.x+6, cor.y+7, cor.z+4, block.IRON_BLOCK.id) 39 | craft.setBlocks(cor.x+1, cor.y+8, cor.z+2, cor.x+6, cor.y+8, cor.z+3, block.IRON_BLOCK.id) 40 | 41 | -------------------------------------------------------------------------------- /dom3_N.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | sx = cor.x +2+ 5/2 # центр по X 10 | 11 | sy = cor.y + 5/2 # центр по Y 12 | 13 | sz = cor.z+5/2 # центр по Z 14 | 15 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 16 | 17 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 18 | 19 | craft.setBlocks(sx-1, cor.y+1, cor.z, sx, cor.y+2, cor.z, block.AIR.id) 20 | 21 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 22 | 23 | craft.setBlocks(sx-2, sy+1, cor.z, sx-2, sy+2, cor.z, block.GLASS.id) 24 | 25 | 26 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 27 | 28 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 29 | 30 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 31 | 32 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 33 | 34 | 35 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 36 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 37 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 38 | 39 | -------------------------------------------------------------------------------- /dom3_S.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | sx = cor.x +2+ 5/2 # центр по X 10 | 11 | sy = cor.y + 5/2 # центр по Y 12 | 13 | sz = cor.z+5/2 # центр по Z 14 | 15 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 16 | 17 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 18 | 19 | craft.setBlocks(sx-1, cor.y+1, cor.z+5, sx, cor.y+2, cor.z+5, block.AIR.id) 20 | 21 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 22 | 23 | craft.setBlocks(sx-2, sy+1, cor.z+5, sx-2, sy+2, cor.z+5, block.GLASS.id) 24 | 25 | 26 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 27 | 28 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 29 | 30 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 31 | 32 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 33 | 34 | 35 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 36 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 37 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 38 | 39 | -------------------------------------------------------------------------------- /dom3_W.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | sx = cor.x +2+ 5/2 # центр по X 10 | 11 | sy = cor.y + 5/2 # центр по Y 12 | 13 | sz = cor.z+5/2 # центр по Z 14 | 15 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 16 | 17 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 18 | 19 | 20 | 21 | craft.setBlocks(cor.x+1, cor.y+1, sz, cor.x+1, cor.y+2, sz+1, block.AIR.id) 22 | 23 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 24 | 25 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 26 | 27 | 28 | craft.setBlocks(sx-1, sy+1, cor.z, sx-1, sy+2, cor.z, block.GLASS.id) 29 | 30 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 31 | 32 | craft.setBlocks(sx-1, sy+1, cor.z+5, sx-1, sy+2, cor.z+5, block.GLASS.id) 33 | 34 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 35 | 36 | 37 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 38 | craft.setBlocks(cor.x+1, cor.y+7, cor.z+1, cor.x+6, cor.y+7, cor.z+4, block.IRON_BLOCK.id) 39 | craft.setBlocks(cor.x+1, cor.y+8, cor.z+2, cor.x+6, cor.y+8, cor.z+3, block.IRON_BLOCK.id) 40 | 41 | -------------------------------------------------------------------------------- /drive.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | import time 6 | 7 | craft = minecraft.Minecraft.create() 8 | 9 | cor = craft.player.getTilePos() 10 | 11 | 12 | for i in range(10): 13 | craft.setBlock(cor.x+i, cor.y, cor.z, 0) 14 | craft.setBlock(cor.x+1+i, cor.y, cor.z, 57) 15 | time.sleep(0.5) 16 | 17 | 18 | for i in range(10): 19 | 20 | craft.setBlock(cor.x+1+i, cor.y, cor.z, 57) 21 | time.sleep(0.5) 22 | craft.setBlock(cor.x+i+1, cor.y, cor.z, 0) 23 | 24 | 25 | -------------------------------------------------------------------------------- /foto.py: -------------------------------------------------------------------------------- 1 | import cv2 2 | import numpy as np 3 | import time 4 | 5 | cap = cv2.VideoCapture(0) 6 | 7 | time.sleep(3) 8 | while True: 9 | _, frame = cap.read() 10 | cv2.imshow('frame', frame) 11 | cv2.imwrite('obrab.jpg', frame) 12 | time.sleep(1) 13 | break 14 | 15 | b = cv2.resize(frame , (60 , 50)) 16 | cv2.imwrite('obrab11.jpg', b) 17 | -------------------------------------------------------------------------------- /game.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import time 3 | 4 | craft=minecraft.Minecraft.create() 5 | 6 | x1 = -458 7 | x2 = -451 8 | z1 = -550 9 | z2 = -537 10 | 11 | t = 0 12 | 13 | while True: 14 | time.sleep(1) 15 | cor=craft.player.getTilePos() 16 | if t ==10: 17 | craft.player.setTilePos (-453, 69, -550) 18 | t=0 19 | 20 | if cor.x >=x1 and cor.x<=x2 and cor.z>=z1 and cor.z<=z2: 21 | craft.postToChat("Игра началась t =" +str(t)) 22 | t = t + 1 23 | 24 | else: 25 | craft.postToChat("Конец игры t = "+ str(t)) 26 | t = 0 27 | 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /lin1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import math 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | 13 | for i in range(20): 14 | y1 = 0*i+0 15 | craft.setBlock(x+i, y+y1,z, 35,0) 16 | 17 | for i in range(20): 18 | y1 = 0.2*i+0 19 | craft.setBlock(x+i, y+y1,z, 35,1) 20 | 21 | for i in range(20): 22 | y1 = 0.5*i+0 23 | craft.setBlock(x+i, y+y1,z, 35,3) 24 | 25 | for i in range(20): 26 | y1 = i+0 27 | craft.setBlock(x+i, y+y1,z, 35,4) 28 | 29 | for i in range(20): 30 | y1 = 1.2*i+0 31 | craft.setBlock(x+i, y+y1,z, 35,5) 32 | 33 | for i in range(20): 34 | y1 = 1.5*i+0 35 | craft.setBlock(x+i, y+y1,z, 35,6) 36 | 37 | for i in range(20): 38 | y1 = 2*i+0 39 | craft.setBlock(x+i, y+y1,z, 35,7) 40 | 41 | 42 | for i in range(20): 43 | y1 = -1*i+0 44 | craft.setBlock(x+i, y+y1,z, 35,4) 45 | 46 | for i in range(20): 47 | y1 = -1.5*i+0 48 | craft.setBlock(x+i, y+y1,z, 35,6) 49 | 50 | for i in range(20): 51 | y1 = -2*i+0 52 | craft.setBlock(x+i, y+y1,z, 35,7) 53 | 54 | -------------------------------------------------------------------------------- /lin1С.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import math 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | 13 | d1 = [] 14 | d2 = [] 15 | 16 | for i in range(-10, 30): 17 | y1=-0.5*i+10 18 | craft.setBlock(x+i, y+y1, z, 35, 0) 19 | d1.append(x+i) 20 | d1.append(y+y1) 21 | 22 | for i in range(-10, 30): 23 | y1=0.5*i-10 24 | craft.setBlock(x+i, y+y1, z, 35, 1) 25 | d2.append(x+i) 26 | d2.append(y+y1) 27 | 28 | i=0 29 | 30 | for j in range (int(len(d1)/2)): 31 | if d1[i]==d2[i] and d1[i+1]==d2[i+1]: 32 | print("Найдена общая точка "+ "A("+str(d1[i])+","+str(d1[i+1])+")") 33 | print("Найдена общая точка "+ "A("+str(d1[i]-x)+","+str(d1[i+1]-y)+")") 34 | else: 35 | print("Поиск общих точек") 36 | i=i+2 37 | 38 | -------------------------------------------------------------------------------- /lin2.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import math 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | 13 | 14 | for i in range(20): 15 | y1 = math.tan((math.pi*45)/180)*i+0 16 | craft.setBlock(x+i, y+y1,z, 35,4) 17 | 18 | -------------------------------------------------------------------------------- /lin2С.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import math 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | 13 | for i in range(5): 14 | y1=0*i+0 15 | craft.setBlock(x+i,y+y1,z, 35,0) 16 | y1 = 0*i+5 17 | craft.setBlock(x+i,y+y1,z, 35,1) 18 | x1=i*0+0 19 | craft.setBlock(x+x1,y+i,z, 35,2) 20 | x1=i*0+5 21 | craft.setBlock(x+x1,y+i,z, 35,3) 22 | x1=i*0+0 23 | craft.setBlock(x+x1,y,z+i, 35,4) 24 | x1=i*0+5 25 | craft.setBlock(x+x1,y,z+i, 35,5) 26 | 27 | y1=0*i+0 28 | craft.setBlock(x+i,y+y1,z+5, 35,6) 29 | y1 = 0*i+5 30 | craft.setBlock(x+i,y+y1,z+5, 35,7) 31 | x1=i*0+0 32 | craft.setBlock(x+x1,y+i,z+5, 35, 8) 33 | x1=i*0+5 34 | craft.setBlock(x+x1,y+i,z+5, 35,9) 35 | x1=i*0+0 36 | craft.setBlock(x+x1,y+5,z+i, 35,10) 37 | x1=i*0+5 38 | craft.setBlock(x+x1,y+5,z+i, 35,11) 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /lin3.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import math 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | 13 | for i in range(-20,20): 14 | y1 = 0*i+0 15 | craft.setBlock(x+i, y+y1,z, 35,0) 16 | 17 | for i in range(-20,20): 18 | y1 = 0.2*i+0 19 | craft.setBlock(x+i, y+y1,z, 35,1) 20 | 21 | for i in range(-20,20): 22 | y1 = 0.5*i+0 23 | craft.setBlock(x+i, y+y1,z, 35,3) 24 | 25 | for i in range(-20,20): 26 | y1 = i+0 27 | craft.setBlock(x+i, y+y1,z, 35,4) 28 | 29 | for i in range(-20,20): 30 | y1 = 1.2*i+0 31 | craft.setBlock(x+i, y+y1,z, 35,5) 32 | 33 | for i in range(-20,20): 34 | y1 = 1.5*i+0 35 | craft.setBlock(x+i, y+y1,z, 35,6) 36 | 37 | for i in range(-20,20): 38 | y1 = 2*i+0 39 | craft.setBlock(x+i, y+y1,z, 35,7) 40 | 41 | 42 | for i in range(-20,20): 43 | y1 = -1*i+0 44 | craft.setBlock(x+i, y+y1,z, 35,4) 45 | 46 | for i in range(-20,20): 47 | y1 = -1.5*i+0 48 | craft.setBlock(x+i, y+y1,z, 35,6) 49 | 50 | for i in range(-20,20): 51 | y1 = -2*i+0 52 | craft.setBlock(x+i, y+y1,z, 35,7) 53 | 54 | -------------------------------------------------------------------------------- /lin4.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import math 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | 13 | for i in range(20): 14 | y1 = 0*i-2 15 | craft.setBlock(x+i, y+y1,z, 35,0) 16 | 17 | for i in range(20): 18 | y1 = 0*i-1 19 | craft.setBlock(x+i, y+y1,z, 35,1) 20 | 21 | for i in range(20): 22 | y1 = 0*i+1 23 | craft.setBlock(x+i, y+y1,z, 35,2) 24 | 25 | for i in range(20): 26 | y1 = 0*i+2 27 | craft.setBlock(x+i, y+y1,z, 35,3) 28 | 29 | for i in range(20): 30 | y1 = 0*i+math.sqrt(12) 31 | craft.setBlock(x+i, y+y1,z, 35,4) 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /lin5.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | 13 | for i in range(20): 14 | y1 = -0.5*i-10 15 | craft.setBlock(x+i, y+y1,z, 35,0) 16 | 17 | for i in range(20): 18 | y1 = -0.5*i+10 19 | craft.setBlock(x+i, y+y1,z, 35,1) 20 | 21 | for i in range(20): 22 | y1 = 0.5*i-10 23 | craft.setBlock(x+i, y+y1,z, 35,2) 24 | 25 | for i in range(20): 26 | y1 = 0.5*i+10 27 | craft.setBlock(x+i, y+y1,z, 35,3) 28 | 29 | 30 | 31 | for i in range(-20,20): 32 | y1 = 0*i+0 33 | craft.setBlock(x+i, y+y1,z, 35,7) 34 | 35 | for i in range(-20,20): 36 | x1 = 0*i+0 37 | craft.setBlock(x+x1, y+i,z, 35,7) 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /logic1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | import time 6 | 7 | craft = minecraft.Minecraft.create() 8 | 9 | cor = craft.player.getTilePos() 10 | 11 | craft.setBlock(cor.x+8, cor.y-1, cor.z, 41) 12 | 13 | for i in range(10): 14 | craft.setBlock(cor.x+i, cor.y, cor.z, 0) 15 | craft.setBlock(cor.x+1+i, cor.y, cor.z, 57) 16 | time.sleep(1) 17 | if craft.getBlock(cor.x+1+i, cor.y-1, cor.z)==41: 18 | craft.postToChat("Золотой блок ") 19 | else: 20 | craft.postToChat("Ищем блок ") 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /stena.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | for i in range(10): 10 | craft.setBlock(cor.x+2+i, cor.y, cor.z, 35, 14) 11 | 12 | cor.y = cor.y+1 13 | 14 | for i in range(10): 15 | craft.setBlock(cor.x+2+i, cor.y, cor.z, 35, 14) 16 | 17 | cor.y = cor.y+1 18 | 19 | for i in range(10): 20 | craft.setBlock(cor.x+2+i, cor.y, cor.z, 35, 14) 21 | 22 | cor.y = cor.y+1 23 | 24 | for i in range(10): 25 | craft.setBlock(cor.x+2+i, cor.y, cor.z, 35, 14) 26 | 27 | cor.y = cor.y+1 28 | 29 | for i in range(10): 30 | craft.setBlock(cor.x+2+i, cor.y, cor.z, 35, 14) 31 | -------------------------------------------------------------------------------- /stena1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | for i in range(10): 10 | craft.setBlock(cor.x+2, cor.y, cor.z, 35, 14) 11 | cor.x=cor.x+1 12 | 13 | cor.x = cor.x - 10 14 | 15 | cor.y = cor.y+1 16 | 17 | 18 | for i in range(10): 19 | craft.setBlock(cor.x+2, cor.y, cor.z, 35, 14) 20 | cor.x=cor.x+1 21 | 22 | cor.x = cor.x - 10 23 | 24 | cor.y = cor.y+1 25 | 26 | 27 | for i in range(10): 28 | craft.setBlock(cor.x+2, cor.y, cor.z, 35, 14) 29 | cor.x=cor.x+1 30 | 31 | cor.x = cor.x - 10 32 | 33 | cor.y = cor.y+1 34 | 35 | 36 | for i in range(10): 37 | craft.setBlock(cor.x+2, cor.y, cor.z, 35, 14) 38 | cor.x=cor.x+1 39 | 40 | cor.x = cor.x - 10 41 | 42 | cor.y = cor.y+1 43 | 44 | 45 | for i in range(10): 46 | craft.setBlock(cor.x+2, cor.y, cor.z, 35, 14) 47 | cor.x=cor.x+1 48 | -------------------------------------------------------------------------------- /stena1_opt.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | for j in range(5): 10 | for i in range(10): 11 | craft.setBlock(cor.x+2, cor.y, cor.z, 35, 14) 12 | cor.x=cor.x+1 13 | 14 | cor.x = cor.x - 10 15 | 16 | cor.y = cor.y+1 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /stena_opt.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | 3 | import mcpi.block as block 4 | 5 | craft = minecraft.Minecraft.create() 6 | 7 | cor = craft.player.getTilePos() 8 | 9 | for j in range (5): 10 | for i in range(10): 11 | craft.setBlock(cor.x+2+i, cor.y, cor.z, 35, 14) 12 | 13 | cor.y = cor.y+1 14 | 15 | 16 | -------------------------------------------------------------------------------- /street.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | craft=minecraft.Minecraft.create() 4 | cor=craft.player.getTilePos () 5 | 6 | craft.setBlocks(cor.x, cor.y-1, cor.z, cor.x+110, cor.y-1, cor.z+200, 7) 7 | x=cor.x 8 | y=cor.y 9 | z=cor.z 10 | 11 | #11 - dom_N 12 | #12 - dom_S 13 | #13 - dom_E 14 | #14 - dom_W 15 | #21 - dom2_N 16 | #22 - dom2_S 17 | #3 - bashny 18 | #4 - most 19 | d11 = [3, 0, 13, 13, 13, 13, 13, 0, 3, 0] 20 | d21 = [22, 0, 14, 14, 14, 14, 14, 0, 21, 0] 21 | d31 = [22, 0, 21, 0, 0, 0, 22, 0, 21, 0] 22 | d41 = [22, 0, 21, 4, 22, 0, 21, 0] 23 | d51 = [3, 0, 14, 14, 14, 14, 14, 0, 3, 0] 24 | d61 = [22, 0, 13, 13, 13, 13, 13, 0, 21, 0] 25 | class yl(): 26 | def dom_N(self): 27 | sx = cor.x +2+ 5/2 # центр по X 28 | 29 | sy = cor.y + 5/2 # центр по Y 30 | 31 | sz = cor.z+5/2 # центр по Z 32 | 33 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 34 | 35 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 36 | 37 | craft.setBlocks(sx-1, cor.y+1, cor.z, sx, cor.y+2, cor.z, block.AIR.id) 38 | 39 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 40 | 41 | craft.setBlocks(sx-2, sy+1, cor.z, sx-2, sy+2, cor.z, block.GLASS.id) 42 | 43 | 44 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 45 | 46 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 47 | 48 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 49 | 50 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 51 | 52 | 53 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 54 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 55 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 56 | 57 | def dom_S(self): 58 | sx = cor.x +2+ 5/2 # центр по X 59 | 60 | sy = cor.y + 5/2 # центр по Y 61 | 62 | sz = cor.z+5/2 # центр по Z 63 | 64 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 65 | 66 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 67 | 68 | craft.setBlocks(sx-1, cor.y+1, cor.z+5, sx, cor.y+2, cor.z+5, block.AIR.id) 69 | 70 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 71 | 72 | craft.setBlocks(sx-2, sy+1, cor.z+5, sx-2, sy+2, cor.z+5, block.GLASS.id) 73 | 74 | 75 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 76 | 77 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 78 | 79 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 80 | 81 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 82 | 83 | 84 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 85 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 86 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 87 | 88 | def dom_E(self): 89 | sx = cor.x +2+ 5/2 # центр по X 90 | 91 | sy = cor.y + 5/2 # центр по Y 92 | 93 | sz = cor.z+5/2 # центр по Z 94 | 95 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 96 | 97 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 98 | 99 | 100 | 101 | craft.setBlocks(cor.x+6, cor.y+1, sz, cor.x+6, cor.y+2, sz+1, block.AIR.id) 102 | 103 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 104 | 105 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 106 | 107 | 108 | craft.setBlocks(sx-1, sy+1, cor.z, sx-1, sy+2, cor.z, block.GLASS.id) 109 | 110 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 111 | 112 | craft.setBlocks(sx-1, sy+1, cor.z+5, sx-1, sy+2, cor.z+5, block.GLASS.id) 113 | 114 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 115 | 116 | 117 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 118 | craft.setBlocks(cor.x+1, cor.y+7, cor.z+1, cor.x+6, cor.y+7, cor.z+4, block.IRON_BLOCK.id) 119 | craft.setBlocks(cor.x+1, cor.y+8, cor.z+2, cor.x+6, cor.y+8, cor.z+3, block.IRON_BLOCK.id) 120 | 121 | def dom_W(self): 122 | sx = cor.x +2+ 5/2 # центр по X 123 | 124 | sy = cor.y + 5/2 # центр по Y 125 | 126 | sz = cor.z+5/2 # центр по Z 127 | 128 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 129 | 130 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 131 | 132 | craft.setBlocks(cor.x+1, cor.y+1, sz, cor.x+1, cor.y+2, sz+1, block.AIR.id) 133 | 134 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 135 | 136 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 137 | 138 | craft.setBlocks(sx-1, sy+1, cor.z, sx-1, sy+2, cor.z, block.GLASS.id) 139 | 140 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 141 | 142 | craft.setBlocks(sx-1, sy+1, cor.z+5, sx-1, sy+2, cor.z+5, block.GLASS.id) 143 | 144 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 145 | 146 | 147 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 148 | craft.setBlocks(cor.x+1, cor.y+7, cor.z+1, cor.x+6, cor.y+7, cor.z+4, block.IRON_BLOCK.id) 149 | craft.setBlocks(cor.x+1, cor.y+8, cor.z+2, cor.x+6, cor.y+8, cor.z+3, block.IRON_BLOCK.id) 150 | 151 | def dom2_N(self): 152 | d1 = [1, 1, 1, 1, 1] 153 | d2 = [1, 2, 1, 2, 1] 154 | d3 = [1, 1, 0, 1, 1] 155 | 156 | #Строим два первых ряда со входом 157 | for j in range(2): 158 | for i in range(len(d3)): 159 | if d3[i]==1: 160 | craft.setBlock(cor.x, cor.y, cor.z, 4) 161 | elif d3[i]==0: 162 | craft.setBlock(cor.x, cor.y, cor.z, 0) 163 | cor.x = cor.x+1 164 | cor.y = cor.y+1 165 | cor.x = cor.x-5 166 | 167 | # строим двасплошных ряда блоков 168 | for j in range(2): 169 | for i in range(len(d1)): 170 | if d1[i]==1: 171 | craft.setBlock(cor.x, cor.y, cor.z, 4) 172 | elif d1[i]==0: 173 | craft.setBlock(cor.x, cor.y, cor.z, 0) 174 | cor.x = cor.x+1 175 | cor.y = cor.y+1 176 | cor.x = cor.x-5 177 | 178 | # строим ряд блоков с окнами 179 | for i in range(len(d2)): 180 | if d2[i]==1: 181 | craft.setBlock(cor.x, cor.y, cor.z, 4) 182 | elif d2[i]==2: 183 | craft.setBlock(cor.x, cor.y, cor.z, 20) 184 | cor.x = cor.x+1 185 | cor.y = cor.y+1 186 | cor.x = cor.x-5 187 | 188 | # строим двасплошных ряда блоков 189 | for j in range(2): 190 | for i in range(len(d1)): 191 | if d1[i]==1: 192 | craft.setBlock(cor.x, cor.y, cor.z, 4) 193 | elif d1[i]==0: 194 | craft.setBlock(cor.x, cor.y, cor.z, 0) 195 | cor.x = cor.x+1 196 | cor.y = cor.y+1 197 | cor.x = cor.x-5 198 | 199 | # строим ряд блоков с окнами 200 | for i in range(len(d2)): 201 | if d2[i]==1: 202 | craft.setBlock(cor.x, cor.y, cor.z, 4) 203 | elif d2[i]==2: 204 | craft.setBlock(cor.x, cor.y, cor.z, 20) 205 | cor.x = cor.x+1 206 | cor.y = cor.y+1 207 | cor.x = cor.x-5 208 | 209 | for i in range(len(d1)): 210 | if d1[i]==1: 211 | craft.setBlock(cor.x, cor.y, cor.z, 4) 212 | elif d1[i]==0: 213 | craft.setBlock(cor.x, cor.y, cor.z, 0) 214 | cor.x = cor.x+1 215 | 216 | # строим вторую стену 217 | cor.y =cor.y - 8 218 | cor.x=cor.x-1 219 | 220 | for j in range(4): 221 | for i in range(len(d1)): 222 | if d1[i]==1: 223 | craft.setBlock(cor.x, cor.y, cor.z, 4) 224 | elif d1[i]==0: 225 | craft.setBlock(cor.x, cor.y, cor.z, 0) 226 | cor.z = cor.z+1 227 | cor.y = cor.y+1 228 | cor.z = cor.z-5 229 | 230 | for i in range(len(d2)): 231 | if d2[i]==1: 232 | craft.setBlock(cor.x, cor.y, cor.z, 4) 233 | elif d2[i]==2: 234 | craft.setBlock(cor.x, cor.y, cor.z, 20) 235 | cor.z = cor.z+1 236 | cor.y = cor.y+1 237 | cor.z = cor.z-5 238 | 239 | for j in range(2): 240 | for i in range(len(d1)): 241 | if d1[i]==1: 242 | craft.setBlock(cor.x, cor.y, cor.z, 4) 243 | elif d1[i]==0: 244 | craft.setBlock(cor.x, cor.y, cor.z, 0) 245 | cor.z = cor.z+1 246 | cor.y = cor.y+1 247 | cor.z = cor.z-5 248 | 249 | for i in range(len(d2)): 250 | if d2[i]==1: 251 | craft.setBlock(cor.x, cor.y, cor.z, 4) 252 | elif d2[i]==2: 253 | craft.setBlock(cor.x, cor.y, cor.z, 20) 254 | cor.z = cor.z+1 255 | cor.y = cor.y+1 256 | cor.z = cor.z-5 257 | 258 | for i in range(len(d1)): 259 | if d1[i]==1: 260 | craft.setBlock(cor.x, cor.y, cor.z, 4) 261 | elif d1[i]==0: 262 | craft.setBlock(cor.x, cor.y, cor.z, 0) 263 | cor.z = cor.z+1 264 | cor.y = cor.y+1 265 | cor.z = cor.z-5 266 | 267 | # строим третью стену 268 | cor.y =cor.y - 9 269 | cor.x=cor.x-4 270 | 271 | for j in range(4): 272 | for i in range(len(d1)): 273 | if d1[i]==1: 274 | craft.setBlock(cor.x, cor.y, cor.z, 4) 275 | elif d1[i]==0: 276 | craft.setBlock(cor.x, cor.y, cor.z, 0) 277 | cor.z = cor.z+1 278 | cor.y = cor.y+1 279 | cor.z = cor.z-5 280 | 281 | for i in range(len(d2)): 282 | if d2[i]==1: 283 | craft.setBlock(cor.x, cor.y, cor.z, 4) 284 | elif d2[i]==2: 285 | craft.setBlock(cor.x, cor.y, cor.z, 20) 286 | cor.z = cor.z+1 287 | cor.y = cor.y+1 288 | cor.z = cor.z-5 289 | 290 | for j in range(2): 291 | for i in range(len(d1)): 292 | if d1[i]==1: 293 | craft.setBlock(cor.x, cor.y, cor.z, 4) 294 | elif d1[i]==0: 295 | craft.setBlock(cor.x, cor.y, cor.z, 0) 296 | cor.z = cor.z+1 297 | cor.y = cor.y+1 298 | cor.z = cor.z-5 299 | 300 | for i in range(len(d2)): 301 | if d2[i]==1: 302 | craft.setBlock(cor.x, cor.y, cor.z, 4) 303 | elif d2[i]==2: 304 | craft.setBlock(cor.x, cor.y, cor.z, 20) 305 | cor.z = cor.z+1 306 | cor.y = cor.y+1 307 | cor.z = cor.z-5 308 | 309 | for i in range(len(d1)): 310 | if d1[i]==1: 311 | craft.setBlock(cor.x, cor.y, cor.z, 4) 312 | elif d1[i]==0: 313 | craft.setBlock(cor.x, cor.y, cor.z, 0) 314 | cor.z = cor.z+1 315 | 316 | # строим четвёртую стену 317 | cor.y =cor.y -8 318 | craft.setBlocks(cor.x, cor.y,cor.z, cor.x+4, cor.y+8, cor.z, 4) 319 | 320 | # строим крышу 321 | craft.setBlocks(cor.x, cor.y+9,cor.z, cor.x+4, cor.y+9, cor.z-5, 20) 322 | 323 | def dom2_S(self): 324 | d1 = [1, 1, 1, 1, 1] 325 | d2 = [1, 2, 1, 2, 1] 326 | d3 = [1, 1, 0, 1, 1] 327 | 328 | #Строим два первых ряда со входом 329 | for j in range(2): 330 | for i in range(len(d3)): 331 | if d3[i]==1: 332 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 333 | elif d3[i]==0: 334 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 335 | cor.x = cor.x+1 336 | cor.y = cor.y+1 337 | cor.x = cor.x-5 338 | 339 | # строим двасплошных ряда блоков 340 | for j in range(2): 341 | for i in range(len(d1)): 342 | if d1[i]==1: 343 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 344 | elif d1[i]==0: 345 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 346 | cor.x = cor.x+1 347 | cor.y = cor.y+1 348 | cor.x = cor.x-5 349 | 350 | # строим ряд блоков с окнами 351 | for i in range(len(d2)): 352 | if d2[i]==1: 353 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 354 | elif d2[i]==2: 355 | craft.setBlock(cor.x, cor.y, cor.z+5, 20) 356 | cor.x = cor.x+1 357 | cor.y = cor.y+1 358 | cor.x = cor.x-5 359 | 360 | # строим двасплошных ряда блоков 361 | for j in range(2): 362 | for i in range(len(d1)): 363 | if d1[i]==1: 364 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 365 | elif d1[i]==0: 366 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 367 | cor.x = cor.x+1 368 | cor.y = cor.y+1 369 | cor.x = cor.x-5 370 | 371 | # строим ряд блоков с окнами 372 | for i in range(len(d2)): 373 | if d2[i]==1: 374 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 375 | elif d2[i]==2: 376 | craft.setBlock(cor.x, cor.y, cor.z+5, 20) 377 | cor.x = cor.x+1 378 | cor.y = cor.y+1 379 | cor.x = cor.x-5 380 | 381 | for i in range(len(d1)): 382 | if d1[i]==1: 383 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 384 | elif d1[i]==0: 385 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 386 | cor.x = cor.x+1 387 | 388 | # строим вторую стену 389 | cor.y =cor.y - 8 390 | cor.x=cor.x-1 391 | 392 | for j in range(4): 393 | for i in range(len(d1)): 394 | if d1[i]==1: 395 | craft.setBlock(cor.x, cor.y, cor.z, 4) 396 | elif d1[i]==0: 397 | craft.setBlock(cor.x, cor.y, cor.z, 0) 398 | cor.z = cor.z+1 399 | cor.y = cor.y+1 400 | cor.z = cor.z-5 401 | 402 | for i in range(len(d2)): 403 | if d2[i]==1: 404 | craft.setBlock(cor.x, cor.y, cor.z, 4) 405 | elif d2[i]==2: 406 | craft.setBlock(cor.x, cor.y, cor.z, 20) 407 | cor.z = cor.z+1 408 | cor.y = cor.y+1 409 | cor.z = cor.z-5 410 | 411 | for j in range(2): 412 | for i in range(len(d1)): 413 | if d1[i]==1: 414 | craft.setBlock(cor.x, cor.y, cor.z, 4) 415 | elif d1[i]==0: 416 | craft.setBlock(cor.x, cor.y, cor.z, 0) 417 | cor.z = cor.z+1 418 | cor.y = cor.y+1 419 | cor.z = cor.z-5 420 | 421 | for i in range(len(d2)): 422 | if d2[i]==1: 423 | craft.setBlock(cor.x, cor.y, cor.z, 4) 424 | elif d2[i]==2: 425 | craft.setBlock(cor.x, cor.y, cor.z, 20) 426 | cor.z = cor.z+1 427 | cor.y = cor.y+1 428 | cor.z = cor.z-5 429 | 430 | for i in range(len(d1)): 431 | if d1[i]==1: 432 | craft.setBlock(cor.x, cor.y, cor.z, 4) 433 | elif d1[i]==0: 434 | craft.setBlock(cor.x, cor.y, cor.z, 0) 435 | cor.z = cor.z+1 436 | cor.y = cor.y+1 437 | cor.z = cor.z-5 438 | 439 | # строим третью стену 440 | cor.y =cor.y - 9 441 | cor.x=cor.x-4 442 | 443 | for j in range(4): 444 | for i in range(len(d1)): 445 | if d1[i]==1: 446 | craft.setBlock(cor.x, cor.y, cor.z, 4) 447 | elif d1[i]==0: 448 | craft.setBlock(cor.x, cor.y, cor.z, 0) 449 | cor.z = cor.z+1 450 | cor.y = cor.y+1 451 | cor.z = cor.z-5 452 | 453 | for i in range(len(d2)): 454 | if d2[i]==1: 455 | craft.setBlock(cor.x, cor.y, cor.z, 4) 456 | elif d2[i]==2: 457 | craft.setBlock(cor.x, cor.y, cor.z, 20) 458 | cor.z = cor.z+1 459 | cor.y = cor.y+1 460 | cor.z = cor.z-5 461 | 462 | for j in range(2): 463 | for i in range(len(d1)): 464 | if d1[i]==1: 465 | craft.setBlock(cor.x, cor.y, cor.z, 4) 466 | elif d1[i]==0: 467 | craft.setBlock(cor.x, cor.y, cor.z, 0) 468 | cor.z = cor.z+1 469 | cor.y = cor.y+1 470 | cor.z = cor.z-5 471 | 472 | for i in range(len(d2)): 473 | if d2[i]==1: 474 | craft.setBlock(cor.x, cor.y, cor.z, 4) 475 | elif d2[i]==2: 476 | craft.setBlock(cor.x, cor.y, cor.z, 20) 477 | cor.z = cor.z+1 478 | cor.y = cor.y+1 479 | cor.z = cor.z-5 480 | 481 | for i in range(len(d1)): 482 | if d1[i]==1: 483 | craft.setBlock(cor.x, cor.y, cor.z, 4) 484 | elif d1[i]==0: 485 | craft.setBlock(cor.x, cor.y, cor.z, 0) 486 | cor.z = cor.z+1 487 | 488 | # строим четвёртую стену 489 | cor.y =cor.y -8 490 | craft.setBlocks(cor.x, cor.y,cor.z-5, cor.x+4, cor.y+8, cor.z-5, 4) 491 | 492 | # строим крышу 493 | craft.setBlocks(cor.x, cor.y+9,cor.z, cor.x+4, cor.y+9, cor.z-5, 20) 494 | 495 | def bashny(self): 496 | # Создаём первую опору башни 497 | for i in range (5): 498 | craft.setBlock(x+i,y+i,z, block.STONE.id) 499 | 500 | # Создаём вторую опору башни 501 | for i in range (5): 502 | craft.setBlock(x+10+i,y+4-i,z, block.STONE.id) 503 | 504 | # Создаём площадку на высоте y+5 505 | craft.setBlocks(x+5,y+5,z,x+10, y+5, z+5, block.STONE.id) 506 | 507 | # Создаём третью опору 508 | for i in range (5): 509 | craft.setBlock(x+10+i,y+4-i,z+5, block.STONE.id) 510 | 511 | # Создаём четвёртую опору 512 | for i in range (5): 513 | craft.setBlock(x+i,y+i,z+5, block.STONE.id) 514 | 515 | # Создаём четыре опоры на высоте y+5 516 | for w in range(5): 517 | craft.setBlock(x+5,y+5+w,z, block.STONE.id) 518 | craft.setBlock(x+10,y+5+w,z, block.STONE.id) 519 | craft.setBlock(x+5,y+5+w,z+5, block.STONE.id) 520 | craft.setBlock(x+10,y+5+w,z+5, block.STONE.id) 521 | 522 | #создаём площадку на высоте y+10 523 | craft.setBlocks(x+5,y+10,z,x+10, y+10, z+5, block.STONE.id) 524 | 525 | #Создаём две опоры для третьей площадки-крыши 526 | for i in range (3): 527 | craft.setBlock(x+5+i,y+11+i,z, block.STONE.id) 528 | for i in range (3): 529 | craft.setBlock(x+8+i,y+13-i,z, block.STONE.id) 530 | 531 | #Создание третьей площадки-крыши 532 | craft.setBlocks(x+7,y+13,z,x+8, y+13, z+5, block.STONE.id) 533 | 534 | # Создание двух оставшихся опор от второй до третьей площадки 535 | for i in range (3): 536 | craft.setBlock(x+5+i,y+11+i,z+5, block.STONE.id) 537 | for i in range (3): 538 | craft.setBlock(x+8+i,y+13-i,z+5, block.STONE.id) 539 | 540 | # Создание в центре башни на второй площадке куба из Золотых и стеклянных блоков с центральным блоком - лава. 541 | craft.setBlocks(x+7,y+6,z+2,x+8, y+6, z+3, block.GOLD_BLOCK.id) 542 | craft.setBlocks(x+6,y+7,z+1,x+9, y+8, z+4, block.GLASS.id) 543 | craft.setBlocks(x+7,y+7,z+2,x+8, y+8, z+3, block.LAVA_FLOWING .id) 544 | craft.setBlocks(x+7,y+9,z+2,x+8, y+9, z+3, block.GOLD_BLOCK.id) 545 | 546 | def most(self): 547 | # Создание четырёх опор моста 548 | craft.setBlocks(x+1,y,z, x+1, y+15, z, 98) 549 | craft.setBlocks(x+6,y,z, x+6, y+15, z, 98) 550 | 551 | craft.setBlocks(x+1,y,z+30, x+1, y+15, z+30, 98) 552 | craft.setBlocks(x+6,y,z+30, x+6, y+15, z+30, 98) 553 | 554 | # Создание площадки моста 555 | craft.setBlocks(x+1,y+5,z, x+6, y+5, z+30, 98) 556 | 557 | # Создание опор для каната 558 | for i in range(5, 30, 10): 559 | craft.setBlocks(x+1,y+5,z+i, x+1, y+10, z+i, 98) 560 | for i in range(10, 30, 10): 561 | craft.setBlocks(x+1,y+5,z+i, x+1, y+15, z+i, 45) 562 | for i in range(5, 30, 10): 563 | craft.setBlocks(x+6,y+5,z+i, x+6, y+10, z+i, 45) 564 | for i in range(10, 30, 10): 565 | craft.setBlocks(x+6,y+5,z+i, x+6, y+15, z+i, 98) 566 | 567 | # Создание каната с одной стороны моста 568 | for i in range(5): 569 | craft.setBlock(x+1,y+15-i,z+i, 22) 570 | for i in range(5): 571 | craft.setBlock(x+1,y+11+i,z+5+i, 22) 572 | for i in range(5): 573 | craft.setBlock(x+1,y+15-i,z+10+i, 22) 574 | for i in range(5): 575 | craft.setBlock(x+1,y+11+i,z+15+i, 22) 576 | for i in range(5): 577 | craft.setBlock(x+1,y+15-i,z++20+i, 22) 578 | for i in range(5): 579 | craft.setBlock(x+1,y+11+i,z+25+i, 22) 580 | 581 | # Создание каната с другой стороны моста 582 | for i in range(5): 583 | craft.setBlock(x+6,y+15-i,z+i, 22) 584 | for i in range(5): 585 | craft.setBlock(x+6,y+11+i,z+5+i, 22) 586 | for i in range(5): 587 | craft.setBlock(x+6,y+15-i,z+10+i, 22) 588 | for i in range(5): 589 | craft.setBlock(x+6,y+11+i,z+15+i, 22) 590 | for i in range(5): 591 | craft.setBlock(x+6,y+15-i,z++20+i, 22) 592 | for i in range(5): 593 | craft.setBlock(x+6,y+11+i,z+25+i, 22) 594 | 595 | # Продолжение канатов до земли 596 | for i in range(17): 597 | craft.setBlock(x+6,y+15-i,z-0.5*i, 22) 598 | for i in range(17): 599 | craft.setBlock(x+1,y+15-i,z-0.5*i, 22) 600 | for i in range(17): 601 | craft.setBlock(x+6,y+15-i,z+30+0.5*i, 22) 602 | for i in range(17): 603 | craft.setBlock(x+1,y+15-i,z+30 + 0.5*i, 22) 604 | 605 | # Создание лестниц на мост 606 | for i in range(5): 607 | craft.setBlocks(x+1,y+i,z-5+i,x+6, y+i, z-5+i, 35,14) 608 | for i in range(5): 609 | craft.setBlocks(x+1,y+i,z+35-i,x+6, y+i, z+35-i, 35,14) 610 | 611 | # Создание фрагмента реки 612 | craft.setBlocks(x-10, y-1, z+3, x+10, y-1, z+27, 8) 613 | 614 | for k in range (len(d11)): 615 | if d11[k]==3: 616 | bashny() 617 | elif d11[k]==0: 618 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 619 | elif d11[k]==13: 620 | dom_E() 621 | cor.z =cor.z+20 622 | x=cor.x 623 | y=cor.y 624 | z=cor.z 625 | cor.z = cor.z - 20*len(d11) 626 | cor.x = cor.x + 15 627 | 628 | for k in range (len(d21)): 629 | if d21[k]==22: 630 | dom2_S() 631 | cor.z=cor.z-5 632 | elif d21[k]==14: 633 | dom_W() 634 | 635 | cor.z =cor.z+20 636 | x=cor.x 637 | y=cor.y 638 | z=cor.z 639 | cor.z = cor.z -20*len(d21) 640 | cor.x = cor.x + 15 641 | 642 | for k in range (len(d31)): 643 | if d31[k]==22: 644 | dom2_S() 645 | cor.z=cor.z-5 646 | elif d31[k]==21: 647 | dom2_N() 648 | cor.z=cor.z-5 649 | elif d31[k]==0: 650 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 651 | 652 | cor.z =cor.z+20 653 | x=cor.x 654 | y=cor.y 655 | z=cor.z 656 | cor.z = cor.z -20*len(d21) 657 | cor.x = cor.x + 15 658 | 659 | for k in range (len(d41)): 660 | if d41[k]==22: 661 | dom2_S() 662 | cor.z=cor.z-5 663 | elif d41[k]==21: 664 | dom2_N() 665 | cor.z=cor.z-5 666 | elif d41[k]==0: 667 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 668 | elif d41[k]==4: 669 | most() 670 | cor.z=cor.z + 38 671 | 672 | cor.z =cor.z+20 673 | x=cor.x 674 | y=cor.y 675 | z=cor.z 676 | cor.z = cor.z -20*len(d21) 677 | cor.x = cor.x + 15 678 | 679 | 680 | for k in range (len(d31)): 681 | if d31[k]==22: 682 | dom2_S() 683 | cor.z=cor.z-5 684 | elif d31[k]==21: 685 | dom2_N() 686 | cor.z=cor.z-5 687 | elif d31[k]==0: 688 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 689 | 690 | cor.z =cor.z+20 691 | x=cor.x 692 | y=cor.y 693 | z=cor.z 694 | cor.z = cor.z -20*len(d31) 695 | cor.x = cor.x + 15 696 | 697 | for k in range (len(d61)): 698 | if d61[k]==22: 699 | dom2_S() 700 | cor.z=cor.z-5 701 | elif d61[k]==14: 702 | dom_W() 703 | elif d61[k]==0: 704 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 705 | elif d61[k]==21: 706 | dom2_N() 707 | cor.z=cor.z-5 708 | cor.z =cor.z+20 709 | x=cor.x 710 | y=cor.y 711 | z=cor.z 712 | cor.z = cor.z -20*len(d21) 713 | 714 | cor=craft.player.getTilePos () 715 | cor.x = cor.x + 100 716 | x = cor.x 717 | y= cor.y 718 | z= cor.z 719 | 720 | for k in range (len(d51)): 721 | if d51[k]==3: 722 | bashny() 723 | elif d51[k]==0: 724 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 725 | elif d51[k]==13: 726 | dom_E() 727 | cor.z =cor.z+20 728 | x=cor.x 729 | y=cor.y 730 | z=cor.z 731 | 732 | 733 | -------------------------------------------------------------------------------- /street1.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import mcpi.block as block 3 | import time 4 | import random 5 | craft=minecraft.Minecraft.create() 6 | cor=craft.player.getTilePos () 7 | 8 | craft.setBlocks(cor.x, cor.y-1, cor.z, cor.x+110, cor.y-1, cor.z+200, 7) 9 | x=cor.x 10 | y=cor.y 11 | z=cor.z 12 | craft.setBlocks(x,y,z,x+120, y+20, z+200, block.AIR.id) 13 | #11 - dom_N 14 | #12 - dom_S 15 | #13 - dom_E 16 | #14 - dom_W 17 | #21 - dom2_N 18 | #22 - dom2_S 19 | #3 - bashny 20 | #4 - most 21 | d11 = [3, 0, 13, 13, 13, 13, 13, 0, 3, 0] 22 | d21 = [22, 0, 14, 14, 14, 14, 14, 0, 21, 0] 23 | d31 = [22, 0, 21, 0, 0, 0, 22, 0, 21, 0] 24 | d41 = [22, 0, 21, 4, 22, 0, 21, 0] 25 | d51 = [3, 0, 14, 14, 14, 14, 14, 0, 3, 0] 26 | d61 = [22, 0, 13, 13, 13, 13, 13, 0, 21, 0] 27 | def dom_N(): 28 | sx = cor.x +2+ 5/2 # центр по X 29 | 30 | sy = cor.y + 5/2 # центр по Y 31 | 32 | sz = cor.z+5/2 # центр по Z 33 | 34 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 35 | 36 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 37 | 38 | craft.setBlocks(sx-1, cor.y+1, cor.z, sx, cor.y+2, cor.z, block.AIR.id) 39 | 40 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 41 | 42 | craft.setBlocks(sx-2, sy+1, cor.z, sx-2, sy+2, cor.z, block.GLASS.id) 43 | 44 | 45 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 46 | 47 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 48 | 49 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 50 | 51 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 52 | 53 | 54 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 55 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 56 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 57 | 58 | def dom_S(): 59 | sx = cor.x +2+ 5/2 # центр по X 60 | 61 | sy = cor.y + 5/2 # центр по Y 62 | 63 | sz = cor.z+5/2 # центр по Z 64 | 65 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 66 | 67 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 68 | 69 | craft.setBlocks(sx-1, cor.y+1, cor.z+5, sx, cor.y+2, cor.z+5, block.AIR.id) 70 | 71 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 72 | 73 | craft.setBlocks(sx-2, sy+1, cor.z+5, sx-2, sy+2, cor.z+5, block.GLASS.id) 74 | 75 | 76 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 77 | 78 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 79 | 80 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 81 | 82 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 83 | 84 | 85 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 86 | craft.setBlocks(cor.x+2, cor.y+7, cor.z, cor.x+5, cor.y+7, cor.z+5, block.IRON_BLOCK.id) 87 | craft.setBlocks(cor.x+3, cor.y+8, cor.z, cor.x+4, cor.y+8, cor.z+5, block.IRON_BLOCK.id) 88 | 89 | def dom_E(): 90 | sx = cor.x +2+ 5/2 # центр по X 91 | 92 | sy = cor.y + 5/2 # центр по Y 93 | 94 | sz = cor.z+5/2 # центр по Z 95 | 96 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 97 | 98 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 99 | 100 | 101 | 102 | craft.setBlocks(cor.x+6, cor.y+1, sz, cor.x+6, cor.y+2, sz+1, block.AIR.id) 103 | 104 | craft.setBlocks(cor.x+6, sy+1, sz+2, cor.x+6, sy+2, sz+2, block.GLASS.id) 105 | 106 | craft.setBlocks(cor.x+6, sy+1, sz-1, cor.x+6, sy+2, sz-1, block.GLASS.id) 107 | 108 | 109 | craft.setBlocks(sx-1, sy+1, cor.z, sx-1, sy+2, cor.z, block.GLASS.id) 110 | 111 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 112 | 113 | craft.setBlocks(sx-1, sy+1, cor.z+5, sx-1, sy+2, cor.z+5, block.GLASS.id) 114 | 115 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 116 | 117 | 118 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 119 | craft.setBlocks(cor.x+1, cor.y+7, cor.z+1, cor.x+6, cor.y+7, cor.z+4, block.IRON_BLOCK.id) 120 | craft.setBlocks(cor.x+1, cor.y+8, cor.z+2, cor.x+6, cor.y+8, cor.z+3, block.IRON_BLOCK.id) 121 | 122 | def dom_W(): 123 | sx = cor.x +2+ 5/2 # центр по X 124 | 125 | sy = cor.y + 5/2 # центр по Y 126 | 127 | sz = cor.z+5/2 # центр по Z 128 | 129 | craft.setBlocks(cor.x+1, cor.y, cor.z, cor.x+6, cor.y+5, cor.z+5, block.GOLD_BLOCK.id) 130 | 131 | craft.setBlocks(cor.x+2, cor.y+1, cor.z+1, cor.x+5, cor.y+4, cor.z+4, block.AIR.id) 132 | 133 | craft.setBlocks(cor.x+1, cor.y+1, sz, cor.x+1, cor.y+2, sz+1, block.AIR.id) 134 | 135 | craft.setBlocks(cor.x+1, sy+1, sz+2, cor.x+1, sy+2, sz+2, block.GLASS.id) 136 | 137 | craft.setBlocks(cor.x+1, sy+1, sz-1, cor.x+1, sy+2, sz-1, block.GLASS.id) 138 | 139 | craft.setBlocks(sx-1, sy+1, cor.z, sx-1, sy+2, cor.z, block.GLASS.id) 140 | 141 | craft.setBlocks(sx+1, sy+1, cor.z, sx+1, sy+2, cor.z, block.GLASS.id) 142 | 143 | craft.setBlocks(sx-1, sy+1, cor.z+5, sx-1, sy+2, cor.z+5, block.GLASS.id) 144 | 145 | craft.setBlocks(sx+1, sy+1, cor.z+5, sx+1, sy+2, cor.z+5, block.GLASS.id) 146 | 147 | 148 | craft.setBlocks(cor.x+1, cor.y+6, cor.z, cor.x+6, cor.y+6, cor.z+5, block.IRON_BLOCK.id) 149 | craft.setBlocks(cor.x+1, cor.y+7, cor.z+1, cor.x+6, cor.y+7, cor.z+4, block.IRON_BLOCK.id) 150 | craft.setBlocks(cor.x+1, cor.y+8, cor.z+2, cor.x+6, cor.y+8, cor.z+3, block.IRON_BLOCK.id) 151 | 152 | def dom2_N(): 153 | d1 = [1, 1, 1, 1, 1] 154 | d2 = [1, 2, 1, 2, 1] 155 | d3 = [1, 1, 0, 1, 1] 156 | 157 | #Строим два первых ряда со входом 158 | for j in range(2): 159 | for i in range(len(d3)): 160 | if d3[i]==1: 161 | craft.setBlock(cor.x, cor.y, cor.z, 4) 162 | elif d3[i]==0: 163 | craft.setBlock(cor.x, cor.y, cor.z, 0) 164 | cor.x = cor.x+1 165 | cor.y = cor.y+1 166 | cor.x = cor.x-5 167 | 168 | # строим двасплошных ряда блоков 169 | for j in range(2): 170 | for i in range(len(d1)): 171 | if d1[i]==1: 172 | craft.setBlock(cor.x, cor.y, cor.z, 4) 173 | elif d1[i]==0: 174 | craft.setBlock(cor.x, cor.y, cor.z, 0) 175 | cor.x = cor.x+1 176 | cor.y = cor.y+1 177 | cor.x = cor.x-5 178 | 179 | # строим ряд блоков с окнами 180 | for i in range(len(d2)): 181 | if d2[i]==1: 182 | craft.setBlock(cor.x, cor.y, cor.z, 4) 183 | elif d2[i]==2: 184 | craft.setBlock(cor.x, cor.y, cor.z, 20) 185 | cor.x = cor.x+1 186 | cor.y = cor.y+1 187 | cor.x = cor.x-5 188 | 189 | # строим двасплошных ряда блоков 190 | for j in range(2): 191 | for i in range(len(d1)): 192 | if d1[i]==1: 193 | craft.setBlock(cor.x, cor.y, cor.z, 4) 194 | elif d1[i]==0: 195 | craft.setBlock(cor.x, cor.y, cor.z, 0) 196 | cor.x = cor.x+1 197 | cor.y = cor.y+1 198 | cor.x = cor.x-5 199 | 200 | # строим ряд блоков с окнами 201 | for i in range(len(d2)): 202 | if d2[i]==1: 203 | craft.setBlock(cor.x, cor.y, cor.z, 4) 204 | elif d2[i]==2: 205 | craft.setBlock(cor.x, cor.y, cor.z, 20) 206 | cor.x = cor.x+1 207 | cor.y = cor.y+1 208 | cor.x = cor.x-5 209 | 210 | for i in range(len(d1)): 211 | if d1[i]==1: 212 | craft.setBlock(cor.x, cor.y, cor.z, 4) 213 | elif d1[i]==0: 214 | craft.setBlock(cor.x, cor.y, cor.z, 0) 215 | cor.x = cor.x+1 216 | 217 | # строим вторую стену 218 | cor.y =cor.y - 8 219 | cor.x=cor.x-1 220 | 221 | for j in range(4): 222 | for i in range(len(d1)): 223 | if d1[i]==1: 224 | craft.setBlock(cor.x, cor.y, cor.z, 4) 225 | elif d1[i]==0: 226 | craft.setBlock(cor.x, cor.y, cor.z, 0) 227 | cor.z = cor.z+1 228 | cor.y = cor.y+1 229 | cor.z = cor.z-5 230 | 231 | for i in range(len(d2)): 232 | if d2[i]==1: 233 | craft.setBlock(cor.x, cor.y, cor.z, 4) 234 | elif d2[i]==2: 235 | craft.setBlock(cor.x, cor.y, cor.z, 20) 236 | cor.z = cor.z+1 237 | cor.y = cor.y+1 238 | cor.z = cor.z-5 239 | 240 | for j in range(2): 241 | for i in range(len(d1)): 242 | if d1[i]==1: 243 | craft.setBlock(cor.x, cor.y, cor.z, 4) 244 | elif d1[i]==0: 245 | craft.setBlock(cor.x, cor.y, cor.z, 0) 246 | cor.z = cor.z+1 247 | cor.y = cor.y+1 248 | cor.z = cor.z-5 249 | 250 | for i in range(len(d2)): 251 | if d2[i]==1: 252 | craft.setBlock(cor.x, cor.y, cor.z, 4) 253 | elif d2[i]==2: 254 | craft.setBlock(cor.x, cor.y, cor.z, 20) 255 | cor.z = cor.z+1 256 | cor.y = cor.y+1 257 | cor.z = cor.z-5 258 | 259 | for i in range(len(d1)): 260 | if d1[i]==1: 261 | craft.setBlock(cor.x, cor.y, cor.z, 4) 262 | elif d1[i]==0: 263 | craft.setBlock(cor.x, cor.y, cor.z, 0) 264 | cor.z = cor.z+1 265 | cor.y = cor.y+1 266 | cor.z = cor.z-5 267 | 268 | # строим третью стену 269 | cor.y =cor.y - 9 270 | cor.x=cor.x-4 271 | 272 | for j in range(4): 273 | for i in range(len(d1)): 274 | if d1[i]==1: 275 | craft.setBlock(cor.x, cor.y, cor.z, 4) 276 | elif d1[i]==0: 277 | craft.setBlock(cor.x, cor.y, cor.z, 0) 278 | cor.z = cor.z+1 279 | cor.y = cor.y+1 280 | cor.z = cor.z-5 281 | 282 | for i in range(len(d2)): 283 | if d2[i]==1: 284 | craft.setBlock(cor.x, cor.y, cor.z, 4) 285 | elif d2[i]==2: 286 | craft.setBlock(cor.x, cor.y, cor.z, 20) 287 | cor.z = cor.z+1 288 | cor.y = cor.y+1 289 | cor.z = cor.z-5 290 | 291 | for j in range(2): 292 | for i in range(len(d1)): 293 | if d1[i]==1: 294 | craft.setBlock(cor.x, cor.y, cor.z, 4) 295 | elif d1[i]==0: 296 | craft.setBlock(cor.x, cor.y, cor.z, 0) 297 | cor.z = cor.z+1 298 | cor.y = cor.y+1 299 | cor.z = cor.z-5 300 | 301 | for i in range(len(d2)): 302 | if d2[i]==1: 303 | craft.setBlock(cor.x, cor.y, cor.z, 4) 304 | elif d2[i]==2: 305 | craft.setBlock(cor.x, cor.y, cor.z, 20) 306 | cor.z = cor.z+1 307 | cor.y = cor.y+1 308 | cor.z = cor.z-5 309 | 310 | for i in range(len(d1)): 311 | if d1[i]==1: 312 | craft.setBlock(cor.x, cor.y, cor.z, 4) 313 | elif d1[i]==0: 314 | craft.setBlock(cor.x, cor.y, cor.z, 0) 315 | cor.z = cor.z+1 316 | 317 | # строим четвёртую стену 318 | cor.y =cor.y -8 319 | craft.setBlocks(cor.x, cor.y,cor.z, cor.x+4, cor.y+8, cor.z, 4) 320 | 321 | # строим крышу 322 | craft.setBlocks(cor.x, cor.y+9,cor.z, cor.x+4, cor.y+9, cor.z-5, 20) 323 | 324 | def dom2_S(): 325 | d1 = [1, 1, 1, 1, 1] 326 | d2 = [1, 2, 1, 2, 1] 327 | d3 = [1, 1, 0, 1, 1] 328 | 329 | #Строим два первых ряда со входом 330 | for j in range(2): 331 | for i in range(len(d3)): 332 | if d3[i]==1: 333 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 334 | elif d3[i]==0: 335 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 336 | cor.x = cor.x+1 337 | cor.y = cor.y+1 338 | cor.x = cor.x-5 339 | 340 | # строим двасплошных ряда блоков 341 | for j in range(2): 342 | for i in range(len(d1)): 343 | if d1[i]==1: 344 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 345 | elif d1[i]==0: 346 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 347 | cor.x = cor.x+1 348 | cor.y = cor.y+1 349 | cor.x = cor.x-5 350 | 351 | # строим ряд блоков с окнами 352 | for i in range(len(d2)): 353 | if d2[i]==1: 354 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 355 | elif d2[i]==2: 356 | craft.setBlock(cor.x, cor.y, cor.z+5, 20) 357 | cor.x = cor.x+1 358 | cor.y = cor.y+1 359 | cor.x = cor.x-5 360 | 361 | # строим двасплошных ряда блоков 362 | for j in range(2): 363 | for i in range(len(d1)): 364 | if d1[i]==1: 365 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 366 | elif d1[i]==0: 367 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 368 | cor.x = cor.x+1 369 | cor.y = cor.y+1 370 | cor.x = cor.x-5 371 | 372 | # строим ряд блоков с окнами 373 | for i in range(len(d2)): 374 | if d2[i]==1: 375 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 376 | elif d2[i]==2: 377 | craft.setBlock(cor.x, cor.y, cor.z+5, 20) 378 | cor.x = cor.x+1 379 | cor.y = cor.y+1 380 | cor.x = cor.x-5 381 | 382 | for i in range(len(d1)): 383 | if d1[i]==1: 384 | craft.setBlock(cor.x, cor.y, cor.z+5, 4) 385 | elif d1[i]==0: 386 | craft.setBlock(cor.x, cor.y, cor.z+5, 0) 387 | cor.x = cor.x+1 388 | 389 | # строим вторую стену 390 | cor.y =cor.y - 8 391 | cor.x=cor.x-1 392 | 393 | for j in range(4): 394 | for i in range(len(d1)): 395 | if d1[i]==1: 396 | craft.setBlock(cor.x, cor.y, cor.z, 4) 397 | elif d1[i]==0: 398 | craft.setBlock(cor.x, cor.y, cor.z, 0) 399 | cor.z = cor.z+1 400 | cor.y = cor.y+1 401 | cor.z = cor.z-5 402 | 403 | for i in range(len(d2)): 404 | if d2[i]==1: 405 | craft.setBlock(cor.x, cor.y, cor.z, 4) 406 | elif d2[i]==2: 407 | craft.setBlock(cor.x, cor.y, cor.z, 20) 408 | cor.z = cor.z+1 409 | cor.y = cor.y+1 410 | cor.z = cor.z-5 411 | 412 | for j in range(2): 413 | for i in range(len(d1)): 414 | if d1[i]==1: 415 | craft.setBlock(cor.x, cor.y, cor.z, 4) 416 | elif d1[i]==0: 417 | craft.setBlock(cor.x, cor.y, cor.z, 0) 418 | cor.z = cor.z+1 419 | cor.y = cor.y+1 420 | cor.z = cor.z-5 421 | 422 | for i in range(len(d2)): 423 | if d2[i]==1: 424 | craft.setBlock(cor.x, cor.y, cor.z, 4) 425 | elif d2[i]==2: 426 | craft.setBlock(cor.x, cor.y, cor.z, 20) 427 | cor.z = cor.z+1 428 | cor.y = cor.y+1 429 | cor.z = cor.z-5 430 | 431 | for i in range(len(d1)): 432 | if d1[i]==1: 433 | craft.setBlock(cor.x, cor.y, cor.z, 4) 434 | elif d1[i]==0: 435 | craft.setBlock(cor.x, cor.y, cor.z, 0) 436 | cor.z = cor.z+1 437 | cor.y = cor.y+1 438 | cor.z = cor.z-5 439 | 440 | # строим третью стену 441 | cor.y =cor.y - 9 442 | cor.x=cor.x-4 443 | 444 | for j in range(4): 445 | for i in range(len(d1)): 446 | if d1[i]==1: 447 | craft.setBlock(cor.x, cor.y, cor.z, 4) 448 | elif d1[i]==0: 449 | craft.setBlock(cor.x, cor.y, cor.z, 0) 450 | cor.z = cor.z+1 451 | cor.y = cor.y+1 452 | cor.z = cor.z-5 453 | 454 | for i in range(len(d2)): 455 | if d2[i]==1: 456 | craft.setBlock(cor.x, cor.y, cor.z, 4) 457 | elif d2[i]==2: 458 | craft.setBlock(cor.x, cor.y, cor.z, 20) 459 | cor.z = cor.z+1 460 | cor.y = cor.y+1 461 | cor.z = cor.z-5 462 | 463 | for j in range(2): 464 | for i in range(len(d1)): 465 | if d1[i]==1: 466 | craft.setBlock(cor.x, cor.y, cor.z, 4) 467 | elif d1[i]==0: 468 | craft.setBlock(cor.x, cor.y, cor.z, 0) 469 | cor.z = cor.z+1 470 | cor.y = cor.y+1 471 | cor.z = cor.z-5 472 | 473 | for i in range(len(d2)): 474 | if d2[i]==1: 475 | craft.setBlock(cor.x, cor.y, cor.z, 4) 476 | elif d2[i]==2: 477 | craft.setBlock(cor.x, cor.y, cor.z, 20) 478 | cor.z = cor.z+1 479 | cor.y = cor.y+1 480 | cor.z = cor.z-5 481 | 482 | for i in range(len(d1)): 483 | if d1[i]==1: 484 | craft.setBlock(cor.x, cor.y, cor.z, 4) 485 | elif d1[i]==0: 486 | craft.setBlock(cor.x, cor.y, cor.z, 0) 487 | cor.z = cor.z+1 488 | 489 | # строим четвёртую стену 490 | cor.y =cor.y -8 491 | craft.setBlocks(cor.x, cor.y,cor.z-5, cor.x+4, cor.y+8, cor.z-5, 4) 492 | 493 | # строим крышу 494 | craft.setBlocks(cor.x, cor.y+9,cor.z, cor.x+4, cor.y+9, cor.z-5, 20) 495 | 496 | def bashny(): 497 | # Создаём первую опору башни 498 | for i in range (5): 499 | craft.setBlock(x+i,y+i,z, block.STONE.id) 500 | 501 | # Создаём вторую опору башни 502 | for i in range (5): 503 | craft.setBlock(x+10+i,y+4-i,z, block.STONE.id) 504 | 505 | # Создаём площадку на высоте y+5 506 | craft.setBlocks(x+5,y+5,z,x+10, y+5, z+5, block.STONE.id) 507 | 508 | # Создаём третью опору 509 | for i in range (5): 510 | craft.setBlock(x+10+i,y+4-i,z+5, block.STONE.id) 511 | 512 | # Создаём четвёртую опору 513 | for i in range (5): 514 | craft.setBlock(x+i,y+i,z+5, block.STONE.id) 515 | 516 | # Создаём четыре опоры на высоте y+5 517 | for w in range(5): 518 | craft.setBlock(x+5,y+5+w,z, block.STONE.id) 519 | craft.setBlock(x+10,y+5+w,z, block.STONE.id) 520 | craft.setBlock(x+5,y+5+w,z+5, block.STONE.id) 521 | craft.setBlock(x+10,y+5+w,z+5, block.STONE.id) 522 | 523 | #создаём площадку на высоте y+10 524 | craft.setBlocks(x+5,y+10,z,x+10, y+10, z+5, block.STONE.id) 525 | 526 | #Создаём две опоры для третьей площадки-крыши 527 | for i in range (3): 528 | craft.setBlock(x+5+i,y+11+i,z, block.STONE.id) 529 | for i in range (3): 530 | craft.setBlock(x+8+i,y+13-i,z, block.STONE.id) 531 | 532 | #Создание третьей площадки-крыши 533 | craft.setBlocks(x+7,y+13,z,x+8, y+13, z+5, block.STONE.id) 534 | 535 | # Создание двух оставшихся опор от второй до третьей площадки 536 | for i in range (3): 537 | craft.setBlock(x+5+i,y+11+i,z+5, block.STONE.id) 538 | for i in range (3): 539 | craft.setBlock(x+8+i,y+13-i,z+5, block.STONE.id) 540 | 541 | # Создание в центре башни на второй площадке куба из Золотых и стеклянных блоков с центральным блоком - лава. 542 | craft.setBlocks(x+7,y+6,z+2,x+8, y+6, z+3, block.GOLD_BLOCK.id) 543 | craft.setBlocks(x+6,y+7,z+1,x+9, y+8, z+4, block.GLASS.id) 544 | craft.setBlocks(x+7,y+7,z+2,x+8, y+8, z+3, block.LAVA_FLOWING .id) 545 | craft.setBlocks(x+7,y+9,z+2,x+8, y+9, z+3, block.GOLD_BLOCK.id) 546 | 547 | def most(): 548 | # Создание четырёх опор моста 549 | craft.setBlocks(x+1,y,z, x+1, y+15, z, 98) 550 | craft.setBlocks(x+6,y,z, x+6, y+15, z, 98) 551 | 552 | craft.setBlocks(x+1,y,z+30, x+1, y+15, z+30, 98) 553 | craft.setBlocks(x+6,y,z+30, x+6, y+15, z+30, 98) 554 | 555 | # Создание площадки моста 556 | craft.setBlocks(x+1,y+5,z, x+6, y+5, z+30, 98) 557 | 558 | # Создание опор для каната 559 | for i in range(5, 30, 10): 560 | craft.setBlocks(x+1,y+5,z+i, x+1, y+10, z+i, 98) 561 | for i in range(10, 30, 10): 562 | craft.setBlocks(x+1,y+5,z+i, x+1, y+15, z+i, 45) 563 | for i in range(5, 30, 10): 564 | craft.setBlocks(x+6,y+5,z+i, x+6, y+10, z+i, 45) 565 | for i in range(10, 30, 10): 566 | craft.setBlocks(x+6,y+5,z+i, x+6, y+15, z+i, 98) 567 | 568 | # Создание каната с одной стороны моста 569 | for i in range(5): 570 | craft.setBlock(x+1,y+15-i,z+i, 22) 571 | for i in range(5): 572 | craft.setBlock(x+1,y+11+i,z+5+i, 22) 573 | for i in range(5): 574 | craft.setBlock(x+1,y+15-i,z+10+i, 22) 575 | for i in range(5): 576 | craft.setBlock(x+1,y+11+i,z+15+i, 22) 577 | for i in range(5): 578 | craft.setBlock(x+1,y+15-i,z++20+i, 22) 579 | for i in range(5): 580 | craft.setBlock(x+1,y+11+i,z+25+i, 22) 581 | 582 | # Создание каната с другой стороны моста 583 | for i in range(5): 584 | craft.setBlock(x+6,y+15-i,z+i, 22) 585 | for i in range(5): 586 | craft.setBlock(x+6,y+11+i,z+5+i, 22) 587 | for i in range(5): 588 | craft.setBlock(x+6,y+15-i,z+10+i, 22) 589 | for i in range(5): 590 | craft.setBlock(x+6,y+11+i,z+15+i, 22) 591 | for i in range(5): 592 | craft.setBlock(x+6,y+15-i,z++20+i, 22) 593 | for i in range(5): 594 | craft.setBlock(x+6,y+11+i,z+25+i, 22) 595 | 596 | # Продолжение канатов до земли 597 | for i in range(17): 598 | craft.setBlock(x+6,y+15-i,z-0.5*i, 22) 599 | for i in range(17): 600 | craft.setBlock(x+1,y+15-i,z-0.5*i, 22) 601 | for i in range(17): 602 | craft.setBlock(x+6,y+15-i,z+30+0.5*i, 22) 603 | for i in range(17): 604 | craft.setBlock(x+1,y+15-i,z+30 + 0.5*i, 22) 605 | 606 | # Создание лестниц на мост 607 | for i in range(5): 608 | craft.setBlocks(x+1,y+i,z-5+i,x+6, y+i, z-5+i, 35,14) 609 | for i in range(5): 610 | craft.setBlocks(x+1,y+i,z+35-i,x+6, y+i, z+35-i, 35,14) 611 | 612 | # Создание фрагмента реки 613 | craft.setBlocks(x-10, y-1, z+3, x+10, y-1, z+27, 8) 614 | 615 | def avto1(): 616 | 617 | craft.setBlocks(x, y, z, x+1, y+2, z+4, 5) 618 | craft.setBlocks(x, y+1, z, x+1, y+2, z, 0) 619 | craft.setBlocks(x, y+1, z+2, x+1, y+1, z+2, 0) 620 | craft.setBlocks(x, y+1, z+4, x+1, y+2, z+4, 0) 621 | def avto2(): 622 | 623 | craft.setBlocks(x, y, z, x+4, y+2, z+1, 5) 624 | craft.setBlocks(x, y+1, z, x, y+2, z+1, 0) 625 | craft.setBlocks(x+2, y+1, z, x+2, y+1, z+1, 0) 626 | craft.setBlocks(x+4, y+1, z, x+4, y+2, z+1, 0) 627 | 628 | 629 | for k in range (len(d11)): 630 | if d11[k]==3: 631 | bashny() 632 | elif d11[k]==0: 633 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 634 | elif d11[k]==13: 635 | dom_E() 636 | cor.z =cor.z+20 637 | x=cor.x 638 | y=cor.y 639 | z=cor.z 640 | cor.z = cor.z - 20*len(d11) 641 | cor.x = cor.x + 15 642 | 643 | for k in range (len(d21)): 644 | if d21[k]==22: 645 | dom2_S() 646 | cor.z=cor.z-5 647 | elif d21[k]==14: 648 | dom_W() 649 | 650 | cor.z =cor.z+20 651 | x=cor.x 652 | y=cor.y 653 | z=cor.z 654 | cor.z = cor.z -20*len(d21) 655 | cor.x = cor.x + 15 656 | 657 | for k in range (len(d31)): 658 | if d31[k]==22: 659 | dom2_S() 660 | cor.z=cor.z-5 661 | elif d31[k]==21: 662 | dom2_N() 663 | cor.z=cor.z-5 664 | elif d31[k]==0: 665 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 666 | 667 | cor.z =cor.z+20 668 | x=cor.x 669 | y=cor.y 670 | z=cor.z 671 | cor.z = cor.z -20*len(d21) 672 | cor.x = cor.x + 15 673 | 674 | for k in range (len(d41)): 675 | if d41[k]==22: 676 | dom2_S() 677 | cor.z=cor.z-5 678 | elif d41[k]==21: 679 | dom2_N() 680 | cor.z=cor.z-5 681 | elif d41[k]==0: 682 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 683 | elif d41[k]==4: 684 | most() 685 | cor.z=cor.z + 38 686 | 687 | cor.z =cor.z+20 688 | x=cor.x 689 | y=cor.y 690 | z=cor.z 691 | cor.z = cor.z -20*len(d21) 692 | cor.x = cor.x + 15 693 | 694 | 695 | for k in range (len(d31)): 696 | if d31[k]==22: 697 | dom2_S() 698 | cor.z=cor.z-5 699 | elif d31[k]==21: 700 | dom2_N() 701 | cor.z=cor.z-5 702 | elif d31[k]==0: 703 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 704 | 705 | cor.z =cor.z+20 706 | x=cor.x 707 | y=cor.y 708 | z=cor.z 709 | cor.z = cor.z -20*len(d31) 710 | cor.x = cor.x + 15 711 | 712 | for k in range (len(d61)): 713 | if d61[k]==22: 714 | dom2_S() 715 | cor.z=cor.z-5 716 | elif d61[k]==13: 717 | dom_E() 718 | elif d61[k]==0: 719 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 720 | elif d61[k]==21: 721 | dom2_N() 722 | cor.z=cor.z-5 723 | cor.z =cor.z+20 724 | x=cor.x 725 | y=cor.y 726 | z=cor.z 727 | cor.z = cor.z -20*len(d21) 728 | 729 | cor=craft.player.getTilePos () 730 | cor.x = cor.x + 100 731 | x = cor.x 732 | y = cor.y 733 | z = cor.z 734 | 735 | for k in range (len(d51)): 736 | if d51[k]==3: 737 | bashny() 738 | elif d51[k]==0: 739 | craft.setBlocks(cor.x, cor.y, cor.z, cor.x+5, cor.y+5, cor.x+5, 0) 740 | elif d51[k]==14: 741 | dom_W() 742 | cor.z =cor.z+20 743 | x=cor.x 744 | y=cor.y 745 | z=cor.z 746 | 747 | cor=craft.player.getTilePos () 748 | 749 | a = cor.x+5 750 | b = cor.y 751 | d = cor.z+12 752 | c = [41,45,22] 753 | while True: 754 | x=a 755 | y=b 756 | z=d 757 | while True: 758 | for i in range(18): 759 | 760 | ff = random.randint(0, 2) 761 | craft.setBlocks(cor.x+20, cor.y-1, cor.z+10, cor.x+25, cor.y-1, cor.z+35, c[ff]) 762 | ff = random.randint(0, 2) 763 | craft.setBlocks(cor.x+88, cor.y-1, cor.z+40, cor.x+100, cor.y-1, cor.z+45, c[ff]) 764 | ff = random.randint(0, 2) 765 | craft.setBlocks(cor.x+70, cor.y-1, cor.z+125, cor.x+65, cor.y-1, cor.z+145, c[ff]) 766 | ff = random.randint(0, 2) 767 | craft.setBlocks(cor.x+5, cor.y-1, cor.z+40, cor.x+15, cor.y-1, cor.z+45, c[ff]) 768 | avto2() 769 | if craft.getBlock(x, y-1, z)==41: 770 | craft.postToChat("Стоим пять секунд ") 771 | time.sleep(5) 772 | elif craft.getBlock(x, y-1, z)==45: 773 | craft.postToChat("Стоим десять секунд ") 774 | time.sleep(10) 775 | elif craft.getBlock(x, y-1, z)==22: 776 | craft.postToChat("Движение открыто ") 777 | x=x+5 778 | time.sleep(0.5) 779 | craft.setBlocks(x-5, y, z, x, y+2, z+1, 0) 780 | 781 | for i in range(24): 782 | ff = random.randint(0, 2) 783 | craft.setBlocks(cor.x+20, cor.y-1, cor.z+10, cor.x+25, cor.y-1, cor.z+35, c[ff]) 784 | ff = random.randint(0, 2) 785 | craft.setBlocks(cor.x+88, cor.y-1, cor.z+40, cor.x+100, cor.y-1, cor.z+45, c[ff]) 786 | ff = random.randint(0, 2) 787 | craft.setBlocks(cor.x+70, cor.y-1, cor.z+125, cor.x+65, cor.y-1, cor.z+145, c[ff]) 788 | ff = random.randint(0, 2) 789 | craft.setBlocks(cor.x+5, cor.y-1, cor.z+40, cor.x+15, cor.y-1, cor.z+45, c[ff]) 790 | avto1() 791 | if craft.getBlock(x, y-1, z)==41: 792 | craft.postToChat("Стоим пять секунд ") 793 | time.sleep(5) 794 | elif craft.getBlock(x, y-1, z)==45: 795 | craft.postToChat("Стоим десять секунд ") 796 | time.sleep(10) 797 | elif craft.getBlock(x, y-1, z)==22: 798 | craft.postToChat("Движение открыто ") 799 | z=z+5 800 | time.sleep(0.5) 801 | craft.setBlocks(x, y, z-5, x+1, y+2, z, 0) 802 | 803 | for i in range(17): 804 | ff = random.randint(0, 2) 805 | craft.setBlocks(cor.x+20, cor.y-1, cor.z+10, cor.x+25, cor.y-1, cor.z+35, c[ff]) 806 | ff = random.randint(0, 2) 807 | craft.setBlocks(cor.x+88, cor.y-1, cor.z+40, cor.x+100, cor.y-1, cor.z+45, c[ff]) 808 | ff = random.randint(0, 2) 809 | craft.setBlocks(cor.x+70, cor.y-1, cor.z+125, cor.x+65, cor.y-1, cor.z+145, c[ff]) 810 | ff = random.randint(0, 2) 811 | craft.setBlocks(cor.x+5, cor.y-1, cor.z+40, cor.x+15, cor.y-1, cor.z+45, c[ff]) 812 | avto2() 813 | if craft.getBlock(x, y-1, z)==41: 814 | craft.postToChat("Стоим пять секунд ") 815 | time.sleep(5) 816 | elif craft.getBlock(x, y-1, z)==45: 817 | craft.postToChat("Стоим десять секунд ") 818 | time.sleep(10) 819 | elif craft.getBlock(x, y-1, z)==22: 820 | craft.postToChat("Движение открыто ") 821 | #craft.postToChat(str()) 822 | x=x-5 823 | time.sleep(0.5) 824 | craft.setBlocks(x, y, z, x+10, y+2, z+1, 0) 825 | 826 | for i in range(24): 827 | ff = random.randint(0, 2) 828 | craft.setBlocks(cor.x+20, cor.y-1, cor.z+10, cor.x+25, cor.y-1, cor.z+35, c[ff]) 829 | ff = random.randint(0, 2) 830 | craft.setBlocks(cor.x+88, cor.y-1, cor.z+40, cor.x+100, cor.y-1, cor.z+45, c[ff]) 831 | ff = random.randint(0, 2) 832 | craft.setBlocks(cor.x+70, cor.y-1, cor.z+125, cor.x+65, cor.y-1, cor.z+145, c[ff]) 833 | ff = random.randint(0, 2) 834 | craft.setBlocks(cor.x+5, cor.y-1, cor.z+40, cor.x+15, cor.y-1, cor.z+45, c[ff]) 835 | avto1() 836 | if craft.getBlock(x, y-1, z)==41: 837 | craft.postToChat("Стоим пять секунд ") 838 | time.sleep(5) 839 | elif craft.getBlock(x, y-1, z)==45: 840 | craft.postToChat("Стоим десять секунд ") 841 | time.sleep(10) 842 | elif craft.getBlock(x, y-1, z)==22: 843 | craft.postToChat("Движение открыто ") 844 | z=z-5 845 | time.sleep(0.5) 846 | craft.setBlocks(x, y, z, x+1, y+2, z+10, 0) 847 | break 848 | 849 | 850 | -------------------------------------------------------------------------------- /teleport.py: -------------------------------------------------------------------------------- 1 | import mcpi.minecraft as minecraft 2 | import time 3 | 4 | import random 5 | 6 | craft=minecraft.Minecraft.create() 7 | 8 | x1 = -458 9 | x2 = -451 10 | z1 = -550 11 | z2 = -537 12 | 13 | t = 0 14 | 15 | 16 | while True: 17 | time.sleep(1) 18 | cor=craft.player.getTilePos() 19 | xr = random.randint(x1, x2) 20 | zr = random.randint (z1, z2) 21 | 22 | if t ==3: 23 | craft.player.setTilePos (xr, 69, zr) 24 | t=0 25 | 26 | if cor.x >=x1 and cor.x<=x2 and cor.z>=z1 and cor.z<=z2: 27 | craft.postToChat("Игра началась t =" +str(t)) 28 | t = t + 1 29 | 30 | else: 31 | craft.postToChat("Конец игры t = "+ str(t)) 32 | t = 0 33 | 34 | 35 | 36 | 37 | 38 | 39 | --------------------------------------------------------------------------------