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