Risse in Block verschwinden nicht und werden zum Teil nicht angezeigt...

  • GM 8

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

  • Risse in Block verschwinden nicht und werden zum Teil nicht angezeigt...

    Ich arbeite an meinem Privatprojekt Minewhite (Ein Minecraft 2D Klon). Ich mache grad dass wenn man die Blöcke abbaut die Risse entstehen und erst wenn der Block keine Health mehr hat soll der abgebaut werden. Jedoch gibt es 2 Probleme:

    1. Der erste Riss bleibt die ganze Zeit da.

    2. Die weiteren Risse beim 2, 3 ... Block verschwinden zwar, jedoch wird beim Abbauen nur der vierte (letzte) Sprite angezeigt. Also die ersten Risse wo noch klein sind kommen garnicht.

    Hier der Code von der Erde (einer vo vielen Blöcken...)

    Create Event >

    GML-Quellcode

    1. global.dirth_health = 10


    Step Event >

    GML-Quellcode

    1. [code]global.dirt_health -= 1
    2. if global.dirt_health < 10 and instance_exists(obj_abbau1) = false
    3. {
    4. instance_create(x,y, obj_abbau1)
    5. }
    6. if global.dirt_health < 7.5 and instance_exists(obj_abbau2) = false
    7. {
    8. instance_create(x,y, obj_abbau2)
    9. }
    10. if global.dirt_health < 5 and instance_exists(obj_abbau3) = false
    11. {
    12. instance_create(x,y, obj_abbau3)
    13. }
    14. if global.dirt_health < 2.5 and instance_exists(obj_abbau4) = false
    15. {
    16. instance_create(x,y, obj_abbau4)
    17. }
    18. if instance_exists(obj_dirt_auswahl) = false and instance_exists(obj_grass_auswahl) = false and instance_exists(obj_stone_auswahl) = false and
    19. instance_exists(obj_tree_auswahl) = false and instance_exists(obj_leaves_auswahl) = false and global.dirt_health <= 0
    20. {
    21. instance_create(mouse_x, mouse_y, obj_dirt_auswahl)
    22. instance_destroy()
    23. with(instance_position(x,y,obj_abbau1))instance_destroy()
    24. with(instance_position(x,y,obj_abbau2))instance_destroy()
    25. with(instance_position(x,y,obj_abbau3))instance_destroy()
    26. with(instance_position(x,y,obj_abbau4))instance_destroy()
    27. }[/code]
    Alles anzeigen
  • Also, in Zombatic gibt es ja auch die Möglichkeit Blöcke zu zerstören.
    Dort sind die Risse aber keine Objekte, sondern es werden einfach nur sprites über den Block gezeichnet.

    Hier mein Code
    :event_create:

    GML-Quellcode

    1. leben = 100
    2. anfangsleben = leben


    :event_draw:

    GML-Quellcode

    1. if(leben < anfangsleben*1 && leben > anfangsleben*0.8){draw_sprite(sprite_abbau_stufe1,-1,x,y)}
    2. if(leben <= anfangsleben*0.8 && leben > anfangsleben*0.6){draw_sprite(sprite_abbau_stufe2,-1,x,y)}
    3. if(leben <= anfangsleben*0.6 && leben > anfangsleben*0.4){draw_sprite(sprite_abbau_stufe3,-1,x,y)}
    4. if(leben <= anfangsleben*0.4 && leben > anfangsleben*0.2){draw_sprite(sprite_abbau_stufe4,-1,x,y)}
    5. if(leben <= anfangsleben*0.2 && leben > anfangsleben*0){draw_sprite(sprite_abbau_stufe5,-1,x,y)}


    So kann man sehr bequem und schnell neue Blöcke erstellen und muss lediglich "leben" ändern.

    Keine Ahnung obs dir weiterhilft, aber ich finde meine Methode schon seehr bequem und vorallem simpel aber funktional.
    Sorm ist Schuld

    Edit: Doch ist er