Problem bei player

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

  • Hat sich erledigt thx für eure tolle hilfe.besonders aku ryou thx



    jetzt hab ich noch ein problem .......das schlagen funktioniert einwandfrei aber ich kann nur schlagen wenn der player steht also wenn er sich nicht bewegt.
    wie kann ich das lösen???
    ich muss dazusagen das ich keine extra sprites für das gleichzeitige rennen und schlagen habe.nur beim springen.
    soll ich einfach bei if keyboard_check(vk_left) das hinzufügen???

    GML-Quellcode

    1. if keyboard_check(vk_left) && keyboard_check(ord("E"))
    2. {
    3. hspeed=-7;
    4. sprite_index=spr_player_attack
    5. image_speed=0.3;
    6. image_index=0;}




    oder sollte ich vom sprite mit der attacke nur den schwerthieb auf ein eigenes sprite machen und dann einfach das rennen sprite kopieren und in eines davon einfügen???hoffe du verstehst mich.

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

  • Also ich mach bei soetwas gerne ein body und ein Arm sprite getrennt aber du kannst auch eine rennen+schlagen version zeichnen und die dann benutzen so wie du es oben geschrieben hast.

    Ich mache es bei ähnlichen Projekten immer so:

    GML-Quellcode

    1. if attack == 0 && jump == 0
    2. {
    3. keyboard_check(arrowkeys) --> rennen
    4. keyboard_check(spacebar)
    5. {
    6. jump = 1
    7. vspeed = xy;
    8. }
    9. keyboard_check(e)
    10. {
    11. attack = 1;
    12. }
    13. }
    14. if attack == 1
    15. {
    16. if jump == 0
    17. {
    18. if keyboard_check(left)
    19. {
    20. image_xscale = -1;
    21. sprite_index = spr_runnning_attack
    22. alarm[0] = 8;
    23. attack = 2;
    24. }
    25. else if keyboard_check(right)
    26. {
    27. image_xscale = 1;
    28. sprite_index = spr_runnning_attack
    29. alarm[0] = 8;
    30. attack = 2;
    31. }
    32. else
    33. {
    34. sprite_index = spr_attack
    35. alarm[0] = 16;
    36. attack = 2;
    37. }
    38. if jump == 1
    39. {
    40. //jump attack oder weitere manöver
    41. //etc etc
    42. }
    43. }
    Alles anzeigen

    ancient-pixel.com
    youtube.com/user/SebastianMerkl <<< ich freu mich über einen Besuch ;)
  • ich versteh das nicht ganz was du damit meinst???

    mit diesem hier:

    GML-Quellcode

    1. keyboard_check(arrowkeys) --> rennen
    2. keyboard_check(spacebar)



    meinst du ich soll dort

    GML-Quellcode

    1. keyboard_check(vk_left)
    2. keyboard_check(vk_right)
    3. keyboard_check(vk_space)





    meinst du es so???

    nein gell

    GML-Quellcode

    1. if (attack==0) && (jump==0)
    2. {
    3. keyboard_check(global.key_right)
    4. keyboard_check(global.key_left)
    5. keyboard_check(global.key_up)
    6. {
    7. jump=1;
    8. vspeed=-15;
    9. }
    10. keyboard_check(global.key_interact)
    11. {
    12. attack=1;
    13. }
    14. }
    15. if (attack==1)
    16. {
    17. if jump == 0
    18. {
    19. if keyboard_check(global.key_left)
    20. {
    21. image_index=0;
    22. sprite_index = spr_player_run_attack_left;
    23. alarm[0] = 8;
    24. attack = 2;
    25. }
    26. else if keyboard_check(global.key_right)
    27. {
    28. image_index=0;
    29. sprite_index = spr_player_run_attack_right;
    30. alarm[0] = 8;
    31. attack = 2;
    32. }
    33. else
    34. {
    35. if (global.lastpressed=="right")
    36. sprite_index = spr_player_attack_right
    37. alarm[0] = 16;
    38. attack = 2;
    39. if (global.lastpressed=="left")
    40. {
    41. sprite_index = spr_player_attack_left
    42. alarm[0] = 16;
    43. attack = 2;
    44. }
    45. }
    46. }
    47. }
    Alles anzeigen


    ich hab das am ende weggelassen für jump1 also für die jumpattack

    ich verstehs nicht ganz zb wegen dem attack=1 das hab ich ja schon in einem anderen code definiert für die normale attacke wenn man steht ..


    tut mir leid du denkst dir sicher das ich mich dumm stelle aber ich gebe mein bestes zb bei diesem code stück:

    GML-Quellcode

    1. if keyboard_check(left)
    2. {
    3. image_xscale = -1;
    4. sprite_index = spr_runnning_attack
    5. alarm[0] = 8;
    6. attack = 2;
    7. }
    8. else if keyboard_check(right)
    9. {
    10. image_xscale = 1;
    11. sprite_index = spr_runnning_attack
    12. alarm[0] = 8;
    13. attack = 2;
    14. }
    15. else
    16. {
    17. sprite_index = spr_attack
    18. alarm[0] = 16;
    19. attack = 2;
    20. }
    Alles anzeigen



    warum steht ganz am ende noch ein else??? mit spr_attack??? is mir grad wirklich zu hoch ich depp.


    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von acidrain833 ()

  • Nein ich meinte nur du sollst mal testen die Funktion

    GML-Quellcode

    1. keyboard_check_direct(key);

    an Stelle von

    GML-Quellcode

    1. keyboard_check(key);

    zu verwenden damit du gleichzeitig rennen und angreifen kannst
    132 little bugs in the code. 132 little bugs. Fix a few, set the compiler to stew, 172 little bugs in the code... :vogel: