Advertisement
Guest User

Chayton's Water Function

a guest
Nov 13th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.92 KB | None | 0 0
  1. //// Chayton Aumeier - Run 2nd ////
  2.  
  3. drawWaterFinal();
  4.  
  5. // Functions (in running order) //
  6. function drawWater() {
  7. // Postion for Water Start
  8. penUp();
  9. moveTo (0,370);
  10. turnTo(90);
  11.  
  12. // Draw Water Base
  13. penUp();
  14. darkWaterColor();
  15. penWidth(170);
  16. penDown();
  17. moveForward(320);
  18. }
  19. function drawWaterVariation() {
  20. // Inital Positioning
  21. penUp();
  22. darkerWaterColor();
  23. turnTo(90);
  24. moveTo(0,425);
  25. penWidth(20);
  26. penDown();
  27.  
  28. // Automation for Water Varition
  29. for (var q = 0; q < 10; q++) {
  30. penUp();
  31. turnTo(90);
  32. moveTo(0,450 - (q*20));
  33. penWidth(10 - q);
  34. penDown();
  35.  
  36. // Dark Wave Look
  37. for (var i = 0; i < 10; i++) {
  38. arcRight(60,50);
  39. arcLeft(60,50);
  40. arcLeft(60,50);
  41. arcRight(60,50);
  42. }
  43. }
  44. }
  45. function wavePosition() {
  46. // Random Postion for Wave
  47. penUp();
  48. moveTo(randomNumber(0, 320),randomNumber(300, 450));
  49. turnTo(90);
  50. }
  51. function wave(size) {
  52. // Makes Wave
  53. penDown();
  54. arcLeft(180,10 * size);
  55. turnRight(180);
  56. arcRight(90 / 1.25,25 * size);
  57. penUp();
  58. }
  59. function drawWaves(numberOfWaves) {
  60. penUp();
  61. waveColor();
  62.  
  63. for (var i = 0; i < numberOfWaves; i++) {
  64. penWidth(randomNumber(1,10));
  65.  
  66. // Get Random Position and Draw a Wave
  67. wavePosition();
  68. wave(randomNumber(100,200)/100);
  69. }
  70. }
  71. function drawMoonReflections() {
  72. penUp();
  73. turnTo(90);
  74. moonReflectionColor();
  75.  
  76. // Automation for moon lines
  77.  
  78. // Draws Outside Lines
  79. for (var i = 0; i < 9; i++) {
  80.  
  81. // Incresing Size
  82. if (i < 6) {
  83. moveTo(185 - i*5,325 + i*10);
  84. penWidth(4 + i);
  85. penDown();
  86. moveForward(15 + i*10);
  87. penUp();
  88. }
  89.  
  90. // Same Size
  91. else {
  92. moveTo(185 - 6*5,325 + i*10);
  93. penWidth(10);
  94. penDown();
  95. moveForward(15 + 6*10);
  96. penUp();
  97. }
  98. }
  99.  
  100. // Draws Inside Lines
  101. for (var q = 0; q < 9; q++) {
  102.  
  103. // Incresing Size
  104. if (q < 6) {
  105. moveTo(185 - q*5,325 + q*10);
  106. penWidth((4 + q)/4);
  107. penDown();
  108. moveForward(15 + q*10);
  109. penUp();
  110. }
  111.  
  112. // Same Size
  113. else {
  114. moveTo(185 - 6*5,325 + q*10);
  115. penWidth(10 / 4);
  116. penDown();
  117. moveForward(15 + 6*10);
  118. penUp();
  119. }
  120. }
  121. }
  122. function moveToOriginalPosition() {
  123. penUp();
  124. moveTo(160,240);
  125. turnTo(0);
  126. }
  127.  
  128. function drawWaterFinal() {
  129. // Draws a Base Layer of Blue
  130. drawWater();
  131.  
  132. // Draws Darker Streaks in Water
  133. drawWaterVariation();
  134.  
  135. // Adds Waves. Wave Size and Thickness are Random
  136. drawWaves(randomNumber(1,10));
  137.  
  138. // Draws Opaque Reflections of the Moon
  139. drawMoonReflections();
  140.  
  141. // Returns to Middle of Screen
  142. moveToOriginalPosition();
  143. }
  144.  
  145. // Color Functions
  146. function darkWaterColor() {
  147. penRGB(0,75,100);
  148. }
  149. function moonReflectionColor() {
  150. penRGB(200,200,200,0.5);
  151. }
  152. function waveColor() {
  153. penRGB(0,150,200,0.75);
  154. }
  155. function darkerWaterColor() {
  156. penRGB(0,25,75);
  157. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement