hallo
ich hab ein problem ich hab ein rechteck gedrawt...wie kann ich das jetzt ziehen...also das wenn ich draufklicke und halte es mit der maus mitgeht....??? ich weiß ich muss ne variable für hold machen usw aber ich bekomms nicht hin...was mach ich falsch..
könntet ihr mir erklären wie es nochmal funktioniert
also hier mal ein code:
create event
draw_event
Alles anzeigen
ich hab ein problem ich hab ein rechteck gedrawt...wie kann ich das jetzt ziehen...also das wenn ich draufklicke und halte es mit der maus mitgeht....??? ich weiß ich muss ne variable für hold machen usw aber ich bekomms nicht hin...was mach ich falsch..
könntet ihr mir erklären wie es nochmal funktioniert
also hier mal ein code:
create event
draw_event
GML-Quellcode
- ///Switchrect wird wo anders auf true gesetzt wollte ich aber nicht posten weil das zuviel wäre
- if (switchrect)&& collision_rectangle(xx-200,yy+120,xx2+200,yy2-60,obj_mouse,false,false)&&mouse_check_button(mb_left) // wenn das rechteck gezeichnet ist und ich draufklicke wird es selektiert
- {
- selected = true;
- }
- if (switchrect)&& mouse_check_button(mb_right) // hier zum abbrechen wenn man doch nicht will
- {
- switchrect = false;;
- selected = false;
- hold = false;
- }
- if (selected) // wenn selektiert dann zeichne einen grünen hintergrund um das rechteck
- {
- draw_set_color(c_green);
- draw_set_alpha(0.6);
- draw_rectangle(xx-205,yy+125,xx2+205,yy2-65,false);
- draw_set_alpha(1);
- draw_rectangle(xx-205,yy+125,xx2+205,yy2-65,true);
- }
- if (switchrect) // zeichnet das rechteck das ich in der variable box1 speichere
- {
- xx = klick_x; // ist mouse_x und y
- yy = klick_y;
- padding = 8;
- popup = false;
- draw_set_color(merge_colour(c_lime,c_white,0.5));
- draw_set_alpha(0.7);
- box1 =draw_rectangle(xx-200,yy+120,xx+200,yy-60,false);
- draw_set_alpha(1);
- draw_set_color(c_black);
- box1 =draw_rectangle(xx-200,yy+120,xx+200,yy-60,true);
- if (selected)&& (switchrect)&& mouse_check_button(mb_left) // wenn selektiert und rechteck existiert und linke maustaste gedrückt wird hold auf true gesetzt
- {
- hold = true;
- }
- if (hold) // wenn hold true dann ist x mouse_x..... aber es geht nicht
- {
- with (box1)
- {
- box1.x = mouse_x;
- box1.y = mouse_y;
- }
- }
- if (hold)&& mouse_check_button_released(mb_left) // wenn wir auslassen wird hold false und speichert die koordinaten
- {
- rkey_x = mouse_x;
- rkey_y = mouse_y;
- hold = false;
- }
- if (hold == false) // wenn hold false setze das rechteck zu letzer mouse_x position aber geht auch nicht
- {
- with (box1)
- {
- box1.x = rkey_x;
- box1.y = rkey_y;
- }
- }
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von acidrain833 ()