Welche abfrage

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Welche abfrage

    Ich habe folgendes Problem: Ich möchte, das wenn ich space und right drücke sich das sprite in run_right ändert. Ich weis das ich da schreiben mus sprite_index=run_right, jedoch wenn ich das oben nach den keyboard check schreibe, kann er sich irgendwie nicht entscheiden was für ein sprite er nehemen soll also mact er ein "mischmatsch" draus. Wie könnte ich da eine geschickte abfrage machen?


    GML-Quellcode

    1. if (keyboard_check(vk_right ))and(keyboard_check(vk_space)){
    2. if(!place_meeting(x+5,y,stein)){
    3. x+=5;
    4. }
    5. else if(!place_meeting(x+5,y-4,klein)){
    6. x+=5;
    7. y-=2;
    8. }
    9. else if(!place_meeting(x+5,y-6,steil)){
    10. x+=5;
    11. y-=6;
    12. }
    13. }
    14. if (keyboard_check(vk_right)){
    15. sprite_index=go_right;
    16. if(!place_meeting(x+4,y,stein)){
    17. x+=4;
    18. }
    19. else if(!place_meeting(x+4,y-4,klein)){
    20. x+=5;
    21. y-=4;
    22. }
    23. else if(!place_meeting(x+4,y-6,steil)){
    24. x+=4
    25. y-=6
    26. }
    27. }
    28. if(keyboard_check_released(vk_right)){
    29. sprite_index=stay_right;
    30. }
    Alles anzeigen


    danke für eure hilfe :)

    EDIT by WIN: bitte für GML-code die entsprechenden bb-tags nutzen, danke :D
  • Ein else vor der Abfrage von nur-rechts dürfte helfen.

    GML-Quellcode

    1. if (keyboard_check(vk_right ))and(keyboard_check(vk_space)){
    2. sprite_index=run_right;
    3. if(!place_meeting(x+5,y,stein)){
    4. x+=5;
    5. }
    6. else if(!place_meeting(x+5,y-4,klein)){
    7. x+=5;
    8. y-=2;
    9. }
    10. else if(!place_meeting(x+5,y-6,steil)){
    11. x+=5;
    12. y-=6;
    13. }
    14. }
    15. else if (keyboard_check(vk_right)){
    16. sprite_index=go_right;
    17. if(!place_meeting(x+4,y,stein)){
    18. x+=4;
    19. }
    20. else if(!place_meeting(x+4,y-4,klein)){
    21. x+=5;
    22. y-=4;
    23. }
    24. else if(!place_meeting(x+4,y-6,steil)){
    25. x+=4
    26. y-=6
    27. }
    28. }
    29. if(keyboard_check_released(vk_right)){
    30. sprite_index=stay_right;
    31. }
    Alles anzeigen
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum
  • sorry funtioniert aber nich ich hae es noch mal erneut probiert. will aber nicht funktionieren.

    hier der ganze code://Rechte Taste


    GML-Quellcode

    1. if (keyboard_check(vk_right ))and(keyboard_check(vk_space)){
    2. sprite_index=run_right
    3. if(!place_meeting(x+5,y,stein)){
    4. x+=5;
    5. }
    6. else if(!place_meeting(x+5,y-4,klein)){
    7. x+=5;
    8. y-=2;
    9. }
    10. else if(!place_meeting(x+5,y-6,steil)){
    11. x+=5;
    12. y-=6;
    13. }
    14. }
    15. if (keyboard_check(vk_right)){
    16. sprite_index=go_right;
    17. if(!place_meeting(x+4,y,stein)){
    18. x+=4;
    19. }
    20. else if(!place_meeting(x+4,y-4,klein)){
    21. x+=5;
    22. y-=4;
    23. }
    24. else if(!place_meeting(x+4,y-6,steil)){
    25. x+=4
    26. y-=6
    27. }
    28. }
    29. if(keyboard_check_released(vk_right)){
    30. sprite_index=stay_right;
    31. }
    32. //Linke Taste
    33. if(keyboard_check(vk_left))and (keyboard_check(vk_space)){
    34. sprite_index=run_left
    35. if(!place_meeting(x-5,y,stein)){
    36. x-=5;
    37. }
    38. else if(!place_meeting(x-5,y-2,klein_l)){
    39. x-=5;
    40. y-=2;
    41. }
    42. else if(!place_meeting(x-5,y-6,steil_l)){
    43. x-=5;
    44. y-=6;
    45. }
    46. }
    47. if(keyboard_check(vk_left)){
    48. sprite_index=go_left
    49. if(!place_meeting(x-4,y,stein)){
    50. x-=4
    51. }
    52. else if(!place_meeting(x-4,y-2,klein_l)){
    53. x-=4;
    54. y-=2;
    55. }
    56. else if(!place_meeting(x-4,y-10,steil_l)){
    57. x-=4;
    58. y-=10;
    59. }
    60. }
    61. if(keyboard_check_released(vk_left)){
    62. sprite_index=stay_left;
    63. }
    64. //Jump Taste
    65. if((keyboard_check(vk_up)and(place_meeting(x,y+1,stein)))){
    66. vspeed=-10;
    67. if(sprite_index==stay_left){
    68. sprite_index=jump_left;
    69. image_speed=0.5;
    70. }
    71. else {
    72. sprite_index=jump_right;
    73. image_speed=0.5;
    74. }
    75. }
    76. if ((keyboard_check(vk_up))and(keyboard_check(vk_right))){
    77. sprite_index=jump_right;
    78. image_speed=0.5;
    79. }
    80. if ((keyboard_check(vk_up))and(keyboard_check(vk_left))){
    81. sprite_index=jump_left;
    82. image_speed=0.5;
    83. }
    84. // Keine Taste
    85. if(keyboard_check(vk_nokey)){
    86. image_speed=0.2;
    87. }
    88. //Backgroundscrollen
    89. background_x[0]= view_xview/5;
    90. background_x[0]= view_xview/2;
    91. //gravitation
    92. gravity_direction=270;
    93. if(!place_meeting(x,y+vspeed+1,stein)){
    94. gravity=0.5;
    95. }
    96. else
    97. {
    98. gravity=0;
    99. vspeed=0;
    100. move_contact_solid(270,-1)
    101. }
    102. //vspeedlimit
    103. if(vspeed>12){
    104. vspeed=12;
    105. }
    106. //Feuer
    107. if (keyboard_check(vk_alt)){
    108. if(sprite_index==stay_left){
    109. sprite_index=left;
    110. }
    111. else if(sprite_index==go_left){
    112. sprite_index=left;
    113. }
    114. else if (sprite_index==stay_right){
    115. sprite_index=right;
    116. }
    117. else if (sprite_index==go_right){
    118. sprite_index=right;
    119. }
    120. else if (sprite_index==jump_right){
    121. sprite_index=right;
    122. }
    123. }
    124. //====================== Joystick ===================================
    125. if (joystick_exists(1)){
    126. if (joystick_pov(1)==90)and(joystick_check_button(1,1)){
    127. sprite_index=run_right;
    128. if(!place_meeting(x+5,y,stein)){
    129. x+=5;
    130. }
    131. else if(!place_meeting(x+5,y-4,klein)){
    132. x+=5;
    133. y-=2;
    134. }
    135. else if(!place_meeting(x+5,y-6,steil)){
    136. x+=5;
    137. y-=6;
    138. }
    139. }
    140. if (joystick_pov(1)==90){
    141. sprite_index=go_right;
    142. if(!place_meeting(x+4,y,stein)){
    143. x+=4;
    144. }
    145. else if(!place_meeting(x+4,y-4,klein)){
    146. x+=5;
    147. y-=4;
    148. }
    149. else if(!place_meeting(x+4,y-6,steil)){
    150. x+=4
    151. y-=6
    152. }
    153. }
    154. if(joystick_pov(1)==-1){
    155. sprite_index=stay_right;
    156. }
    157. //Linke Taste
    158. if(joystick_pov(1)==270)and (joystick_check_button(1,1)){
    159. sprite_index=run_left;
    160. if(!place_meeting(x-5,y,stein)){
    161. x-=5;
    162. }
    163. else if(!place_meeting(x-5,y-2,klein_l)){
    164. x-=5;
    165. y-=2;
    166. }
    167. else if(!place_meeting(x-5,y-6,steil_l)){
    168. x-=5;
    169. y-=6;
    170. }
    171. }
    172. if(joystick_pov(1)==270){
    173. sprite_index=go_left;
    174. if(!place_meeting(x-4,y,stein)){
    175. x-=4
    176. }
    177. else if(!place_meeting(x-4,y-2,klein_l)){
    178. x-=4;
    179. y-=2;
    180. }
    181. else if(!place_meeting(x-4,y-10,steil_l)){
    182. x-=4;
    183. y-=10;
    184. }
    185. }
    186. if(sprite_index==jump_left&&vspeed==0){
    187. sprite_index=stay_left;
    188. }
    189. //Jump Taste
    190. if((joystick_check_button(1,3)and(place_meeting(x,y+1,stein)))){
    191. vspeed=-10;
    192. if(sprite_index==stay_left){
    193. sprite_index=jump_left;
    194. image_speed=0.5;
    195. }
    196. else {
    197. sprite_index=jump_right;
    198. image_speed=0.5;
    199. }
    200. }
    201. if ((joystick_check_button(1,1))and(joystick_pov(1)==90)){
    202. sprite_index=jump_right;
    203. image_speed=0.5;
    204. }
    205. if ((joystick_check_button(1,1))and(joystick_pov(1)==270)){
    206. sprite_index=jump_left;
    207. image_speed=0.5;
    208. }
    209. // Keine Taste
    210. if(keyboard_check(vk_nokey)){
    211. image_speed=0.2;
    212. }
    213. //Backgroundscrollen
    214. background_x[0]= view_xview/5;
    215. background_x[0]= view_xview/2;
    216. //gravitation
    217. gravity_direction=270;
    218. if(!place_meeting(x,y+vspeed+1,stein)){
    219. gravity=0.5;
    220. }
    221. else
    222. {
    223. gravity=0;
    224. vspeed=0;
    225. move_contact_solid(270,-1)
    226. }
    227. //vspeedlimit
    228. if(vspeed>12){
    229. vspeed=12;
    230. }
    231. //Feuer
    232. if (keyboard_check(vk_alt)){
    233. if(sprite_index==stay_left){
    234. sprite_index=left;
    235. }
    236. else if(sprite_index==go_left){
    237. sprite_index=left;
    238. }
    239. else if (sprite_index==stay_right){
    240. sprite_index=right;
    241. }
    242. else if (sprite_index==go_right){
    243. sprite_index=right;
    244. }
    245. else if (sprite_index==jump_right){
    246. sprite_index=right;
    247. }
    248. }
    249. }
    Alles anzeigen


    EDIT by WIN: schau mal wie übersichtlich das plötzlich ist ;)

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von trgirl ()

  • doppel (bzw. trippelposts) sind hier nicht erlaubt!
    Battle Command - WeltraumEchtzeitStrategie | Meine GM Spiele auf Box.net
    GCM/FA/O d-(--)@>---xpu s-:- !a C++$@ U- P L+ E W++ N o K-- w++ O? M V PS PE-- Y PGP t 5 X R+++ tv+ b DI D G e+ h? r-- x