auf ragdolls laufen

  • GM 7

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

  • auf ragdolls laufen

    Hallo leute, ich weiß nich genau wie ichs formulieren soll... also:

    ihr kennt doch bestimmt diese ragdoll engine... ich wollte mit dieser engine ein spiel programmieren aber ich bekomms nicht hin dass mein spieler über leichen laufen kann ^^ der käuft immer nur neben denen oder vor denen aber nicht über ihnen (auf ihnen)

    need help..

    danke im vorraus,
    Agent3004
    Alle Rechtschreibfehler sind Copyright (c) by Agent3004.

    Scheisen sollte man mit der maus können!
  • thx, ich teste es mal, über weitere vorschläge würde ich mich trotzdem freuen ^^

    edit: ich weiß nich wie mich das weiterbringt... ^^ ne maske is schwer da sich die teile (kopf, körper, arme, beime,...) ja frei bewegen und auch abgetrennt werden können... - und da diese keine "objekte" sind sondern alle per Script erstellt werden...


    also hier sieht man, die leichen "stapeln" sich schon

    aber wenn ich da draufspring siehts so aus:

    [Zusammengeschoben durch CAS]

    auch hier - push... kann mir keiner helfen oder will mir keiner helfen?


    [Zusammengeschoben durch TrunX]
    nochma push


    dieser code ist für das entstehen der ragdolls zuständig: ragdoll_script

    GML-Quellcode

    1. //Creates a ragdoll at position set in arguments 1 and 2
    2. //
    3. //This is basically a edited version of the script from the GMPhysics example.
    4. //
    5. //
    6. //Creates a ragdoll at position
    7. doll = instance_create(0,0,ragdoll);
    8. with (doll)
    9. {
    10. joint_break=argument5// how hard it is to break the joins of the ragdoll.
    11. tx = argument0;
    12. ty = argument1;
    13. s=argument6
    14. r=argument7
    15. //Head
    16. p1 = instance_create(tx,ty+4*s,part);
    17. p1.sprite_index = head_sprite;
    18. p1.h = create_body(p1.x,p1.y,1,SHAPE_SPHERE,4*s);
    19. p1.head = true;
    20. p1.face=r
    21. //Arm1
    22. p3 = instance_create(tx,ty+16*s-4*s,part);
    23. p3.sprite_index = arm1_sprite;
    24. p3.h = create_body(p3.x,p3.y,1,SHAPE_CAPSULE,2*s,2*s);
    25. set_body_collide(p3.h,p1.h,false);
    26. p3.face=r
    27. //Arm2
    28. p32 = instance_create(tx,ty+16*s+1*s,part);
    29. p32.sprite_index = arm2_sprite;
    30. p32.h = create_body(p32.x,p32.y,1,SHAPE_CAPSULE,2*s,2*s);
    31. p32.face=r
    32. set_body_collide(p32.h,p1.h,false);
    33. set_body_collide(p32.h,p3.h,false);
    34. //Body
    35. p2 = instance_create(tx,ty+16*s,part);
    36. p2.sprite_index = body_sprite;
    37. p2.h = create_body(p2.x,p2.y,1,SHAPE_CAPSULE,8*s,4*s);
    38. p2.face=r
    39. //Arm1a
    40. p3b = instance_create(tx,ty+16*s-2*s,part);
    41. p3b.depth = 1;
    42. p3b.sprite_index = arm1_sprite;
    43. p3b.h = create_body(p3b.x,p3b.y,1,SHAPE_CAPSULE,2*s,2*s);
    44. p3b.face=r
    45. set_body_collide(p3b.h,p3.h,false);
    46. set_body_collide(p3b.h,p32.h,false);
    47. set_body_collide(p3b.h,p1.h,false);
    48. //Arm2b
    49. p32b = instance_create(tx,ty+16*s+1*s,part);
    50. p32b.depth = 1;
    51. p32b.sprite_index = arm2_sprite;
    52. p32b.h = create_body(p32b.x,p32b.y,1,SHAPE_CAPSULE,2*s,2*s);
    53. p32b.face=r
    54. set_body_collide(p32b.h,p1.h,false);
    55. set_body_collide(p32b.h,p3.h,false);
    56. set_body_collide(p32b.h,p32.h,false);
    57. set_body_collide(p32b.h,p3b.h,false);
    58. //Leg1a
    59. p4 = instance_create(tx,ty+27*s,part);
    60. p4.sprite_index = leg_sprite;
    61. p4.h = create_body(p4.x,p4.y,1,SHAPE_CAPSULE,2*s,3*s);
    62. p4.face=r
    63. //Leg2a
    64. p5 = instance_create(tx,ty+32*s,part);
    65. p5.sprite_index = leg_sprite;
    66. p5.h = create_body(p5.x,p5.y,1,SHAPE_CAPSULE,2*s,3*s);
    67. p5.face=r
    68. //Leg1b
    69. p4b = instance_create(tx,ty+27*s,part);
    70. p4b.sprite_index = leg_sprite;
    71. p4b.depth = -1;
    72. p4b.h = create_body(p4b.x,p4b.y,1,SHAPE_CAPSULE,2*s,3*s);
    73. p4b.face=r
    74. set_body_collide(p4b.h,p4.h,false);
    75. set_body_collide(p4b.h,p5.h,false);
    76. //Leg2b
    77. p5b = instance_create(tx,ty+32*s,part);
    78. p5b.sprite_index = leg_sprite;
    79. p5b.depth = -1;
    80. p5b.h = create_body(p5b.x,p5b.y,1,SHAPE_CAPSULE,2*s,3*s);
    81. p5b.face=r
    82. set_body_collide(p5b.h,p4.h,false);
    83. set_body_collide(p5b.h,p5.h,false);
    84. if r=1// if you face right....
    85. {
    86. joints_scr(argument0,argument1,argument2,argument3,argument4,argument5)//create the joints acordingly
    87. }
    88. else
    89. {
    90. joints2_scr(argument0,argument1,argument2,argument3,argument4,argument5)// same with facing left.....
    91. }
    92. force_scr()// here is where is all happens... check this script out..
    93. }
    Alles anzeigen


    in dem force_scr steht:


    GML-Quellcode

    1. add_force_direction(p1.h,global.sped,global.dir,FORCE)
    2. add_force_direction(p2.h,global.sped,global.dir,FORCE)
    3. add_force_direction(p3.h,global.sped,global.dir,FORCE)
    4. add_force_direction(p4.h,global.sped,global.dir,FORCE)
    5. add_force_direction(p5.h,global.sped,global.dir,FORCE)
    6. /*
    7. basicaly we yank the parts of the doll in directions set by
    8. global.dir and global.sped. this makes the doll look like it was hit by
    9. the bullet.
    Alles anzeigen


    bitte schnellstens um hilfe... plz...


    edit: mods bitte zusammenschreiben (diesen post und den post davor) - habs nur so gemacht damit der wieder oben is und ma wieder einer draufklickt
    Alle Rechtschreibfehler sind Copyright (c) by Agent3004.

    Scheisen sollte man mit der maus können!

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Agent3004 ()

  • das bringt nix - wenn ich das Objekt "ragdolls" auf solid stell passiert nix, wenn ich das objeklt "parts" auf solid stell dann kann ich zwar daruf laufen, aber das teil fällt nimmer um sondern zerschückelts total - weil die teile sich ja gegenseitig gberühren, und auch hintereinander sein müssen ^^
    #
    weiß einer wie ich das sonst amchen kann?

    [Zusammengeschoben von Glowing Orb]
    push - da sonst warsch nie ne lösung gepostet wird... wie man auch hier (per zufall gefunden) sieht - posts 2005, keiner antwortet mehr - und wenn dann zufällig einer antwortet (oder eine pusht wie hier ) dann kommt plötzlich die lösung:

    Positionswechsel ohne Ruckeln
    Alle Rechtschreibfehler sind Copyright (c) by Agent3004.

    Scheisen sollte man mit der maus können!

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