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