1 /* 2 * This file has been automatically generated by Soupply and released under the MIT license. 3 * Generated from java393 4 */ 5 module soupply.java393.metadata; 6 7 import packetmaker; 8 import packetmaker.maker : EndianType, writeLength, writeImpl, readLength, readImpl; 9 10 import soupply.util; 11 12 static import soupply.java393.types; 13 14 class MetadataValue : PacketImpl!(Endian.bigEndian, varuint, varuint) 15 { 16 17 @EncodeOnly ubyte type; 18 19 this(ubyte type) pure nothrow @safe @nogc 20 { 21 this.type = type; 22 } 23 24 mixin Make; 25 26 } 27 28 class MetadataByte : MetadataValue 29 { 30 31 byte value; 32 33 this() pure nothrow @safe @nogc 34 { 35 super(0); 36 } 37 38 this(byte value) pure nothrow @safe @nogc 39 { 40 this(); 41 this.value = value; 42 } 43 44 mixin Make; 45 46 } 47 48 class MetadataInt : MetadataValue 49 { 50 51 @Var uint value; 52 53 this() pure nothrow @safe @nogc 54 { 55 super(1); 56 } 57 58 this(uint value) pure nothrow @safe @nogc 59 { 60 this(); 61 this.value = value; 62 } 63 64 mixin Make; 65 66 } 67 68 class MetadataFloat : MetadataValue 69 { 70 71 float value; 72 73 this() pure nothrow @safe @nogc 74 { 75 super(2); 76 } 77 78 this(float value) pure nothrow @safe @nogc 79 { 80 this(); 81 this.value = value; 82 } 83 84 mixin Make; 85 86 } 87 88 class MetadataString : MetadataValue 89 { 90 91 string value; 92 93 this() pure nothrow @safe @nogc 94 { 95 super(3); 96 } 97 98 this(string value) pure nothrow @safe @nogc 99 { 100 this(); 101 this.value = value; 102 } 103 104 mixin Make; 105 106 } 107 108 class MetadataChat : MetadataValue 109 { 110 111 string value; 112 113 this() pure nothrow @safe @nogc 114 { 115 super(4); 116 } 117 118 this(string value) pure nothrow @safe @nogc 119 { 120 this(); 121 this.value = value; 122 } 123 124 mixin Make; 125 126 } 127 128 class MetadataOptionalChat : MetadataValue 129 { 130 131 soupply.java393.types.OptionalChat value; 132 133 this() pure nothrow @safe @nogc 134 { 135 super(5); 136 } 137 138 this(soupply.java393.types.OptionalChat value) pure nothrow @safe @nogc 139 { 140 this(); 141 this.value = value; 142 } 143 144 mixin Make; 145 146 } 147 148 class MetadataSlot : MetadataValue 149 { 150 151 soupply.java393.types.Slot value; 152 153 this() pure nothrow @safe @nogc 154 { 155 super(6); 156 } 157 158 this(soupply.java393.types.Slot value) pure nothrow @safe @nogc 159 { 160 this(); 161 this.value = value; 162 } 163 164 mixin Make; 165 166 } 167 168 class MetadataBool : MetadataValue 169 { 170 171 bool value; 172 173 this() pure nothrow @safe @nogc 174 { 175 super(7); 176 } 177 178 this(bool value) pure nothrow @safe @nogc 179 { 180 this(); 181 this.value = value; 182 } 183 184 mixin Make; 185 186 } 187 188 class MetadataRotation : MetadataValue 189 { 190 191 Vector!(float, "xyz") value; 192 193 this() pure nothrow @safe @nogc 194 { 195 super(8); 196 } 197 198 this(Vector!(float, "xyz") value) pure nothrow @safe @nogc 199 { 200 this(); 201 this.value = value; 202 } 203 204 mixin Make; 205 206 } 207 208 class MetadataPosition : MetadataValue 209 { 210 211 ulong value; 212 213 this() pure nothrow @safe @nogc 214 { 215 super(9); 216 } 217 218 this(ulong value) pure nothrow @safe @nogc 219 { 220 this(); 221 this.value = value; 222 } 223 224 mixin Make; 225 226 } 227 228 class MetadataOptionalPosition : MetadataValue 229 { 230 231 soupply.java393.types.OptionalPosition value; 232 233 this() pure nothrow @safe @nogc 234 { 235 super(10); 236 } 237 238 this(soupply.java393.types.OptionalPosition value) pure nothrow @safe @nogc 239 { 240 this(); 241 this.value = value; 242 } 243 244 mixin Make; 245 246 } 247 248 class MetadataDirection : MetadataValue 249 { 250 251 @Var uint value; 252 253 this() pure nothrow @safe @nogc 254 { 255 super(11); 256 } 257 258 this(uint value) pure nothrow @safe @nogc 259 { 260 this(); 261 this.value = value; 262 } 263 264 mixin Make; 265 266 } 267 268 class MetadataOptionalUuid : MetadataValue 269 { 270 271 soupply.java393.types.OptionalUuid value; 272 273 this() pure nothrow @safe @nogc 274 { 275 super(12); 276 } 277 278 this(soupply.java393.types.OptionalUuid value) pure nothrow @safe @nogc 279 { 280 this(); 281 this.value = value; 282 } 283 284 mixin Make; 285 286 } 287 288 class MetadataBlock : MetadataValue 289 { 290 291 @Var uint value; 292 293 this() pure nothrow @safe @nogc 294 { 295 super(13); 296 } 297 298 this(uint value) pure nothrow @safe @nogc 299 { 300 this(); 301 this.value = value; 302 } 303 304 mixin Make; 305 306 } 307 308 class MetadataNbt : MetadataValue 309 { 310 311 @Bytes ubyte[] value; 312 313 this() pure nothrow @safe @nogc 314 { 315 super(14); 316 } 317 318 this(ubyte[] value) pure nothrow @safe @nogc 319 { 320 this(); 321 this.value = value; 322 } 323 324 mixin Make; 325 326 } 327 328 class MetadataParticle : MetadataValue 329 { 330 331 soupply.java393.types.Particle value; 332 333 this() pure nothrow @safe @nogc 334 { 335 super(15); 336 } 337 338 this(soupply.java393.types.Particle value) pure nothrow @safe @nogc 339 { 340 this(); 341 this.value = value; 342 } 343 344 mixin Make; 345 346 } 347 348 struct Metadata 349 { 350 351 MetadataValue[ubyte] values; 352 353 void encodeBody(Buffer buffer) 354 { 355 foreach(id, value; values) 356 { 357 writeImpl!(EndianType.bigEndian, ubyte)(buffer, id); 358 value.encodeBody(buffer); 359 } 360 buffer.write(ubyte(255)); 361 } 362 363 void decodeBody(Buffer buffer) 364 { 365 ubyte id; 366 while((id = buffer.read!ubyte()) != 255) 367 { 368 switch(readImpl!(EndianType.bigEndian, ubyte)(buffer)) 369 { 370 case 0: 371 auto value = new MetadataByte(); 372 value.decodeBody(buffer); 373 this.values[id] = value; 374 break; 375 case 1: 376 auto value = new MetadataInt(); 377 value.decodeBody(buffer); 378 this.values[id] = value; 379 break; 380 case 2: 381 auto value = new MetadataFloat(); 382 value.decodeBody(buffer); 383 this.values[id] = value; 384 break; 385 case 3: 386 auto value = new MetadataString(); 387 value.decodeBody(buffer); 388 this.values[id] = value; 389 break; 390 case 4: 391 auto value = new MetadataChat(); 392 value.decodeBody(buffer); 393 this.values[id] = value; 394 break; 395 case 5: 396 auto value = new MetadataOptionalChat(); 397 value.decodeBody(buffer); 398 this.values[id] = value; 399 break; 400 case 6: 401 auto value = new MetadataSlot(); 402 value.decodeBody(buffer); 403 this.values[id] = value; 404 break; 405 case 7: 406 auto value = new MetadataBool(); 407 value.decodeBody(buffer); 408 this.values[id] = value; 409 break; 410 case 8: 411 auto value = new MetadataRotation(); 412 value.decodeBody(buffer); 413 this.values[id] = value; 414 break; 415 case 9: 416 auto value = new MetadataPosition(); 417 value.decodeBody(buffer); 418 this.values[id] = value; 419 break; 420 case 10: 421 auto value = new MetadataOptionalPosition(); 422 value.decodeBody(buffer); 423 this.values[id] = value; 424 break; 425 case 11: 426 auto value = new MetadataDirection(); 427 value.decodeBody(buffer); 428 this.values[id] = value; 429 break; 430 case 12: 431 auto value = new MetadataOptionalUuid(); 432 value.decodeBody(buffer); 433 this.values[id] = value; 434 break; 435 case 13: 436 auto value = new MetadataBlock(); 437 value.decodeBody(buffer); 438 this.values[id] = value; 439 break; 440 case 14: 441 auto value = new MetadataNbt(); 442 value.decodeBody(buffer); 443 this.values[id] = value; 444 break; 445 case 15: 446 auto value = new MetadataParticle(); 447 value.decodeBody(buffer); 448 this.values[id] = value; 449 break; 450 default: throw new Exception("Unknown metadata type"); 451 } 452 } 453 } 454 455 @property byte entityFlags() 456 { 457 auto ptr = 0 in this.values; 458 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 459 return (byte).init; 460 } 461 462 @property byte entityFlags(byte value) 463 { 464 auto ptr = 0 in this.values; 465 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 466 else this.values[0] = new MetadataByte(value); 467 return value; 468 } 469 470 @property uint air() 471 { 472 auto ptr = 1 in this.values; 473 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 474 return uint(300); 475 } 476 477 @property uint air(uint value) 478 { 479 auto ptr = 1 in this.values; 480 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 481 else this.values[1] = new MetadataInt(value); 482 return value; 483 } 484 485 @property soupply.java393.types.OptionalChat customName() 486 { 487 auto ptr = 2 in this.values; 488 if(ptr && cast(MetadataOptionalChat)*ptr) return (cast(MetadataOptionalChat)*ptr).value; 489 return (soupply.java393.types.OptionalChat).init; 490 } 491 492 @property soupply.java393.types.OptionalChat customName(soupply.java393.types.OptionalChat value) 493 { 494 auto ptr = 2 in this.values; 495 if(ptr && cast(MetadataOptionalChat)*ptr) (cast(MetadataOptionalChat)*ptr).value = value; 496 else this.values[2] = new MetadataOptionalChat(value); 497 return value; 498 } 499 500 @property bool customNameVisible() 501 { 502 auto ptr = 3 in this.values; 503 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 504 return (bool).init; 505 } 506 507 @property bool customNameVisible(bool value) 508 { 509 auto ptr = 3 in this.values; 510 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 511 else this.values[3] = new MetadataBool(value); 512 return value; 513 } 514 515 @property bool silent() 516 { 517 auto ptr = 4 in this.values; 518 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 519 return (bool).init; 520 } 521 522 @property bool silent(bool value) 523 { 524 auto ptr = 4 in this.values; 525 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 526 else this.values[4] = new MetadataBool(value); 527 return value; 528 } 529 530 @property bool noGravity() 531 { 532 auto ptr = 5 in this.values; 533 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 534 return (bool).init; 535 } 536 537 @property bool noGravity(bool value) 538 { 539 auto ptr = 5 in this.values; 540 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 541 else this.values[5] = new MetadataBool(value); 542 return value; 543 } 544 545 @property soupply.java393.types.Slot potion() 546 { 547 auto ptr = 6 in this.values; 548 if(ptr && cast(MetadataSlot)*ptr) return (cast(MetadataSlot)*ptr).value; 549 return (soupply.java393.types.Slot).init; 550 } 551 552 @property soupply.java393.types.Slot potion(soupply.java393.types.Slot value) 553 { 554 auto ptr = 6 in this.values; 555 if(ptr && cast(MetadataSlot)*ptr) (cast(MetadataSlot)*ptr).value = value; 556 else this.values[6] = new MetadataSlot(value); 557 return value; 558 } 559 560 @property ulong spawnPosition() 561 { 562 auto ptr = 6 in this.values; 563 if(ptr && cast(MetadataPosition)*ptr) return (cast(MetadataPosition)*ptr).value; 564 return (ulong).init; 565 } 566 567 @property ulong spawnPosition(ulong value) 568 { 569 auto ptr = 6 in this.values; 570 if(ptr && cast(MetadataPosition)*ptr) (cast(MetadataPosition)*ptr).value = value; 571 else this.values[6] = new MetadataPosition(value); 572 return value; 573 } 574 575 @property float radius() 576 { 577 auto ptr = 6 in this.values; 578 if(ptr && cast(MetadataFloat)*ptr) return (cast(MetadataFloat)*ptr).value; 579 return float(0.5); 580 } 581 582 @property float radius(float value) 583 { 584 auto ptr = 6 in this.values; 585 if(ptr && cast(MetadataFloat)*ptr) (cast(MetadataFloat)*ptr).value = value; 586 else this.values[6] = new MetadataFloat(value); 587 return value; 588 } 589 590 @property uint color() 591 { 592 auto ptr = 7 in this.values; 593 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 594 return uint(0); 595 } 596 597 @property uint color(uint value) 598 { 599 auto ptr = 7 in this.values; 600 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 601 else this.values[7] = new MetadataInt(value); 602 return value; 603 } 604 605 @property bool isSinglePoint() 606 { 607 auto ptr = 8 in this.values; 608 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 609 return (bool).init; 610 } 611 612 @property bool isSinglePoint(bool value) 613 { 614 auto ptr = 8 in this.values; 615 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 616 else this.values[8] = new MetadataBool(value); 617 return value; 618 } 619 620 @property soupply.java393.types.Particle particle() 621 { 622 auto ptr = 9 in this.values; 623 if(ptr && cast(MetadataParticle)*ptr) return (cast(MetadataParticle)*ptr).value; 624 return (soupply.java393.types.Particle).init; 625 } 626 627 @property soupply.java393.types.Particle particle(soupply.java393.types.Particle value) 628 { 629 auto ptr = 9 in this.values; 630 if(ptr && cast(MetadataParticle)*ptr) (cast(MetadataParticle)*ptr).value = value; 631 else this.values[9] = new MetadataParticle(value); 632 return value; 633 } 634 635 @property uint hookedEntity() 636 { 637 auto ptr = 6 in this.values; 638 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 639 return (uint).init; 640 } 641 642 @property uint hookedEntity(uint value) 643 { 644 auto ptr = 6 in this.values; 645 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 646 else this.values[6] = new MetadataInt(value); 647 return value; 648 } 649 650 @property byte arrowFlags() 651 { 652 auto ptr = 6 in this.values; 653 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 654 return (byte).init; 655 } 656 657 @property byte arrowFlags(byte value) 658 { 659 auto ptr = 6 in this.values; 660 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 661 else this.values[6] = new MetadataByte(value); 662 return value; 663 } 664 665 @property uint timeSinceLastHit() 666 { 667 auto ptr = 6 in this.values; 668 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 669 return (uint).init; 670 } 671 672 @property uint timeSinceLastHit(uint value) 673 { 674 auto ptr = 6 in this.values; 675 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 676 else this.values[6] = new MetadataInt(value); 677 return value; 678 } 679 680 @property uint forwardDirection() 681 { 682 auto ptr = 7 in this.values; 683 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 684 return uint(1); 685 } 686 687 @property uint forwardDirection(uint value) 688 { 689 auto ptr = 7 in this.values; 690 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 691 else this.values[7] = new MetadataInt(value); 692 return value; 693 } 694 695 @property float damageTaken() 696 { 697 auto ptr = 8 in this.values; 698 if(ptr && cast(MetadataFloat)*ptr) return (cast(MetadataFloat)*ptr).value; 699 return float(0); 700 } 701 702 @property float damageTaken(float value) 703 { 704 auto ptr = 8 in this.values; 705 if(ptr && cast(MetadataFloat)*ptr) (cast(MetadataFloat)*ptr).value = value; 706 else this.values[8] = new MetadataFloat(value); 707 return value; 708 } 709 710 @property uint boatVariant() 711 { 712 auto ptr = 9 in this.values; 713 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 714 return (uint).init; 715 } 716 717 @property uint boatVariant(uint value) 718 { 719 auto ptr = 9 in this.values; 720 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 721 else this.values[9] = new MetadataInt(value); 722 return value; 723 } 724 725 @property bool rightPaddleTurning() 726 { 727 auto ptr = 10 in this.values; 728 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 729 return (bool).init; 730 } 731 732 @property bool rightPaddleTurning(bool value) 733 { 734 auto ptr = 10 in this.values; 735 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 736 else this.values[10] = new MetadataBool(value); 737 return value; 738 } 739 740 @property bool leftPaddleTurning() 741 { 742 auto ptr = 11 in this.values; 743 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 744 return (bool).init; 745 } 746 747 @property bool leftPaddleTurning(bool value) 748 { 749 auto ptr = 11 in this.values; 750 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 751 else this.values[11] = new MetadataBool(value); 752 return value; 753 } 754 755 @property uint splashTimer() 756 { 757 auto ptr = 12 in this.values; 758 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 759 return (uint).init; 760 } 761 762 @property uint splashTimer(uint value) 763 { 764 auto ptr = 12 in this.values; 765 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 766 else this.values[12] = new MetadataInt(value); 767 return value; 768 } 769 770 @property soupply.java393.types.OptionalPosition beamTarget() 771 { 772 auto ptr = 6 in this.values; 773 if(ptr && cast(MetadataOptionalPosition)*ptr) return (cast(MetadataOptionalPosition)*ptr).value; 774 return (soupply.java393.types.OptionalPosition).init; 775 } 776 777 @property soupply.java393.types.OptionalPosition beamTarget(soupply.java393.types.OptionalPosition value) 778 { 779 auto ptr = 6 in this.values; 780 if(ptr && cast(MetadataOptionalPosition)*ptr) (cast(MetadataOptionalPosition)*ptr).value = value; 781 else this.values[6] = new MetadataOptionalPosition(value); 782 return value; 783 } 784 785 @property bool showBottom() 786 { 787 auto ptr = 7 in this.values; 788 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 789 return (bool).init; 790 } 791 792 @property bool showBottom(bool value) 793 { 794 auto ptr = 7 in this.values; 795 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 796 else this.values[7] = new MetadataBool(value); 797 return value; 798 } 799 800 @property soupply.java393.types.Slot firework() 801 { 802 auto ptr = 6 in this.values; 803 if(ptr && cast(MetadataSlot)*ptr) return (cast(MetadataSlot)*ptr).value; 804 return (soupply.java393.types.Slot).init; 805 } 806 807 @property soupply.java393.types.Slot firework(soupply.java393.types.Slot value) 808 { 809 auto ptr = 6 in this.values; 810 if(ptr && cast(MetadataSlot)*ptr) (cast(MetadataSlot)*ptr).value = value; 811 else this.values[6] = new MetadataSlot(value); 812 return value; 813 } 814 815 @property uint fireworkThrower() 816 { 817 auto ptr = 7 in this.values; 818 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 819 return (uint).init; 820 } 821 822 @property uint fireworkThrower(uint value) 823 { 824 auto ptr = 7 in this.values; 825 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 826 else this.values[7] = new MetadataInt(value); 827 return value; 828 } 829 830 @property soupply.java393.types.Slot item() 831 { 832 auto ptr = 6 in this.values; 833 if(ptr && cast(MetadataSlot)*ptr) return (cast(MetadataSlot)*ptr).value; 834 return (soupply.java393.types.Slot).init; 835 } 836 837 @property soupply.java393.types.Slot item(soupply.java393.types.Slot value) 838 { 839 auto ptr = 6 in this.values; 840 if(ptr && cast(MetadataSlot)*ptr) (cast(MetadataSlot)*ptr).value = value; 841 else this.values[6] = new MetadataSlot(value); 842 return value; 843 } 844 845 @property uint rotation() 846 { 847 auto ptr = 7 in this.values; 848 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 849 return (uint).init; 850 } 851 852 @property uint rotation(uint value) 853 { 854 auto ptr = 7 in this.values; 855 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 856 else this.values[7] = new MetadataInt(value); 857 return value; 858 } 859 860 @property uint loyaltyLevel() 861 { 862 auto ptr = 7 in this.values; 863 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 864 return (uint).init; 865 } 866 867 @property uint loyaltyLevel(uint value) 868 { 869 auto ptr = 7 in this.values; 870 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 871 else this.values[7] = new MetadataInt(value); 872 return value; 873 } 874 875 @property byte livingFlags() 876 { 877 auto ptr = 6 in this.values; 878 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 879 return (byte).init; 880 } 881 882 @property byte livingFlags(byte value) 883 { 884 auto ptr = 6 in this.values; 885 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 886 else this.values[6] = new MetadataByte(value); 887 return value; 888 } 889 890 @property float health() 891 { 892 auto ptr = 7 in this.values; 893 if(ptr && cast(MetadataFloat)*ptr) return (cast(MetadataFloat)*ptr).value; 894 return float(1); 895 } 896 897 @property float health(float value) 898 { 899 auto ptr = 7 in this.values; 900 if(ptr && cast(MetadataFloat)*ptr) (cast(MetadataFloat)*ptr).value = value; 901 else this.values[7] = new MetadataFloat(value); 902 return value; 903 } 904 905 @property uint potionColor() 906 { 907 auto ptr = 8 in this.values; 908 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 909 return (uint).init; 910 } 911 912 @property uint potionColor(uint value) 913 { 914 auto ptr = 8 in this.values; 915 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 916 else this.values[8] = new MetadataInt(value); 917 return value; 918 } 919 920 @property bool potionAmbient() 921 { 922 auto ptr = 9 in this.values; 923 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 924 return (bool).init; 925 } 926 927 @property bool potionAmbient(bool value) 928 { 929 auto ptr = 9 in this.values; 930 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 931 else this.values[9] = new MetadataBool(value); 932 return value; 933 } 934 935 @property uint arrows() 936 { 937 auto ptr = 10 in this.values; 938 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 939 return (uint).init; 940 } 941 942 @property uint arrows(uint value) 943 { 944 auto ptr = 10 in this.values; 945 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 946 else this.values[10] = new MetadataInt(value); 947 return value; 948 } 949 950 @property float additionalHearts() 951 { 952 auto ptr = 11 in this.values; 953 if(ptr && cast(MetadataFloat)*ptr) return (cast(MetadataFloat)*ptr).value; 954 return float(0); 955 } 956 957 @property float additionalHearts(float value) 958 { 959 auto ptr = 11 in this.values; 960 if(ptr && cast(MetadataFloat)*ptr) (cast(MetadataFloat)*ptr).value = value; 961 else this.values[11] = new MetadataFloat(value); 962 return value; 963 } 964 965 @property uint score() 966 { 967 auto ptr = 12 in this.values; 968 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 969 return (uint).init; 970 } 971 972 @property uint score(uint value) 973 { 974 auto ptr = 12 in this.values; 975 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 976 else this.values[12] = new MetadataInt(value); 977 return value; 978 } 979 980 @property byte skinParts() 981 { 982 auto ptr = 13 in this.values; 983 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 984 return byte(0); 985 } 986 987 @property byte skinParts(byte value) 988 { 989 auto ptr = 13 in this.values; 990 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 991 else this.values[13] = new MetadataByte(value); 992 return value; 993 } 994 995 @property byte mainHand() 996 { 997 auto ptr = 14 in this.values; 998 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 999 return byte(1); 1000 } 1001 1002 @property byte mainHand(byte value) 1003 { 1004 auto ptr = 14 in this.values; 1005 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1006 else this.values[14] = new MetadataByte(value); 1007 return value; 1008 } 1009 1010 @property ubyte[] leftShoulder() 1011 { 1012 auto ptr = 15 in this.values; 1013 if(ptr && cast(MetadataNbt)*ptr) return (cast(MetadataNbt)*ptr).value; 1014 return (ubyte[]).init; 1015 } 1016 1017 @property ubyte[] leftShoulder(ubyte[] value) 1018 { 1019 auto ptr = 15 in this.values; 1020 if(ptr && cast(MetadataNbt)*ptr) (cast(MetadataNbt)*ptr).value = value; 1021 else this.values[15] = new MetadataNbt(value); 1022 return value; 1023 } 1024 1025 @property ubyte[] rightShoulder() 1026 { 1027 auto ptr = 16 in this.values; 1028 if(ptr && cast(MetadataNbt)*ptr) return (cast(MetadataNbt)*ptr).value; 1029 return (ubyte[]).init; 1030 } 1031 1032 @property ubyte[] rightShoulder(ubyte[] value) 1033 { 1034 auto ptr = 16 in this.values; 1035 if(ptr && cast(MetadataNbt)*ptr) (cast(MetadataNbt)*ptr).value = value; 1036 else this.values[16] = new MetadataNbt(value); 1037 return value; 1038 } 1039 1040 @property byte armorStandFlags() 1041 { 1042 auto ptr = 11 in this.values; 1043 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1044 return (byte).init; 1045 } 1046 1047 @property byte armorStandFlags(byte value) 1048 { 1049 auto ptr = 11 in this.values; 1050 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1051 else this.values[11] = new MetadataByte(value); 1052 return value; 1053 } 1054 1055 @property Vector!(float, "xyz") headRotation() 1056 { 1057 auto ptr = 12 in this.values; 1058 if(ptr && cast(MetadataRotation)*ptr) return (cast(MetadataRotation)*ptr).value; 1059 return (Vector!(float, "xyz")).init; 1060 } 1061 1062 @property Vector!(float, "xyz") headRotation(Vector!(float, "xyz") value) 1063 { 1064 auto ptr = 12 in this.values; 1065 if(ptr && cast(MetadataRotation)*ptr) (cast(MetadataRotation)*ptr).value = value; 1066 else this.values[12] = new MetadataRotation(value); 1067 return value; 1068 } 1069 1070 @property Vector!(float, "xyz") bodyRotation() 1071 { 1072 auto ptr = 13 in this.values; 1073 if(ptr && cast(MetadataRotation)*ptr) return (cast(MetadataRotation)*ptr).value; 1074 return (Vector!(float, "xyz")).init; 1075 } 1076 1077 @property Vector!(float, "xyz") bodyRotation(Vector!(float, "xyz") value) 1078 { 1079 auto ptr = 13 in this.values; 1080 if(ptr && cast(MetadataRotation)*ptr) (cast(MetadataRotation)*ptr).value = value; 1081 else this.values[13] = new MetadataRotation(value); 1082 return value; 1083 } 1084 1085 @property Vector!(float, "xyz") leftArmRotation() 1086 { 1087 auto ptr = 14 in this.values; 1088 if(ptr && cast(MetadataRotation)*ptr) return (cast(MetadataRotation)*ptr).value; 1089 return (Vector!(float, "xyz")).init; 1090 } 1091 1092 @property Vector!(float, "xyz") leftArmRotation(Vector!(float, "xyz") value) 1093 { 1094 auto ptr = 14 in this.values; 1095 if(ptr && cast(MetadataRotation)*ptr) (cast(MetadataRotation)*ptr).value = value; 1096 else this.values[14] = new MetadataRotation(value); 1097 return value; 1098 } 1099 1100 @property Vector!(float, "xyz") rightArmRotation() 1101 { 1102 auto ptr = 15 in this.values; 1103 if(ptr && cast(MetadataRotation)*ptr) return (cast(MetadataRotation)*ptr).value; 1104 return (Vector!(float, "xyz")).init; 1105 } 1106 1107 @property Vector!(float, "xyz") rightArmRotation(Vector!(float, "xyz") value) 1108 { 1109 auto ptr = 15 in this.values; 1110 if(ptr && cast(MetadataRotation)*ptr) (cast(MetadataRotation)*ptr).value = value; 1111 else this.values[15] = new MetadataRotation(value); 1112 return value; 1113 } 1114 1115 @property Vector!(float, "xyz") leftLegRotation() 1116 { 1117 auto ptr = 16 in this.values; 1118 if(ptr && cast(MetadataRotation)*ptr) return (cast(MetadataRotation)*ptr).value; 1119 return (Vector!(float, "xyz")).init; 1120 } 1121 1122 @property Vector!(float, "xyz") leftLegRotation(Vector!(float, "xyz") value) 1123 { 1124 auto ptr = 16 in this.values; 1125 if(ptr && cast(MetadataRotation)*ptr) (cast(MetadataRotation)*ptr).value = value; 1126 else this.values[16] = new MetadataRotation(value); 1127 return value; 1128 } 1129 1130 @property Vector!(float, "xyz") rightLegRotation() 1131 { 1132 auto ptr = 17 in this.values; 1133 if(ptr && cast(MetadataRotation)*ptr) return (cast(MetadataRotation)*ptr).value; 1134 return (Vector!(float, "xyz")).init; 1135 } 1136 1137 @property Vector!(float, "xyz") rightLegRotation(Vector!(float, "xyz") value) 1138 { 1139 auto ptr = 17 in this.values; 1140 if(ptr && cast(MetadataRotation)*ptr) (cast(MetadataRotation)*ptr).value = value; 1141 else this.values[17] = new MetadataRotation(value); 1142 return value; 1143 } 1144 1145 @property byte instentientFlags() 1146 { 1147 auto ptr = 11 in this.values; 1148 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1149 return (byte).init; 1150 } 1151 1152 @property byte instentientFlags(byte value) 1153 { 1154 auto ptr = 11 in this.values; 1155 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1156 else this.values[11] = new MetadataByte(value); 1157 return value; 1158 } 1159 1160 @property byte hanging() 1161 { 1162 auto ptr = 12 in this.values; 1163 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1164 return (byte).init; 1165 } 1166 1167 @property byte hanging(byte value) 1168 { 1169 auto ptr = 12 in this.values; 1170 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1171 else this.values[12] = new MetadataByte(value); 1172 return value; 1173 } 1174 1175 @property bool baby() 1176 { 1177 auto ptr = 12 in this.values; 1178 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1179 return (bool).init; 1180 } 1181 1182 @property bool baby(bool value) 1183 { 1184 auto ptr = 12 in this.values; 1185 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1186 else this.values[12] = new MetadataBool(value); 1187 return value; 1188 } 1189 1190 @property byte horseFlags() 1191 { 1192 auto ptr = 13 in this.values; 1193 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1194 return (byte).init; 1195 } 1196 1197 @property byte horseFlags(byte value) 1198 { 1199 auto ptr = 13 in this.values; 1200 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1201 else this.values[13] = new MetadataByte(value); 1202 return value; 1203 } 1204 1205 @property soupply.java393.types.OptionalUuid ownerUuid() 1206 { 1207 auto ptr = 14 in this.values; 1208 if(ptr && cast(MetadataOptionalUuid)*ptr) return (cast(MetadataOptionalUuid)*ptr).value; 1209 return (soupply.java393.types.OptionalUuid).init; 1210 } 1211 1212 @property soupply.java393.types.OptionalUuid ownerUuid(soupply.java393.types.OptionalUuid value) 1213 { 1214 auto ptr = 14 in this.values; 1215 if(ptr && cast(MetadataOptionalUuid)*ptr) (cast(MetadataOptionalUuid)*ptr).value = value; 1216 else this.values[14] = new MetadataOptionalUuid(value); 1217 return value; 1218 } 1219 1220 @property uint horseVariant() 1221 { 1222 auto ptr = 15 in this.values; 1223 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1224 return (uint).init; 1225 } 1226 1227 @property uint horseVariant(uint value) 1228 { 1229 auto ptr = 15 in this.values; 1230 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1231 else this.values[15] = new MetadataInt(value); 1232 return value; 1233 } 1234 1235 @property uint horseArmor() 1236 { 1237 auto ptr = 16 in this.values; 1238 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1239 return (uint).init; 1240 } 1241 1242 @property uint horseArmor(uint value) 1243 { 1244 auto ptr = 16 in this.values; 1245 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1246 else this.values[16] = new MetadataInt(value); 1247 return value; 1248 } 1249 1250 @property bool chested() 1251 { 1252 auto ptr = 15 in this.values; 1253 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1254 return (bool).init; 1255 } 1256 1257 @property bool chested(bool value) 1258 { 1259 auto ptr = 15 in this.values; 1260 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1261 else this.values[15] = new MetadataBool(value); 1262 return value; 1263 } 1264 1265 @property uint llamaStrength() 1266 { 1267 auto ptr = 16 in this.values; 1268 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1269 return (uint).init; 1270 } 1271 1272 @property uint llamaStrength(uint value) 1273 { 1274 auto ptr = 16 in this.values; 1275 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1276 else this.values[16] = new MetadataInt(value); 1277 return value; 1278 } 1279 1280 @property uint carpetColor() 1281 { 1282 auto ptr = 17 in this.values; 1283 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1284 return uint(-1); 1285 } 1286 1287 @property uint carpetColor(uint value) 1288 { 1289 auto ptr = 17 in this.values; 1290 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1291 else this.values[17] = new MetadataInt(value); 1292 return value; 1293 } 1294 1295 @property uint llamaVariant() 1296 { 1297 auto ptr = 18 in this.values; 1298 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1299 return (uint).init; 1300 } 1301 1302 @property uint llamaVariant(uint value) 1303 { 1304 auto ptr = 18 in this.values; 1305 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1306 else this.values[18] = new MetadataInt(value); 1307 return value; 1308 } 1309 1310 @property bool pigSaddled() 1311 { 1312 auto ptr = 13 in this.values; 1313 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1314 return (bool).init; 1315 } 1316 1317 @property bool pigSaddled(bool value) 1318 { 1319 auto ptr = 13 in this.values; 1320 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1321 else this.values[13] = new MetadataBool(value); 1322 return value; 1323 } 1324 1325 @property uint carrotBoost() 1326 { 1327 auto ptr = 14 in this.values; 1328 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1329 return (uint).init; 1330 } 1331 1332 @property uint carrotBoost(uint value) 1333 { 1334 auto ptr = 14 in this.values; 1335 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1336 else this.values[14] = new MetadataInt(value); 1337 return value; 1338 } 1339 1340 @property uint rabbitVariant() 1341 { 1342 auto ptr = 13 in this.values; 1343 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1344 return (uint).init; 1345 } 1346 1347 @property uint rabbitVariant(uint value) 1348 { 1349 auto ptr = 13 in this.values; 1350 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1351 else this.values[13] = new MetadataInt(value); 1352 return value; 1353 } 1354 1355 @property bool standingUp() 1356 { 1357 auto ptr = 13 in this.values; 1358 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1359 return (bool).init; 1360 } 1361 1362 @property bool standingUp(bool value) 1363 { 1364 auto ptr = 13 in this.values; 1365 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1366 else this.values[13] = new MetadataBool(value); 1367 return value; 1368 } 1369 1370 @property byte sheepFlagsAndColor() 1371 { 1372 auto ptr = 13 in this.values; 1373 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1374 return (byte).init; 1375 } 1376 1377 @property byte sheepFlagsAndColor(byte value) 1378 { 1379 auto ptr = 13 in this.values; 1380 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1381 else this.values[13] = new MetadataByte(value); 1382 return value; 1383 } 1384 1385 @property byte tameableFlags() 1386 { 1387 auto ptr = 13 in this.values; 1388 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1389 return (byte).init; 1390 } 1391 1392 @property byte tameableFlags(byte value) 1393 { 1394 auto ptr = 13 in this.values; 1395 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1396 else this.values[13] = new MetadataByte(value); 1397 return value; 1398 } 1399 1400 @property uint ocelotVariant() 1401 { 1402 auto ptr = 15 in this.values; 1403 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1404 return (uint).init; 1405 } 1406 1407 @property uint ocelotVariant(uint value) 1408 { 1409 auto ptr = 15 in this.values; 1410 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1411 else this.values[15] = new MetadataInt(value); 1412 return value; 1413 } 1414 1415 @property uint parrotColor() 1416 { 1417 auto ptr = 15 in this.values; 1418 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1419 return (uint).init; 1420 } 1421 1422 @property uint parrotColor(uint value) 1423 { 1424 auto ptr = 15 in this.values; 1425 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1426 else this.values[15] = new MetadataInt(value); 1427 return value; 1428 } 1429 1430 @property float wolfHealth() 1431 { 1432 auto ptr = 15 in this.values; 1433 if(ptr && cast(MetadataFloat)*ptr) return (cast(MetadataFloat)*ptr).value; 1434 return (float).init; 1435 } 1436 1437 @property float wolfHealth(float value) 1438 { 1439 auto ptr = 15 in this.values; 1440 if(ptr && cast(MetadataFloat)*ptr) (cast(MetadataFloat)*ptr).value = value; 1441 else this.values[15] = new MetadataFloat(value); 1442 return value; 1443 } 1444 1445 @property bool begging() 1446 { 1447 auto ptr = 16 in this.values; 1448 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1449 return (bool).init; 1450 } 1451 1452 @property bool begging(bool value) 1453 { 1454 auto ptr = 16 in this.values; 1455 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1456 else this.values[16] = new MetadataBool(value); 1457 return value; 1458 } 1459 1460 @property uint collarColor() 1461 { 1462 auto ptr = 17 in this.values; 1463 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1464 return uint(14); 1465 } 1466 1467 @property uint collarColor(uint value) 1468 { 1469 auto ptr = 17 in this.values; 1470 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1471 else this.values[17] = new MetadataInt(value); 1472 return value; 1473 } 1474 1475 @property uint profession() 1476 { 1477 auto ptr = 13 in this.values; 1478 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1479 return (uint).init; 1480 } 1481 1482 @property uint profession(uint value) 1483 { 1484 auto ptr = 13 in this.values; 1485 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1486 else this.values[13] = new MetadataInt(value); 1487 return value; 1488 } 1489 1490 @property byte createdByPlayer() 1491 { 1492 auto ptr = 12 in this.values; 1493 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1494 return (byte).init; 1495 } 1496 1497 @property byte createdByPlayer(byte value) 1498 { 1499 auto ptr = 12 in this.values; 1500 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1501 else this.values[12] = new MetadataByte(value); 1502 return value; 1503 } 1504 1505 @property byte snowmanFlags() 1506 { 1507 auto ptr = 12 in this.values; 1508 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1509 return (byte).init; 1510 } 1511 1512 @property byte snowmanFlags(byte value) 1513 { 1514 auto ptr = 12 in this.values; 1515 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1516 else this.values[12] = new MetadataByte(value); 1517 return value; 1518 } 1519 1520 @property uint shulkerDirection() 1521 { 1522 auto ptr = 12 in this.values; 1523 if(ptr && cast(MetadataDirection)*ptr) return (cast(MetadataDirection)*ptr).value; 1524 return (uint).init; 1525 } 1526 1527 @property uint shulkerDirection(uint value) 1528 { 1529 auto ptr = 12 in this.values; 1530 if(ptr && cast(MetadataDirection)*ptr) (cast(MetadataDirection)*ptr).value = value; 1531 else this.values[12] = new MetadataDirection(value); 1532 return value; 1533 } 1534 1535 @property soupply.java393.types.OptionalPosition shulkerAttachment() 1536 { 1537 auto ptr = 13 in this.values; 1538 if(ptr && cast(MetadataOptionalPosition)*ptr) return (cast(MetadataOptionalPosition)*ptr).value; 1539 return (soupply.java393.types.OptionalPosition).init; 1540 } 1541 1542 @property soupply.java393.types.OptionalPosition shulkerAttachment(soupply.java393.types.OptionalPosition value) 1543 { 1544 auto ptr = 13 in this.values; 1545 if(ptr && cast(MetadataOptionalPosition)*ptr) (cast(MetadataOptionalPosition)*ptr).value = value; 1546 else this.values[13] = new MetadataOptionalPosition(value); 1547 return value; 1548 } 1549 1550 @property byte shulkerShieldHeight() 1551 { 1552 auto ptr = 14 in this.values; 1553 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1554 return (byte).init; 1555 } 1556 1557 @property byte shulkerShieldHeight(byte value) 1558 { 1559 auto ptr = 14 in this.values; 1560 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1561 else this.values[14] = new MetadataByte(value); 1562 return value; 1563 } 1564 1565 @property byte shulkerColor() 1566 { 1567 auto ptr = 15 in this.values; 1568 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1569 return (byte).init; 1570 } 1571 1572 @property byte shulkerColor(byte value) 1573 { 1574 auto ptr = 15 in this.values; 1575 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1576 else this.values[15] = new MetadataByte(value); 1577 return value; 1578 } 1579 1580 @property byte blazeOnFire() 1581 { 1582 auto ptr = 12 in this.values; 1583 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1584 return (byte).init; 1585 } 1586 1587 @property byte blazeOnFire(byte value) 1588 { 1589 auto ptr = 12 in this.values; 1590 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1591 else this.values[12] = new MetadataByte(value); 1592 return value; 1593 } 1594 1595 @property uint creeperState() 1596 { 1597 auto ptr = 12 in this.values; 1598 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1599 return uint(-1); 1600 } 1601 1602 @property uint creeperState(uint value) 1603 { 1604 auto ptr = 12 in this.values; 1605 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1606 else this.values[12] = new MetadataInt(value); 1607 return value; 1608 } 1609 1610 @property bool charged() 1611 { 1612 auto ptr = 13 in this.values; 1613 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1614 return (bool).init; 1615 } 1616 1617 @property bool charged(bool value) 1618 { 1619 auto ptr = 13 in this.values; 1620 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1621 else this.values[13] = new MetadataBool(value); 1622 return value; 1623 } 1624 1625 @property bool ignited() 1626 { 1627 auto ptr = 14 in this.values; 1628 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1629 return (bool).init; 1630 } 1631 1632 @property bool ignited(bool value) 1633 { 1634 auto ptr = 14 in this.values; 1635 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1636 else this.values[14] = new MetadataBool(value); 1637 return value; 1638 } 1639 1640 @property bool rectractingSpikes() 1641 { 1642 auto ptr = 12 in this.values; 1643 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1644 return (bool).init; 1645 } 1646 1647 @property bool rectractingSpikes(bool value) 1648 { 1649 auto ptr = 12 in this.values; 1650 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1651 else this.values[12] = new MetadataBool(value); 1652 return value; 1653 } 1654 1655 @property uint guardianTarget() 1656 { 1657 auto ptr = 13 in this.values; 1658 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1659 return (uint).init; 1660 } 1661 1662 @property uint guardianTarget(uint value) 1663 { 1664 auto ptr = 13 in this.values; 1665 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1666 else this.values[13] = new MetadataInt(value); 1667 return value; 1668 } 1669 1670 @property byte spell() 1671 { 1672 auto ptr = 12 in this.values; 1673 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1674 return (byte).init; 1675 } 1676 1677 @property byte spell(byte value) 1678 { 1679 auto ptr = 12 in this.values; 1680 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1681 else this.values[12] = new MetadataByte(value); 1682 return value; 1683 } 1684 1685 @property byte attackMode() 1686 { 1687 auto ptr = 12 in this.values; 1688 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1689 return (byte).init; 1690 } 1691 1692 @property byte attackMode(byte value) 1693 { 1694 auto ptr = 12 in this.values; 1695 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1696 else this.values[12] = new MetadataByte(value); 1697 return value; 1698 } 1699 1700 @property bool swingingArms() 1701 { 1702 auto ptr = 12 in this.values; 1703 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1704 return (bool).init; 1705 } 1706 1707 @property bool swingingArms(bool value) 1708 { 1709 auto ptr = 12 in this.values; 1710 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1711 else this.values[12] = new MetadataBool(value); 1712 return value; 1713 } 1714 1715 @property byte climbing() 1716 { 1717 auto ptr = 12 in this.values; 1718 if(ptr && cast(MetadataByte)*ptr) return (cast(MetadataByte)*ptr).value; 1719 return (byte).init; 1720 } 1721 1722 @property byte climbing(byte value) 1723 { 1724 auto ptr = 12 in this.values; 1725 if(ptr && cast(MetadataByte)*ptr) (cast(MetadataByte)*ptr).value = value; 1726 else this.values[12] = new MetadataByte(value); 1727 return value; 1728 } 1729 1730 @property uint centerHeadTarget() 1731 { 1732 auto ptr = 12 in this.values; 1733 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1734 return (uint).init; 1735 } 1736 1737 @property uint centerHeadTarget(uint value) 1738 { 1739 auto ptr = 12 in this.values; 1740 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1741 else this.values[12] = new MetadataInt(value); 1742 return value; 1743 } 1744 1745 @property uint leftHeadTarget() 1746 { 1747 auto ptr = 13 in this.values; 1748 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1749 return (uint).init; 1750 } 1751 1752 @property uint leftHeadTarget(uint value) 1753 { 1754 auto ptr = 13 in this.values; 1755 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1756 else this.values[13] = new MetadataInt(value); 1757 return value; 1758 } 1759 1760 @property uint rightHeadTarget() 1761 { 1762 auto ptr = 14 in this.values; 1763 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1764 return (uint).init; 1765 } 1766 1767 @property uint rightHeadTarget(uint value) 1768 { 1769 auto ptr = 14 in this.values; 1770 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1771 else this.values[14] = new MetadataInt(value); 1772 return value; 1773 } 1774 1775 @property uint invulnerableTime() 1776 { 1777 auto ptr = 15 in this.values; 1778 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1779 return (uint).init; 1780 } 1781 1782 @property uint invulnerableTime(uint value) 1783 { 1784 auto ptr = 15 in this.values; 1785 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1786 else this.values[15] = new MetadataInt(value); 1787 return value; 1788 } 1789 1790 @property bool handsHeldUp() 1791 { 1792 auto ptr = 14 in this.values; 1793 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1794 return (bool).init; 1795 } 1796 1797 @property bool handsHeldUp(bool value) 1798 { 1799 auto ptr = 14 in this.values; 1800 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1801 else this.values[14] = new MetadataBool(value); 1802 return value; 1803 } 1804 1805 @property bool converting() 1806 { 1807 auto ptr = 15 in this.values; 1808 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1809 return (bool).init; 1810 } 1811 1812 @property bool converting(bool value) 1813 { 1814 auto ptr = 15 in this.values; 1815 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1816 else this.values[15] = new MetadataBool(value); 1817 return value; 1818 } 1819 1820 @property uint zombieVillagerProfession() 1821 { 1822 auto ptr = 16 in this.values; 1823 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1824 return (uint).init; 1825 } 1826 1827 @property uint zombieVillagerProfession(uint value) 1828 { 1829 auto ptr = 16 in this.values; 1830 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1831 else this.values[16] = new MetadataInt(value); 1832 return value; 1833 } 1834 1835 @property uint carriedBlock() 1836 { 1837 auto ptr = 12 in this.values; 1838 if(ptr && cast(MetadataBlock)*ptr) return (cast(MetadataBlock)*ptr).value; 1839 return (uint).init; 1840 } 1841 1842 @property uint carriedBlock(uint value) 1843 { 1844 auto ptr = 12 in this.values; 1845 if(ptr && cast(MetadataBlock)*ptr) (cast(MetadataBlock)*ptr).value = value; 1846 else this.values[12] = new MetadataBlock(value); 1847 return value; 1848 } 1849 1850 @property bool screaming() 1851 { 1852 auto ptr = 13 in this.values; 1853 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1854 return (bool).init; 1855 } 1856 1857 @property bool screaming(bool value) 1858 { 1859 auto ptr = 13 in this.values; 1860 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1861 else this.values[13] = new MetadataBool(value); 1862 return value; 1863 } 1864 1865 @property uint dragonPhase() 1866 { 1867 auto ptr = 12 in this.values; 1868 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1869 return (uint).init; 1870 } 1871 1872 @property uint dragonPhase(uint value) 1873 { 1874 auto ptr = 12 in this.values; 1875 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1876 else this.values[12] = new MetadataInt(value); 1877 return value; 1878 } 1879 1880 @property bool ghastAttacking() 1881 { 1882 auto ptr = 12 in this.values; 1883 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1884 return (bool).init; 1885 } 1886 1887 @property bool ghastAttacking(bool value) 1888 { 1889 auto ptr = 12 in this.values; 1890 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1891 else this.values[12] = new MetadataBool(value); 1892 return value; 1893 } 1894 1895 @property uint slimeSize() 1896 { 1897 auto ptr = 12 in this.values; 1898 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1899 return uint(1); 1900 } 1901 1902 @property uint slimeSize(uint value) 1903 { 1904 auto ptr = 12 in this.values; 1905 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1906 else this.values[12] = new MetadataInt(value); 1907 return value; 1908 } 1909 1910 @property uint shakingPower() 1911 { 1912 auto ptr = 6 in this.values; 1913 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1914 return (uint).init; 1915 } 1916 1917 @property uint shakingPower(uint value) 1918 { 1919 auto ptr = 6 in this.values; 1920 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1921 else this.values[6] = new MetadataInt(value); 1922 return value; 1923 } 1924 1925 @property uint shakingDirection() 1926 { 1927 auto ptr = 7 in this.values; 1928 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1929 return (uint).init; 1930 } 1931 1932 @property uint shakingDirection(uint value) 1933 { 1934 auto ptr = 7 in this.values; 1935 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1936 else this.values[7] = new MetadataInt(value); 1937 return value; 1938 } 1939 1940 @property float shakingMultiplier() 1941 { 1942 auto ptr = 8 in this.values; 1943 if(ptr && cast(MetadataFloat)*ptr) return (cast(MetadataFloat)*ptr).value; 1944 return float(0); 1945 } 1946 1947 @property float shakingMultiplier(float value) 1948 { 1949 auto ptr = 8 in this.values; 1950 if(ptr && cast(MetadataFloat)*ptr) (cast(MetadataFloat)*ptr).value = value; 1951 else this.values[8] = new MetadataFloat(value); 1952 return value; 1953 } 1954 1955 @property uint minecartBlock() 1956 { 1957 auto ptr = 9 in this.values; 1958 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1959 return (uint).init; 1960 } 1961 1962 @property uint minecartBlock(uint value) 1963 { 1964 auto ptr = 9 in this.values; 1965 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1966 else this.values[9] = new MetadataInt(value); 1967 return value; 1968 } 1969 1970 @property uint minecartBlockPosition() 1971 { 1972 auto ptr = 10 in this.values; 1973 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 1974 return uint(6); 1975 } 1976 1977 @property uint minecartBlockPosition(uint value) 1978 { 1979 auto ptr = 10 in this.values; 1980 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 1981 else this.values[10] = new MetadataInt(value); 1982 return value; 1983 } 1984 1985 @property bool minecartCustomBlock() 1986 { 1987 auto ptr = 11 in this.values; 1988 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 1989 return (bool).init; 1990 } 1991 1992 @property bool minecartCustomBlock(bool value) 1993 { 1994 auto ptr = 11 in this.values; 1995 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 1996 else this.values[11] = new MetadataBool(value); 1997 return value; 1998 } 1999 2000 @property bool furnacePowered() 2001 { 2002 auto ptr = 12 in this.values; 2003 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 2004 return (bool).init; 2005 } 2006 2007 @property bool furnacePowered(bool value) 2008 { 2009 auto ptr = 12 in this.values; 2010 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 2011 else this.values[12] = new MetadataBool(value); 2012 return value; 2013 } 2014 2015 @property string command() 2016 { 2017 auto ptr = 12 in this.values; 2018 if(ptr && cast(MetadataString)*ptr) return (cast(MetadataString)*ptr).value; 2019 return (string).init; 2020 } 2021 2022 @property string command(string value) 2023 { 2024 auto ptr = 12 in this.values; 2025 if(ptr && cast(MetadataString)*ptr) (cast(MetadataString)*ptr).value = value; 2026 else this.values[12] = new MetadataString(value); 2027 return value; 2028 } 2029 2030 @property string lastOutput() 2031 { 2032 auto ptr = 13 in this.values; 2033 if(ptr && cast(MetadataChat)*ptr) return (cast(MetadataChat)*ptr).value; 2034 return (string).init; 2035 } 2036 2037 @property string lastOutput(string value) 2038 { 2039 auto ptr = 13 in this.values; 2040 if(ptr && cast(MetadataChat)*ptr) (cast(MetadataChat)*ptr).value = value; 2041 else this.values[13] = new MetadataChat(value); 2042 return value; 2043 } 2044 2045 @property uint fuseTime() 2046 { 2047 auto ptr = 6 in this.values; 2048 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 2049 return (uint).init; 2050 } 2051 2052 @property uint fuseTime(uint value) 2053 { 2054 auto ptr = 6 in this.values; 2055 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 2056 else this.values[6] = new MetadataInt(value); 2057 return value; 2058 } 2059 2060 @property uint phantomSize() 2061 { 2062 auto ptr = 12 in this.values; 2063 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 2064 return (uint).init; 2065 } 2066 2067 @property uint phantomSize(uint value) 2068 { 2069 auto ptr = 12 in this.values; 2070 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 2071 else this.values[12] = new MetadataInt(value); 2072 return value; 2073 } 2074 2075 @property bool fromBucket() 2076 { 2077 auto ptr = 12 in this.values; 2078 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 2079 return (bool).init; 2080 } 2081 2082 @property bool fromBucket(bool value) 2083 { 2084 auto ptr = 12 in this.values; 2085 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 2086 else this.values[12] = new MetadataBool(value); 2087 return value; 2088 } 2089 2090 @property uint puffState() 2091 { 2092 auto ptr = 13 in this.values; 2093 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 2094 return (uint).init; 2095 } 2096 2097 @property uint puffState(uint value) 2098 { 2099 auto ptr = 13 in this.values; 2100 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 2101 else this.values[13] = new MetadataInt(value); 2102 return value; 2103 } 2104 2105 @property uint tropicalFishVariant() 2106 { 2107 auto ptr = 13 in this.values; 2108 if(ptr && cast(MetadataInt)*ptr) return (cast(MetadataInt)*ptr).value; 2109 return (uint).init; 2110 } 2111 2112 @property uint tropicalFishVariant(uint value) 2113 { 2114 auto ptr = 13 in this.values; 2115 if(ptr && cast(MetadataInt)*ptr) (cast(MetadataInt)*ptr).value = value; 2116 else this.values[13] = new MetadataInt(value); 2117 return value; 2118 } 2119 2120 @property ulong homePosition() 2121 { 2122 auto ptr = 13 in this.values; 2123 if(ptr && cast(MetadataPosition)*ptr) return (cast(MetadataPosition)*ptr).value; 2124 return (ulong).init; 2125 } 2126 2127 @property ulong homePosition(ulong value) 2128 { 2129 auto ptr = 13 in this.values; 2130 if(ptr && cast(MetadataPosition)*ptr) (cast(MetadataPosition)*ptr).value = value; 2131 else this.values[13] = new MetadataPosition(value); 2132 return value; 2133 } 2134 2135 @property bool hasEgg() 2136 { 2137 auto ptr = 14 in this.values; 2138 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 2139 return (bool).init; 2140 } 2141 2142 @property bool hasEgg(bool value) 2143 { 2144 auto ptr = 14 in this.values; 2145 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 2146 else this.values[14] = new MetadataBool(value); 2147 return value; 2148 } 2149 2150 @property bool layingEgg() 2151 { 2152 auto ptr = 15 in this.values; 2153 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 2154 return (bool).init; 2155 } 2156 2157 @property bool layingEgg(bool value) 2158 { 2159 auto ptr = 15 in this.values; 2160 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 2161 else this.values[15] = new MetadataBool(value); 2162 return value; 2163 } 2164 2165 @property ulong travelPos() 2166 { 2167 auto ptr = 16 in this.values; 2168 if(ptr && cast(MetadataPosition)*ptr) return (cast(MetadataPosition)*ptr).value; 2169 return (ulong).init; 2170 } 2171 2172 @property ulong travelPos(ulong value) 2173 { 2174 auto ptr = 16 in this.values; 2175 if(ptr && cast(MetadataPosition)*ptr) (cast(MetadataPosition)*ptr).value = value; 2176 else this.values[16] = new MetadataPosition(value); 2177 return value; 2178 } 2179 2180 @property bool goingHome() 2181 { 2182 auto ptr = 17 in this.values; 2183 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 2184 return (bool).init; 2185 } 2186 2187 @property bool goingHome(bool value) 2188 { 2189 auto ptr = 17 in this.values; 2190 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 2191 else this.values[17] = new MetadataBool(value); 2192 return value; 2193 } 2194 2195 @property bool traveling() 2196 { 2197 auto ptr = 18 in this.values; 2198 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 2199 return (bool).init; 2200 } 2201 2202 @property bool traveling(bool value) 2203 { 2204 auto ptr = 18 in this.values; 2205 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 2206 else this.values[18] = new MetadataBool(value); 2207 return value; 2208 } 2209 2210 @property bool hasTarget() 2211 { 2212 auto ptr = 15 in this.values; 2213 if(ptr && cast(MetadataBool)*ptr) return (cast(MetadataBool)*ptr).value; 2214 return (bool).init; 2215 } 2216 2217 @property bool hasTarget(bool value) 2218 { 2219 auto ptr = 15 in this.values; 2220 if(ptr && cast(MetadataBool)*ptr) (cast(MetadataBool)*ptr).value = value; 2221 else this.values[15] = new MetadataBool(value); 2222 return value; 2223 } 2224 2225 }