Advertisement
Guest User

Untitled

a guest
Mar 10th, 2017
395
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Information about object: objStage4Blocks
  2. Sprite: sprWoodBlocks
  3. Solid: false
  4. Visible: true
  5. Depth: 0
  6. Persistent: false
  7. Parent:
  8. Children:
  9. Mask:
  10.  
  11. No Physics Object
  12. Create Event:
  13.  
  14. execute code:
  15.  
  16. x = 0;
  17. y = 0
  18. surf = noone; //surface_create(room_width,room_height);
  19. image_xscale = room_width / sprite_get_width(sprite_index);
  20. image_yscale = room_height / sprite_get_height(sprite_index);
  21.  
  22. SpikeImg = sprWoodSpike;
  23.  
  24. with objSpikeUp
  25. {
  26. if sprite_index = sprSpikeUp
  27. {
  28.  
  29. var OrigX = sprite_get_width(sprite_index);
  30. var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
  31. var OrigY = sprite_get_height(sprite_index);
  32. var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
  33.  
  34. sprite_index = other.SpikeImg;
  35.  
  36. image_index = 0;
  37. image_speed = 0;
  38. image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
  39. image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
  40. }
  41. }
  42. with objSpikeRight
  43. {
  44. if sprite_index = sprSpikeRight
  45. {
  46.  
  47. var OrigX = sprite_get_width(sprite_index);
  48. var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
  49. var OrigY = sprite_get_height(sprite_index);
  50. var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
  51. sprite_index = other.SpikeImg;
  52. image_index = 1;
  53. image_speed = 0;
  54. image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
  55. image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
  56. }
  57. }
  58. with objSpikeDown
  59. {
  60. if sprite_index = sprSpikeDown
  61. {
  62. var OrigX = sprite_get_width(sprite_index);
  63. var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
  64. var OrigY = sprite_get_height(sprite_index);
  65. var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
  66. sprite_index = other.SpikeImg;
  67. image_index = 2;
  68. image_speed = 0;
  69. image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
  70. image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
  71. }
  72. }
  73. with objSpikeLeft
  74. {
  75. if sprite_index = sprSpikeLeft
  76. {
  77. var OrigX = sprite_get_width(sprite_index);
  78. var XScale = round((OrigX * (round(image_xscale * 10) / 10)) / 16);
  79. var OrigY = sprite_get_height(sprite_index);
  80. var YScale = round((OrigY * (round(image_yscale * 10) / 10)) / 16);
  81. sprite_index = other.SpikeImg;
  82. image_index = 3;
  83. image_speed = 0;
  84. image_xscale = XScale / round(sprite_get_width(sprite_index) / 16);
  85. image_yscale = YScale / round(sprite_get_height(sprite_index) / 16);
  86.  
  87. }
  88. }
  89.  
  90. Other Event: Room End:
  91.  
  92. execute code:
  93.  
  94. if surface_exists(surf){
  95. surface_free(surf);
  96. }
  97.  
  98. Draw Event:
  99.  
  100. execute code:
  101.  
  102. if !surface_exists(surf){
  103. surf=surface_create(room_width,room_height);
  104.  
  105.  
  106. surface_set_target(surf);
  107. draw_clear_alpha(c_black,0);
  108.  
  109.  
  110. with objBlock
  111. {
  112. draw_rectangle_color(x,y,x+ 32 * image_xscale - 1,y+ 32 * image_yscale - 1,c_black,c_black,c_black,c_black,false);
  113.  
  114. var a;
  115. for (a = 0; a < image_xscale; a += 0.5)
  116. {
  117. if not (position_meeting(x + a * 32, y - 1, objBlock) or position_meeting(x + (a + 0.5) * 32 - 1, y - 1, objBlock)) // above
  118. {
  119. draw_rectangle_color(x + a * 32,y,x+(a + 0.5) * 32 - 1,y+1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
  120. }
  121. if not (position_meeting(x + a * 32, y +32 * image_yscale, objBlock) or position_meeting(x + (a + 0.5) * 32 - 1, y + 32 * image_yscale, objBlock)) // below
  122. {
  123. draw_rectangle_color(x + a * 32,y + 32 * image_yscale - 2,x+(a + 0.5) * 32 - 1,y+32 * image_yscale - 1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
  124. }
  125. }
  126. for (a = 0; a < image_yscale; a += 0.5)
  127. {
  128. if not (position_meeting(x -1, y + a * 32, objBlock) or position_meeting(x -1, y + (a + 0.5) * 32 - 1, objBlock)) // left
  129. {
  130. draw_rectangle_color(x ,y + a * 32,x+1,y+(a + 0.5) * 32 - 1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
  131. }
  132. if not (position_meeting(x +32 * image_xscale, y + a * 32, objBlock) or position_meeting(x + 32 * image_xscale, y + (a + 0.5) * 32 - 1, objBlock)) // right
  133. {
  134. draw_rectangle_color(x + 32 * image_xscale - 2,y + a * 32,x+ 32 * image_xscale - 1,y+(a + 0.5) * 32 - 1,c_dkgray,c_dkgray,c_dkgray,c_dkgray,false);
  135. }
  136. }
  137.  
  138.  
  139. }
  140.  
  141.  
  142.  
  143. draw_set_blend_mode_ext(bm_dest_alpha, bm_one);
  144. draw_self();
  145. draw_set_blend_mode( bm_normal );
  146.  
  147. surface_reset_target();
  148. }
  149.  
  150.  
  151. if surface_exists(surf)
  152. {
  153. draw_surface(surf,0,0);
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement