Charakter Auswahl

  • Mach eine globale Variable:

    Zum beispiel im Menü:

    2 objekte: ein junge-auswählbild und ein mädchen-auswählbild

    im Mouse-left-pressed:

    GML-Quellcode

    1. global.character="j"


    oder halt auch "m"

    Und dann wenn der Charakter erstellt wird abfragen.

    © 2008 by Teamgrill Productions

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

  • n bisschen genauer würd ich mir das schon wünschen...
    wie willst du es auswählen? tastatur? maus? bild?

    naja, ich mach jetz einfach mal mit maus, da soul raver es schon mit tastatur gemacht hat:

    obj_boy(da, wo du draufklicken musst):
    mouse_pressed event:

    GML-Quellcode

    1. global.genus="m"


    obj_girl
    mouse_pressed event:

    GML-Quellcode

    1. global.genus="f"


    obj_drawer(der, der das bild vom geschlecht zeichnet):
    draw_event:

    GML-Quellcode

    1. if global.genus="m" draw_sprite(room_width/2-sprite_width/2,room_height/2-sprite_height/2,0,spr_boy)
    2. if global.genus="f" draw_sprite(room_width/2-sprite_width/2,room_height/2-sprite_height/2,0,spr_girl)


    sollte eigentlich hinhauen.

    ach ja:
    im obj_player(dein spieler)
    z.b.:
    step:

    GML-Quellcode

    1. if global.genus="f"
    2. {
    3. if sprite_index=spr_boy_go_right spr_girl_go_right
    4. .
    5. .
    6. .
    7. }

    oder du machst ne abfrage beim sprite wechseln.

    z.b. keyboard_pressed right
    [GML]
    if global.genus="m" sprite_index=spr_boy_go_right
    if global.genus="f" sprite_index=spr_girl_go_right
    [/GML}
    .
    .
    .


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

  • lolliger_joj schrieb:

    n bisschen genauer würd ich mir das schon wünschen...
    wie willst du es auswählen? tastatur? maus? bild?

    naja, ich mach jetz einfach mal mit maus, da soul raver es schon mit tastatur gemacht hat:

    obj_boy(da, wo du draufklicken musst):
    mouse_pressed event:

    GML-Quellcode

    1. global.genus="m"


    obj_girl
    mouse_pressed event:

    GML-Quellcode

    1. global.genus="f"


    obj_drawer(der, der das bild vom geschlecht zeichnet):
    draw_event:

    GML-Quellcode

    1. if global.genus="m" draw_sprite(room_width/2-sprite_width/2,room_height/2-sprite_height/2,0,spr_boy)
    2. if global.genus="f" draw_sprite(room_width/2-sprite_width/2,room_height/2-sprite_height/2,0,spr_girl)


    sollte eigentlich hinhauen.
    Ich habs eigentlich auch so gemeint. Ach ja ich heiße Soul Reaver

    © 2008 by Teamgrill Productions
  • Mein charackter auswahl Problem!!!

    Wen es schon so ein Thread gibt dan schreibe ich auch mal gleich mein Problem ... mein Problem ist schon am anfang ich habe alles wie im Internet Tutorial gemacht doch bei mir kommt immer ein fehler bei der Auswahl...! Also ich erklärs auch nochmal genauer ich habe da zwei Buttons ein obj_player1_selsect und obj_player2_select, und die charackter Obj sind obj_player1 und obj_player2schon wen ich das spiel starte sagt der maker mir ich hätte einen Fehler gemacht und zwar schon im Create Event vom obj_player1_selsect dabei habe ich es wie im Tutorial einfach so gemacht

    GML-Quellcode

    1. global.player1 =0
    ich gebe euch mal die Gamemaker Datei vll. findet ihr ja den Fehler uploaded.to/?id=bz846w
    Wir stehen zusammen und wir fallen zusammen
  • Der Fehler kommt dadurch zustande, dass du ein Sprite player2 nennst und gleichzeitig ne Variable namens global.player2 hast.
    Das verträgt sich nicht, da der GM player2 als Sprite benutzt und deshalb nicht versteht, warum jetzt ein Sprite auf 0 gesetzt wird.
  • Danke Marv1 jetzt geht alles. Aber eine Frage habe ich noch und zwar mein Code für 2 Player ist

    GML-Quellcode

    1. if global.player1 =1 and global.player2 =0 {instance_change(schwarz1,true)}
    2. else global.player2 =1 and global.player1 =0 {instance_change(grau2,true)}
    und jetzt meine Frage wie müsste der Code aussehen um 3 bzw. mehrere Player auswählen zu können ?
    Wir stehen zusammen und wir fallen zusammen

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

  • Du machst es sowieso ein wenig umständlich!
    Aber egal:

    GML-Quellcode

    1. //Für 3 oder mehr Spieler\\
    2. if global.player1=1 and global.player2=0 and global.player3=0 {instance_change(schwarz1,1))}
    3. if global.player2=1 and global.player1=0 and global.player3=0 {instance_change(grau2,1))}
    4. if global.player3=1 and global.player2=0 and global.player1=0 {instance_change(gruen3,1))}

    :)

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

  • fabse64 schrieb:

    Aber egal:

    GML-Quellcode

    1. //Für 3 oder mehr Spieler\\
    2. if global.player1=1 and global.player2=0 and global.player3=0 {instance_change(schwarz1,1))
    3. if global.player2=1 and global.player1=0 and global.player3=0 {instance_change(grau2,1))
    4. if global.player3=1 and global.player2=0 and global.player1=0 {instance_change(gruen3,1))


    Wenn man die Klammern so falsch setzt sind Missgeschicke ja praktisch vorprogrammiert :D

    Auch finde ich die Verwendung von gleich drei Variablen etwas überflüssig - wo eine doch auch reicht

    Das geht dann etwa so:

    GML-Quellcode

    1. if global.player=1{
    2. instance_change(schwarz1,1)
    3. }
    4. if global.player=2{
    5. instance_change(grau2,1)
    6. }
    7. if global.player=3{
    8. instance_change(gruen3,1)
    9. }
    Alles anzeigen


    Also nur eine Variable "global.player" verwenden und die dann auf bestimmte Werte setzen.
    Ich hoffe, ich konnte dir helfen ;)