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