Partikel frage...

  • Partikel frage...

    ich habe diesen code hier;

    GML-Quellcode

    1. {
    2. ti = part_type_create()
    3. part_type_shape(ti,pt_shape_pixel)
    4. c1 = make_color_rgb(255,0,0)
    5. c2 = make_color_rgb(245,118,24)
    6. c3 = make_color_rgb(225,194,70)
    7. part_type_color3(ti,c1,c2,c3)
    8. part_type_life(ti,10,30)
    9. part_type_step(ti,-10,0)
    10. part_type_speed(ti,1,10,2,0)
    11. part_type_direction(ti,60,120,230,0)
    12. IM = part_system_create()
    13. part_system_draw_order(IM,false)
    14. part_system_position(IM,x,y)
    15. part_particles_create(IM,mouse_x,mouse_y,ti,20)
    16. a = current_second mod 4+1
    17. if(a = 5)
    18. part_system_destroy(IM)
    19. part_type_destroy(ti)
    20. }
    Alles anzeigen

    in mein spiel eingefügt und wollte nee flamme machen nurn hab ich das problem das es sich immer nicht zur maus sondern in richtung x+? und y+? bewegt wenn ich zum screen punkt x=0 y=0 gehe kommt sie der/dem Flamme näher das is doch irgentwie komisch O.o
  • Also deine Beschreibung lässt etwas zu wünschen übrig.
    Wenn ich mir den code so ansehe fällt es mir echt schwer da den richtigen sinn zu erkennen.
    Als erstes, wenn du diesen code im step-Event hast ist es unsinnig in jedem step ein neues Partikelsystem und einen neuen Partikeltyp zu erschaffen. Das solltest du ins create event setzen. Nur das erzeugen der Partikel kommt wenn überhaupt ins step-Event. Den letzten Teil des Codes kann ich garnicht nachvollziehen.

    Bitte erklär mal genauer was du willst.
  • die flamme bewegt sich heißt also es muss ins step event und es muss immer neu gemacht werden,das partikel ststem

    das;

    GML-Quellcode

    1. a = current_second mod 4+1
    2. if(a = 5)
    3. part_system_destroy(IM)
    4. part_type_destroy(ti)
    5. }

    ist fortgeschrittener Zähler das alle 5 sec das partikelsystem'löscht'
    (mod= modul resst vom geteilten
    4+1 ist dann die sicherung wenn es 0 ergibt + 1 = 1 und bei 4 ist es 5 da es 60 sekunden sind muss praktisch alle 5 sekunden 'getatscht' werden)
    : /

    PS:
    ich meine wenn die maus im fenster auf den coords 0 steht ist der flammen werfer auch dort
    ist er auf der hälfte des bildschrims so ist esfast einen ganzen bildschrim weit entfernt

    auserdem ist der code total korrekt was willst du da bitte anders machen ??

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

  • Mal abgesehen davon, dass a bei dir niemals 5 sein wird, weil

    GML-Quellcode

    1. current_second mod 4


    die Werte 0 bis 3 wieder gibt und du mit "+1" mx. auf 4 kommst, versteh ich nicht warum du das System und den Typ alle 5 Sekunden zerstören willst. Somal du ja anscheinend in jedem step ein Neues von beiden erstellst. Vielleicht ergibt das irgendeinen Sinn den ich nicht versteht.

    Wenn ich dich richtig verstanden habe, soll an der Mauszeigerposition eine Flamme flackern.

    Event

    GML-Quellcode

    1. ti = part_type_create()
    2. part_type_shape(ti,pt_shape_pixel)
    3. c1 = make_color_rgb(255,0,0)
    4. c2 = make_color_rgb(245,118,24)
    5. c3 = make_color_rgb(225,194,70)
    6. part_type_color3(ti,c1,c2,c3)
    7. part_type_life(ti,10,30)
    8. part_type_step(ti,-10,0)
    9. part_type_speed(ti,1,10,2,0)
    10. part_type_direction(ti,60,120,230,0)
    11. IM = part_system_create()
    12. part_system_draw_order(IM,false)
    Alles anzeigen


    Event

    GML-Quellcode

    1. part_particles_create(IM,mouse_x,mouse_y,ti,20)


    So ist das doch am einfachsten, oder?
  • es bildet aber eine unendliche zahl an systemen deshalb ist das destroy event drin aber trotzdem gelöst halt nurnoch das partikel destroy muss ich machen

    Edit: woha nee ich kriegs net hin das nur 5 partikel systeme auf einma da sein dürfen und das immer nur das letzte gelöscht wird : P

    Edit2:geschafft ;)

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

  • Benutzer online 1

    1 Besucher