1 /** 2 3 4 Copyright: 5 Copyright (c) 2007-2018 Juan Linietsky, Ariel Manzur. 6 Copyright (c) 2014-2018 Godot Engine contributors (cf. AUTHORS.md) 7 Copyright (c) 2017-2018 Godot-D contributors 8 9 License: $(LINK2 https://opensource.org/licenses/MIT, MIT License) 10 11 12 */ 13 module godot.cpuparticles; 14 import std.meta : AliasSeq, staticIndexOf; 15 import std.traits : Unqual; 16 import godot.d.meta; 17 import godot.core; 18 import godot.c; 19 import godot.d.bind; 20 import godot.d.reference; 21 import godot.object; 22 import godot.classdb; 23 import godot.geometryinstance; 24 import godot.mesh; 25 import godot.curve; 26 import godot.gradient; 27 import godot.gradienttexture; 28 import godot.visualinstance; 29 import godot.spatial; 30 import godot.node; 31 /** 32 33 */ 34 @GodotBaseClass struct CPUParticles 35 { 36 enum string _GODOT_internal_name = "CPUParticles"; 37 public: 38 @nogc nothrow: 39 union { godot_object _godot_object; GeometryInstance _GODOT_base; } 40 alias _GODOT_base this; 41 alias BaseClasses = AliasSeq!(typeof(_GODOT_base), typeof(_GODOT_base).BaseClasses); 42 package(godot) __gshared bool _classBindingInitialized = false; 43 package(godot) static struct _classBinding 44 { 45 __gshared: 46 @GodotName("set_emitting") GodotMethod!(void, bool) setEmitting; 47 @GodotName("set_amount") GodotMethod!(void, long) setAmount; 48 @GodotName("set_lifetime") GodotMethod!(void, double) setLifetime; 49 @GodotName("set_one_shot") GodotMethod!(void, bool) setOneShot; 50 @GodotName("set_pre_process_time") GodotMethod!(void, double) setPreProcessTime; 51 @GodotName("set_explosiveness_ratio") GodotMethod!(void, double) setExplosivenessRatio; 52 @GodotName("set_randomness_ratio") GodotMethod!(void, double) setRandomnessRatio; 53 @GodotName("set_use_local_coordinates") GodotMethod!(void, bool) setUseLocalCoordinates; 54 @GodotName("set_fixed_fps") GodotMethod!(void, long) setFixedFps; 55 @GodotName("set_fractional_delta") GodotMethod!(void, bool) setFractionalDelta; 56 @GodotName("set_speed_scale") GodotMethod!(void, double) setSpeedScale; 57 @GodotName("is_emitting") GodotMethod!(bool) isEmitting; 58 @GodotName("get_amount") GodotMethod!(long) getAmount; 59 @GodotName("get_lifetime") GodotMethod!(double) getLifetime; 60 @GodotName("get_one_shot") GodotMethod!(bool) getOneShot; 61 @GodotName("get_pre_process_time") GodotMethod!(double) getPreProcessTime; 62 @GodotName("get_explosiveness_ratio") GodotMethod!(double) getExplosivenessRatio; 63 @GodotName("get_randomness_ratio") GodotMethod!(double) getRandomnessRatio; 64 @GodotName("get_use_local_coordinates") GodotMethod!(bool) getUseLocalCoordinates; 65 @GodotName("get_fixed_fps") GodotMethod!(long) getFixedFps; 66 @GodotName("get_fractional_delta") GodotMethod!(bool) getFractionalDelta; 67 @GodotName("get_speed_scale") GodotMethod!(double) getSpeedScale; 68 @GodotName("set_draw_order") GodotMethod!(void, long) setDrawOrder; 69 @GodotName("get_draw_order") GodotMethod!(CPUParticles.DrawOrder) getDrawOrder; 70 @GodotName("set_mesh") GodotMethod!(void, Mesh) setMesh; 71 @GodotName("get_mesh") GodotMethod!(Mesh) getMesh; 72 @GodotName("restart") GodotMethod!(void) restart; 73 @GodotName("set_spread") GodotMethod!(void, double) setSpread; 74 @GodotName("get_spread") GodotMethod!(double) getSpread; 75 @GodotName("set_flatness") GodotMethod!(void, double) setFlatness; 76 @GodotName("get_flatness") GodotMethod!(double) getFlatness; 77 @GodotName("set_param") GodotMethod!(void, long, double) setParam; 78 @GodotName("get_param") GodotMethod!(double, long) getParam; 79 @GodotName("set_param_randomness") GodotMethod!(void, long, double) setParamRandomness; 80 @GodotName("get_param_randomness") GodotMethod!(double, long) getParamRandomness; 81 @GodotName("set_param_curve") GodotMethod!(void, long, Curve) setParamCurve; 82 @GodotName("get_param_curve") GodotMethod!(Curve, long) getParamCurve; 83 @GodotName("set_color") GodotMethod!(void, Color) setColor; 84 @GodotName("get_color") GodotMethod!(Color) getColor; 85 @GodotName("set_color_ramp") GodotMethod!(void, Gradient) setColorRamp; 86 @GodotName("get_color_ramp") GodotMethod!(Gradient) getColorRamp; 87 @GodotName("set_particle_flag") GodotMethod!(void, long, bool) setParticleFlag; 88 @GodotName("get_particle_flag") GodotMethod!(bool, long) getParticleFlag; 89 @GodotName("set_emission_shape") GodotMethod!(void, long) setEmissionShape; 90 @GodotName("get_emission_shape") GodotMethod!(CPUParticles.EmissionShape) getEmissionShape; 91 @GodotName("set_emission_sphere_radius") GodotMethod!(void, double) setEmissionSphereRadius; 92 @GodotName("get_emission_sphere_radius") GodotMethod!(double) getEmissionSphereRadius; 93 @GodotName("set_emission_box_extents") GodotMethod!(void, Vector3) setEmissionBoxExtents; 94 @GodotName("get_emission_box_extents") GodotMethod!(Vector3) getEmissionBoxExtents; 95 @GodotName("set_emission_points") GodotMethod!(void, PoolVector3Array) setEmissionPoints; 96 @GodotName("get_emission_points") GodotMethod!(PoolVector3Array) getEmissionPoints; 97 @GodotName("set_emission_normals") GodotMethod!(void, PoolVector3Array) setEmissionNormals; 98 @GodotName("get_emission_normals") GodotMethod!(PoolVector3Array) getEmissionNormals; 99 @GodotName("set_emission_colors") GodotMethod!(void, PoolColorArray) setEmissionColors; 100 @GodotName("get_emission_colors") GodotMethod!(PoolColorArray) getEmissionColors; 101 @GodotName("get_gravity") GodotMethod!(Vector3) getGravity; 102 @GodotName("set_gravity") GodotMethod!(void, Vector3) setGravity; 103 @GodotName("convert_from_particles") GodotMethod!(void, GodotObject) convertFromParticles; 104 @GodotName("_update_render_thread") GodotMethod!(void) _updateRenderThread; 105 } 106 bool opEquals(in CPUParticles other) const { return _godot_object.ptr is other._godot_object.ptr; } 107 CPUParticles opAssign(T : typeof(null))(T n) { _godot_object.ptr = null; } 108 bool opEquals(typeof(null) n) const { return _godot_object.ptr is null; } 109 mixin baseCasts; 110 static CPUParticles _new() 111 { 112 static godot_class_constructor constructor; 113 if(constructor is null) constructor = _godot_api.godot_get_class_constructor("CPUParticles"); 114 if(constructor is null) return typeof(this).init; 115 return cast(CPUParticles)(constructor()); 116 } 117 @disable new(size_t s); 118 /// 119 enum Flags : int 120 { 121 /** 122 123 */ 124 flagAlignYToVelocity = 0, 125 /** 126 127 */ 128 flagRotateY = 1, 129 /** 130 131 */ 132 flagMax = 4, 133 } 134 /// 135 enum EmissionShape : int 136 { 137 /** 138 139 */ 140 emissionShapePoint = 0, 141 /** 142 143 */ 144 emissionShapeSphere = 1, 145 /** 146 147 */ 148 emissionShapeBox = 2, 149 /** 150 151 */ 152 emissionShapePoints = 3, 153 /** 154 155 */ 156 emissionShapeDirectedPoints = 4, 157 } 158 /// 159 enum Parameter : int 160 { 161 /** 162 163 */ 164 paramInitialLinearVelocity = 0, 165 /** 166 167 */ 168 paramAngularVelocity = 1, 169 /** 170 171 */ 172 paramLinearAccel = 2, 173 /** 174 175 */ 176 paramRadialAccel = 3, 177 /** 178 179 */ 180 paramTangentialAccel = 4, 181 /** 182 183 */ 184 paramDamping = 5, 185 /** 186 187 */ 188 paramAngle = 6, 189 /** 190 191 */ 192 paramScale = 7, 193 /** 194 195 */ 196 paramHueVariation = 8, 197 /** 198 199 */ 200 paramAnimSpeed = 9, 201 /** 202 203 */ 204 paramAnimOffset = 10, 205 /** 206 207 */ 208 paramMax = 11, 209 } 210 /// 211 enum DrawOrder : int 212 { 213 /** 214 215 */ 216 drawOrderIndex = 0, 217 /** 218 219 */ 220 drawOrderLifetime = 1, 221 /** 222 223 */ 224 drawOrderViewDepth = 2, 225 } 226 /// 227 enum Constants : int 228 { 229 flagAlignYToVelocity = 0, 230 paramInitialLinearVelocity = 0, 231 emissionShapePoint = 0, 232 drawOrderIndex = 0, 233 paramAngularVelocity = 1, 234 drawOrderLifetime = 1, 235 emissionShapeSphere = 1, 236 flagRotateY = 1, 237 drawOrderViewDepth = 2, 238 paramLinearAccel = 2, 239 emissionShapeBox = 2, 240 emissionShapePoints = 3, 241 paramRadialAccel = 3, 242 flagMax = 4, 243 paramTangentialAccel = 4, 244 emissionShapeDirectedPoints = 4, 245 paramDamping = 5, 246 paramAngle = 6, 247 paramScale = 7, 248 paramHueVariation = 8, 249 paramAnimSpeed = 9, 250 paramAnimOffset = 10, 251 paramMax = 11, 252 } 253 /** 254 255 */ 256 void setEmitting(in bool emitting) 257 { 258 checkClassBinding!(typeof(this))(); 259 ptrcall!(void)(_classBinding.setEmitting, _godot_object, emitting); 260 } 261 /** 262 263 */ 264 void setAmount(in long amount) 265 { 266 checkClassBinding!(typeof(this))(); 267 ptrcall!(void)(_classBinding.setAmount, _godot_object, amount); 268 } 269 /** 270 271 */ 272 void setLifetime(in double secs) 273 { 274 checkClassBinding!(typeof(this))(); 275 ptrcall!(void)(_classBinding.setLifetime, _godot_object, secs); 276 } 277 /** 278 279 */ 280 void setOneShot(in bool enable) 281 { 282 checkClassBinding!(typeof(this))(); 283 ptrcall!(void)(_classBinding.setOneShot, _godot_object, enable); 284 } 285 /** 286 287 */ 288 void setPreProcessTime(in double secs) 289 { 290 checkClassBinding!(typeof(this))(); 291 ptrcall!(void)(_classBinding.setPreProcessTime, _godot_object, secs); 292 } 293 /** 294 295 */ 296 void setExplosivenessRatio(in double ratio) 297 { 298 checkClassBinding!(typeof(this))(); 299 ptrcall!(void)(_classBinding.setExplosivenessRatio, _godot_object, ratio); 300 } 301 /** 302 303 */ 304 void setRandomnessRatio(in double ratio) 305 { 306 checkClassBinding!(typeof(this))(); 307 ptrcall!(void)(_classBinding.setRandomnessRatio, _godot_object, ratio); 308 } 309 /** 310 311 */ 312 void setUseLocalCoordinates(in bool enable) 313 { 314 checkClassBinding!(typeof(this))(); 315 ptrcall!(void)(_classBinding.setUseLocalCoordinates, _godot_object, enable); 316 } 317 /** 318 319 */ 320 void setFixedFps(in long fps) 321 { 322 checkClassBinding!(typeof(this))(); 323 ptrcall!(void)(_classBinding.setFixedFps, _godot_object, fps); 324 } 325 /** 326 327 */ 328 void setFractionalDelta(in bool enable) 329 { 330 checkClassBinding!(typeof(this))(); 331 ptrcall!(void)(_classBinding.setFractionalDelta, _godot_object, enable); 332 } 333 /** 334 335 */ 336 void setSpeedScale(in double scale) 337 { 338 checkClassBinding!(typeof(this))(); 339 ptrcall!(void)(_classBinding.setSpeedScale, _godot_object, scale); 340 } 341 /** 342 343 */ 344 bool isEmitting() const 345 { 346 checkClassBinding!(typeof(this))(); 347 return ptrcall!(bool)(_classBinding.isEmitting, _godot_object); 348 } 349 /** 350 351 */ 352 long getAmount() const 353 { 354 checkClassBinding!(typeof(this))(); 355 return ptrcall!(long)(_classBinding.getAmount, _godot_object); 356 } 357 /** 358 359 */ 360 double getLifetime() const 361 { 362 checkClassBinding!(typeof(this))(); 363 return ptrcall!(double)(_classBinding.getLifetime, _godot_object); 364 } 365 /** 366 367 */ 368 bool getOneShot() const 369 { 370 checkClassBinding!(typeof(this))(); 371 return ptrcall!(bool)(_classBinding.getOneShot, _godot_object); 372 } 373 /** 374 375 */ 376 double getPreProcessTime() const 377 { 378 checkClassBinding!(typeof(this))(); 379 return ptrcall!(double)(_classBinding.getPreProcessTime, _godot_object); 380 } 381 /** 382 383 */ 384 double getExplosivenessRatio() const 385 { 386 checkClassBinding!(typeof(this))(); 387 return ptrcall!(double)(_classBinding.getExplosivenessRatio, _godot_object); 388 } 389 /** 390 391 */ 392 double getRandomnessRatio() const 393 { 394 checkClassBinding!(typeof(this))(); 395 return ptrcall!(double)(_classBinding.getRandomnessRatio, _godot_object); 396 } 397 /** 398 399 */ 400 bool getUseLocalCoordinates() const 401 { 402 checkClassBinding!(typeof(this))(); 403 return ptrcall!(bool)(_classBinding.getUseLocalCoordinates, _godot_object); 404 } 405 /** 406 407 */ 408 long getFixedFps() const 409 { 410 checkClassBinding!(typeof(this))(); 411 return ptrcall!(long)(_classBinding.getFixedFps, _godot_object); 412 } 413 /** 414 415 */ 416 bool getFractionalDelta() const 417 { 418 checkClassBinding!(typeof(this))(); 419 return ptrcall!(bool)(_classBinding.getFractionalDelta, _godot_object); 420 } 421 /** 422 423 */ 424 double getSpeedScale() const 425 { 426 checkClassBinding!(typeof(this))(); 427 return ptrcall!(double)(_classBinding.getSpeedScale, _godot_object); 428 } 429 /** 430 431 */ 432 void setDrawOrder(in long order) 433 { 434 checkClassBinding!(typeof(this))(); 435 ptrcall!(void)(_classBinding.setDrawOrder, _godot_object, order); 436 } 437 /** 438 439 */ 440 CPUParticles.DrawOrder getDrawOrder() const 441 { 442 checkClassBinding!(typeof(this))(); 443 return ptrcall!(CPUParticles.DrawOrder)(_classBinding.getDrawOrder, _godot_object); 444 } 445 /** 446 447 */ 448 void setMesh(Mesh mesh) 449 { 450 checkClassBinding!(typeof(this))(); 451 ptrcall!(void)(_classBinding.setMesh, _godot_object, mesh); 452 } 453 /** 454 455 */ 456 Ref!Mesh getMesh() const 457 { 458 checkClassBinding!(typeof(this))(); 459 return ptrcall!(Mesh)(_classBinding.getMesh, _godot_object); 460 } 461 /** 462 463 */ 464 void restart() 465 { 466 checkClassBinding!(typeof(this))(); 467 ptrcall!(void)(_classBinding.restart, _godot_object); 468 } 469 /** 470 471 */ 472 void setSpread(in double degrees) 473 { 474 checkClassBinding!(typeof(this))(); 475 ptrcall!(void)(_classBinding.setSpread, _godot_object, degrees); 476 } 477 /** 478 479 */ 480 double getSpread() const 481 { 482 checkClassBinding!(typeof(this))(); 483 return ptrcall!(double)(_classBinding.getSpread, _godot_object); 484 } 485 /** 486 487 */ 488 void setFlatness(in double amount) 489 { 490 checkClassBinding!(typeof(this))(); 491 ptrcall!(void)(_classBinding.setFlatness, _godot_object, amount); 492 } 493 /** 494 495 */ 496 double getFlatness() const 497 { 498 checkClassBinding!(typeof(this))(); 499 return ptrcall!(double)(_classBinding.getFlatness, _godot_object); 500 } 501 /** 502 503 */ 504 void setParam(in long param, in double value) 505 { 506 checkClassBinding!(typeof(this))(); 507 ptrcall!(void)(_classBinding.setParam, _godot_object, param, value); 508 } 509 /** 510 511 */ 512 double getParam(in long param) const 513 { 514 checkClassBinding!(typeof(this))(); 515 return ptrcall!(double)(_classBinding.getParam, _godot_object, param); 516 } 517 /** 518 519 */ 520 void setParamRandomness(in long param, in double randomness) 521 { 522 checkClassBinding!(typeof(this))(); 523 ptrcall!(void)(_classBinding.setParamRandomness, _godot_object, param, randomness); 524 } 525 /** 526 527 */ 528 double getParamRandomness(in long param) const 529 { 530 checkClassBinding!(typeof(this))(); 531 return ptrcall!(double)(_classBinding.getParamRandomness, _godot_object, param); 532 } 533 /** 534 535 */ 536 void setParamCurve(in long param, Curve curve) 537 { 538 checkClassBinding!(typeof(this))(); 539 ptrcall!(void)(_classBinding.setParamCurve, _godot_object, param, curve); 540 } 541 /** 542 543 */ 544 Ref!Curve getParamCurve(in long param) const 545 { 546 checkClassBinding!(typeof(this))(); 547 return ptrcall!(Curve)(_classBinding.getParamCurve, _godot_object, param); 548 } 549 /** 550 551 */ 552 void setColor(in Color color) 553 { 554 checkClassBinding!(typeof(this))(); 555 ptrcall!(void)(_classBinding.setColor, _godot_object, color); 556 } 557 /** 558 559 */ 560 Color getColor() const 561 { 562 checkClassBinding!(typeof(this))(); 563 return ptrcall!(Color)(_classBinding.getColor, _godot_object); 564 } 565 /** 566 567 */ 568 void setColorRamp(Gradient ramp) 569 { 570 checkClassBinding!(typeof(this))(); 571 ptrcall!(void)(_classBinding.setColorRamp, _godot_object, ramp); 572 } 573 /** 574 575 */ 576 Ref!Gradient getColorRamp() const 577 { 578 checkClassBinding!(typeof(this))(); 579 return ptrcall!(Gradient)(_classBinding.getColorRamp, _godot_object); 580 } 581 /** 582 583 */ 584 void setParticleFlag(in long flag, in bool enable) 585 { 586 checkClassBinding!(typeof(this))(); 587 ptrcall!(void)(_classBinding.setParticleFlag, _godot_object, flag, enable); 588 } 589 /** 590 591 */ 592 bool getParticleFlag(in long flag) const 593 { 594 checkClassBinding!(typeof(this))(); 595 return ptrcall!(bool)(_classBinding.getParticleFlag, _godot_object, flag); 596 } 597 /** 598 599 */ 600 void setEmissionShape(in long shape) 601 { 602 checkClassBinding!(typeof(this))(); 603 ptrcall!(void)(_classBinding.setEmissionShape, _godot_object, shape); 604 } 605 /** 606 607 */ 608 CPUParticles.EmissionShape getEmissionShape() const 609 { 610 checkClassBinding!(typeof(this))(); 611 return ptrcall!(CPUParticles.EmissionShape)(_classBinding.getEmissionShape, _godot_object); 612 } 613 /** 614 615 */ 616 void setEmissionSphereRadius(in double radius) 617 { 618 checkClassBinding!(typeof(this))(); 619 ptrcall!(void)(_classBinding.setEmissionSphereRadius, _godot_object, radius); 620 } 621 /** 622 623 */ 624 double getEmissionSphereRadius() const 625 { 626 checkClassBinding!(typeof(this))(); 627 return ptrcall!(double)(_classBinding.getEmissionSphereRadius, _godot_object); 628 } 629 /** 630 631 */ 632 void setEmissionBoxExtents(in Vector3 extents) 633 { 634 checkClassBinding!(typeof(this))(); 635 ptrcall!(void)(_classBinding.setEmissionBoxExtents, _godot_object, extents); 636 } 637 /** 638 639 */ 640 Vector3 getEmissionBoxExtents() const 641 { 642 checkClassBinding!(typeof(this))(); 643 return ptrcall!(Vector3)(_classBinding.getEmissionBoxExtents, _godot_object); 644 } 645 /** 646 647 */ 648 void setEmissionPoints(in PoolVector3Array array) 649 { 650 checkClassBinding!(typeof(this))(); 651 ptrcall!(void)(_classBinding.setEmissionPoints, _godot_object, array); 652 } 653 /** 654 655 */ 656 PoolVector3Array getEmissionPoints() const 657 { 658 checkClassBinding!(typeof(this))(); 659 return ptrcall!(PoolVector3Array)(_classBinding.getEmissionPoints, _godot_object); 660 } 661 /** 662 663 */ 664 void setEmissionNormals(in PoolVector3Array array) 665 { 666 checkClassBinding!(typeof(this))(); 667 ptrcall!(void)(_classBinding.setEmissionNormals, _godot_object, array); 668 } 669 /** 670 671 */ 672 PoolVector3Array getEmissionNormals() const 673 { 674 checkClassBinding!(typeof(this))(); 675 return ptrcall!(PoolVector3Array)(_classBinding.getEmissionNormals, _godot_object); 676 } 677 /** 678 679 */ 680 void setEmissionColors(in PoolColorArray array) 681 { 682 checkClassBinding!(typeof(this))(); 683 ptrcall!(void)(_classBinding.setEmissionColors, _godot_object, array); 684 } 685 /** 686 687 */ 688 PoolColorArray getEmissionColors() const 689 { 690 checkClassBinding!(typeof(this))(); 691 return ptrcall!(PoolColorArray)(_classBinding.getEmissionColors, _godot_object); 692 } 693 /** 694 695 */ 696 Vector3 getGravity() const 697 { 698 checkClassBinding!(typeof(this))(); 699 return ptrcall!(Vector3)(_classBinding.getGravity, _godot_object); 700 } 701 /** 702 703 */ 704 void setGravity(in Vector3 accel_vec) 705 { 706 checkClassBinding!(typeof(this))(); 707 ptrcall!(void)(_classBinding.setGravity, _godot_object, accel_vec); 708 } 709 /** 710 711 */ 712 void convertFromParticles(GodotObject particles) 713 { 714 checkClassBinding!(typeof(this))(); 715 ptrcall!(void)(_classBinding.convertFromParticles, _godot_object, particles); 716 } 717 /** 718 719 */ 720 void _updateRenderThread() 721 { 722 Array _GODOT_args = Array.empty_array; 723 String _GODOT_method_name = String("_update_render_thread"); 724 this.callv(_GODOT_method_name, _GODOT_args); 725 } 726 /** 727 728 */ 729 @property bool emitting() 730 { 731 return isEmitting(); 732 } 733 /// ditto 734 @property void emitting(bool v) 735 { 736 setEmitting(v); 737 } 738 /** 739 740 */ 741 @property long amount() 742 { 743 return getAmount(); 744 } 745 /// ditto 746 @property void amount(long v) 747 { 748 setAmount(v); 749 } 750 /** 751 752 */ 753 @property double lifetime() 754 { 755 return getLifetime(); 756 } 757 /// ditto 758 @property void lifetime(double v) 759 { 760 setLifetime(v); 761 } 762 /** 763 764 */ 765 @property bool oneShot() 766 { 767 return getOneShot(); 768 } 769 /// ditto 770 @property void oneShot(bool v) 771 { 772 setOneShot(v); 773 } 774 /** 775 776 */ 777 @property double preprocess() 778 { 779 return getPreProcessTime(); 780 } 781 /// ditto 782 @property void preprocess(double v) 783 { 784 setPreProcessTime(v); 785 } 786 /** 787 788 */ 789 @property double speedScale() 790 { 791 return getSpeedScale(); 792 } 793 /// ditto 794 @property void speedScale(double v) 795 { 796 setSpeedScale(v); 797 } 798 /** 799 800 */ 801 @property double explosiveness() 802 { 803 return getExplosivenessRatio(); 804 } 805 /// ditto 806 @property void explosiveness(double v) 807 { 808 setExplosivenessRatio(v); 809 } 810 /** 811 812 */ 813 @property double randomness() 814 { 815 return getRandomnessRatio(); 816 } 817 /// ditto 818 @property void randomness(double v) 819 { 820 setRandomnessRatio(v); 821 } 822 /** 823 824 */ 825 @property long fixedFps() 826 { 827 return getFixedFps(); 828 } 829 /// ditto 830 @property void fixedFps(long v) 831 { 832 setFixedFps(v); 833 } 834 /** 835 836 */ 837 @property bool fractDelta() 838 { 839 return getFractionalDelta(); 840 } 841 /// ditto 842 @property void fractDelta(bool v) 843 { 844 setFractionalDelta(v); 845 } 846 /** 847 848 */ 849 @property bool localCoords() 850 { 851 return getUseLocalCoordinates(); 852 } 853 /// ditto 854 @property void localCoords(bool v) 855 { 856 setUseLocalCoordinates(v); 857 } 858 /** 859 860 */ 861 @property CPUParticles.DrawOrder drawOrder() 862 { 863 return getDrawOrder(); 864 } 865 /// ditto 866 @property void drawOrder(long v) 867 { 868 setDrawOrder(v); 869 } 870 /** 871 872 */ 873 @property Mesh mesh() 874 { 875 return getMesh(); 876 } 877 /// ditto 878 @property void mesh(Mesh v) 879 { 880 setMesh(v); 881 } 882 /** 883 884 */ 885 @property CPUParticles.EmissionShape emissionShape() 886 { 887 return getEmissionShape(); 888 } 889 /// ditto 890 @property void emissionShape(long v) 891 { 892 setEmissionShape(v); 893 } 894 /** 895 896 */ 897 @property double emissionSphereRadius() 898 { 899 return getEmissionSphereRadius(); 900 } 901 /// ditto 902 @property void emissionSphereRadius(double v) 903 { 904 setEmissionSphereRadius(v); 905 } 906 /** 907 908 */ 909 @property Vector3 emissionBoxExtents() 910 { 911 return getEmissionBoxExtents(); 912 } 913 /// ditto 914 @property void emissionBoxExtents(Vector3 v) 915 { 916 setEmissionBoxExtents(v); 917 } 918 /** 919 920 */ 921 @property PoolVector3Array emissionPoints() 922 { 923 return getEmissionPoints(); 924 } 925 /// ditto 926 @property void emissionPoints(PoolVector3Array v) 927 { 928 setEmissionPoints(v); 929 } 930 /** 931 932 */ 933 @property PoolVector3Array emissionNormals() 934 { 935 return getEmissionNormals(); 936 } 937 /// ditto 938 @property void emissionNormals(PoolVector3Array v) 939 { 940 setEmissionNormals(v); 941 } 942 /** 943 944 */ 945 @property PoolColorArray emissionColors() 946 { 947 return getEmissionColors(); 948 } 949 /// ditto 950 @property void emissionColors(PoolColorArray v) 951 { 952 setEmissionColors(v); 953 } 954 /** 955 956 */ 957 @property bool flagAlignY() 958 { 959 return getParticleFlag(0); 960 } 961 /// ditto 962 @property void flagAlignY(bool v) 963 { 964 setParticleFlag(0, v); 965 } 966 /** 967 968 */ 969 @property bool flagRotateY() 970 { 971 return getParticleFlag(1); 972 } 973 /// ditto 974 @property void flagRotateY(bool v) 975 { 976 setParticleFlag(1, v); 977 } 978 /** 979 980 */ 981 @property bool flagDisableZ() 982 { 983 return getParticleFlag(2); 984 } 985 /// ditto 986 @property void flagDisableZ(bool v) 987 { 988 setParticleFlag(2, v); 989 } 990 /** 991 992 */ 993 @property double spread() 994 { 995 return getSpread(); 996 } 997 /// ditto 998 @property void spread(double v) 999 { 1000 setSpread(v); 1001 } 1002 /** 1003 1004 */ 1005 @property double flatness() 1006 { 1007 return getFlatness(); 1008 } 1009 /// ditto 1010 @property void flatness(double v) 1011 { 1012 setFlatness(v); 1013 } 1014 /** 1015 1016 */ 1017 @property Vector3 gravity() 1018 { 1019 return getGravity(); 1020 } 1021 /// ditto 1022 @property void gravity(Vector3 v) 1023 { 1024 setGravity(v); 1025 } 1026 /** 1027 1028 */ 1029 @property double initialVelocity() 1030 { 1031 return getParam(0); 1032 } 1033 /// ditto 1034 @property void initialVelocity(double v) 1035 { 1036 setParam(0, v); 1037 } 1038 /** 1039 1040 */ 1041 @property double initialVelocityRandom() 1042 { 1043 return getParamRandomness(0); 1044 } 1045 /// ditto 1046 @property void initialVelocityRandom(double v) 1047 { 1048 setParamRandomness(0, v); 1049 } 1050 /** 1051 1052 */ 1053 @property double angularVelocity() 1054 { 1055 return getParam(1); 1056 } 1057 /// ditto 1058 @property void angularVelocity(double v) 1059 { 1060 setParam(1, v); 1061 } 1062 /** 1063 1064 */ 1065 @property double angularVelocityRandom() 1066 { 1067 return getParamRandomness(1); 1068 } 1069 /// ditto 1070 @property void angularVelocityRandom(double v) 1071 { 1072 setParamRandomness(1, v); 1073 } 1074 /** 1075 1076 */ 1077 @property Curve angularVelocityCurve() 1078 { 1079 return getParamCurve(1); 1080 } 1081 /// ditto 1082 @property void angularVelocityCurve(Curve v) 1083 { 1084 setParamCurve(1, v); 1085 } 1086 /** 1087 1088 */ 1089 @property double linearAccel() 1090 { 1091 return getParam(2); 1092 } 1093 /// ditto 1094 @property void linearAccel(double v) 1095 { 1096 setParam(2, v); 1097 } 1098 /** 1099 1100 */ 1101 @property double linearAccelRandom() 1102 { 1103 return getParamRandomness(2); 1104 } 1105 /// ditto 1106 @property void linearAccelRandom(double v) 1107 { 1108 setParamRandomness(2, v); 1109 } 1110 /** 1111 1112 */ 1113 @property Curve linearAccelCurve() 1114 { 1115 return getParamCurve(2); 1116 } 1117 /// ditto 1118 @property void linearAccelCurve(Curve v) 1119 { 1120 setParamCurve(2, v); 1121 } 1122 /** 1123 1124 */ 1125 @property double radialAccel() 1126 { 1127 return getParam(3); 1128 } 1129 /// ditto 1130 @property void radialAccel(double v) 1131 { 1132 setParam(3, v); 1133 } 1134 /** 1135 1136 */ 1137 @property double radialAccelRandom() 1138 { 1139 return getParamRandomness(3); 1140 } 1141 /// ditto 1142 @property void radialAccelRandom(double v) 1143 { 1144 setParamRandomness(3, v); 1145 } 1146 /** 1147 1148 */ 1149 @property Curve radialAccelCurve() 1150 { 1151 return getParamCurve(3); 1152 } 1153 /// ditto 1154 @property void radialAccelCurve(Curve v) 1155 { 1156 setParamCurve(3, v); 1157 } 1158 /** 1159 1160 */ 1161 @property double tangentialAccel() 1162 { 1163 return getParam(4); 1164 } 1165 /// ditto 1166 @property void tangentialAccel(double v) 1167 { 1168 setParam(4, v); 1169 } 1170 /** 1171 1172 */ 1173 @property double tangentialAccelRandom() 1174 { 1175 return getParamRandomness(4); 1176 } 1177 /// ditto 1178 @property void tangentialAccelRandom(double v) 1179 { 1180 setParamRandomness(4, v); 1181 } 1182 /** 1183 1184 */ 1185 @property Curve tangentialAccelCurve() 1186 { 1187 return getParamCurve(4); 1188 } 1189 /// ditto 1190 @property void tangentialAccelCurve(Curve v) 1191 { 1192 setParamCurve(4, v); 1193 } 1194 /** 1195 1196 */ 1197 @property double damping() 1198 { 1199 return getParam(5); 1200 } 1201 /// ditto 1202 @property void damping(double v) 1203 { 1204 setParam(5, v); 1205 } 1206 /** 1207 1208 */ 1209 @property double dampingRandom() 1210 { 1211 return getParamRandomness(5); 1212 } 1213 /// ditto 1214 @property void dampingRandom(double v) 1215 { 1216 setParamRandomness(5, v); 1217 } 1218 /** 1219 1220 */ 1221 @property Curve dampingCurve() 1222 { 1223 return getParamCurve(5); 1224 } 1225 /// ditto 1226 @property void dampingCurve(Curve v) 1227 { 1228 setParamCurve(5, v); 1229 } 1230 /** 1231 1232 */ 1233 @property double angle() 1234 { 1235 return getParam(6); 1236 } 1237 /// ditto 1238 @property void angle(double v) 1239 { 1240 setParam(6, v); 1241 } 1242 /** 1243 1244 */ 1245 @property double angleRandom() 1246 { 1247 return getParamRandomness(6); 1248 } 1249 /// ditto 1250 @property void angleRandom(double v) 1251 { 1252 setParamRandomness(6, v); 1253 } 1254 /** 1255 1256 */ 1257 @property Curve angleCurve() 1258 { 1259 return getParamCurve(6); 1260 } 1261 /// ditto 1262 @property void angleCurve(Curve v) 1263 { 1264 setParamCurve(6, v); 1265 } 1266 /** 1267 1268 */ 1269 @property double scale() 1270 { 1271 return getParam(7); 1272 } 1273 /// ditto 1274 @property void scale(double v) 1275 { 1276 setParam(7, v); 1277 } 1278 /** 1279 1280 */ 1281 @property double scaleRandom() 1282 { 1283 return getParamRandomness(7); 1284 } 1285 /// ditto 1286 @property void scaleRandom(double v) 1287 { 1288 setParamRandomness(7, v); 1289 } 1290 /** 1291 1292 */ 1293 @property Curve scaleCurve() 1294 { 1295 return getParamCurve(7); 1296 } 1297 /// ditto 1298 @property void scaleCurve(Curve v) 1299 { 1300 setParamCurve(7, v); 1301 } 1302 /** 1303 1304 */ 1305 @property Color color() 1306 { 1307 return getColor(); 1308 } 1309 /// ditto 1310 @property void color(Color v) 1311 { 1312 setColor(v); 1313 } 1314 /** 1315 1316 */ 1317 @property Gradient colorRamp() 1318 { 1319 return getColorRamp(); 1320 } 1321 /// ditto 1322 @property void colorRamp(Gradient v) 1323 { 1324 setColorRamp(v); 1325 } 1326 /** 1327 1328 */ 1329 @property double hueVariation() 1330 { 1331 return getParam(8); 1332 } 1333 /// ditto 1334 @property void hueVariation(double v) 1335 { 1336 setParam(8, v); 1337 } 1338 /** 1339 1340 */ 1341 @property double hueVariationRandom() 1342 { 1343 return getParamRandomness(8); 1344 } 1345 /// ditto 1346 @property void hueVariationRandom(double v) 1347 { 1348 setParamRandomness(8, v); 1349 } 1350 /** 1351 1352 */ 1353 @property Curve hueVariationCurve() 1354 { 1355 return getParamCurve(8); 1356 } 1357 /// ditto 1358 @property void hueVariationCurve(Curve v) 1359 { 1360 setParamCurve(8, v); 1361 } 1362 /** 1363 1364 */ 1365 @property double animSpeed() 1366 { 1367 return getParam(9); 1368 } 1369 /// ditto 1370 @property void animSpeed(double v) 1371 { 1372 setParam(9, v); 1373 } 1374 /** 1375 1376 */ 1377 @property double animSpeedRandom() 1378 { 1379 return getParamRandomness(9); 1380 } 1381 /// ditto 1382 @property void animSpeedRandom(double v) 1383 { 1384 setParamRandomness(9, v); 1385 } 1386 /** 1387 1388 */ 1389 @property Curve animSpeedCurve() 1390 { 1391 return getParamCurve(9); 1392 } 1393 /// ditto 1394 @property void animSpeedCurve(Curve v) 1395 { 1396 setParamCurve(9, v); 1397 } 1398 /** 1399 1400 */ 1401 @property double animOffset() 1402 { 1403 return getParam(10); 1404 } 1405 /// ditto 1406 @property void animOffset(double v) 1407 { 1408 setParam(10, v); 1409 } 1410 /** 1411 1412 */ 1413 @property double animOffsetRandom() 1414 { 1415 return getParamRandomness(10); 1416 } 1417 /// ditto 1418 @property void animOffsetRandom(double v) 1419 { 1420 setParamRandomness(10, v); 1421 } 1422 /** 1423 1424 */ 1425 @property Curve animOffsetCurve() 1426 { 1427 return getParamCurve(10); 1428 } 1429 /// ditto 1430 @property void animOffsetCurve(Curve v) 1431 { 1432 setParamCurve(10, v); 1433 } 1434 /** 1435 1436 */ 1437 @property bool animLoop() 1438 { 1439 return getParticleFlag(3); 1440 } 1441 /// ditto 1442 @property void animLoop(bool v) 1443 { 1444 setParticleFlag(3, v); 1445 } 1446 }