class_name PointerEvent extends RefCounted ## Eine Zeige-Eingabe für die Karten-Werkzeuge, egal woher sie kommt: Maus am ## PC, Controller-Strahl in VR. position ist immer in Bildpunkten der Kamera, ## die das Werkzeug kennt. enum Kind { MOVE, PRESS, RELEASE, SCROLL, CANCEL } var kind: Kind = Kind.MOVE var position := Vector2.ZERO var shift := false # Mehrfachauswahl, Serienmodus var ctrl := false # Pinsel umkehren, Raster-Zwang var command := false # Strg (Mac: Cmd): Auswahl umschalten var pressure := 1.0 # Pinselstärke 0..1 var scroll := 0 # +1 = hoch, -1 = runter static func make(p_kind: Kind, p_position: Vector2 = Vector2.ZERO) -> PointerEvent: var p := PointerEvent.new() p.kind = p_kind p.position = p_position return p