Joystick in .lua Datei

Eure Foren für alle Diskussionen rund ums Thema Modding.
Fares
Posts: 4
Joined: Mon Sep 11, 2023 10:26 am

Joystick in .lua Datei

Post by Fares »

Hallo zusammen,
ich habe ein dron.lua datei von einem Drohne (DJI_MAVIC2) mod in FS22. das unverarbeiteten Mod fliegt mit dem Linken maustaste Aufwärts und mit dem Rechten maustaste abwärts. Ich könnte es auf dem keybord umstellen und jetzt kann ich mit dem o-Taste nach oben und u-taste nach unten fliegen. ich will es aber mit dem Joystick machen und da ich ein anfänger und kein skripter bin, könnte ich es nicht schaffen. also gibt es sowas wie "joystickEvent"? ich wäre dankbar wenn jemand mir zeigt wie das geht. ich hab den Codeabschnitt unten eingefügt, der für das Fliegen zuständig ist. Die Drohne ist auch in ModHub zu finden.

Code: Select all

 Drone = {};
Drone._NAME			= "Drone"

function Drone.prerequisitesPresent(specializations)
	return true;
	end;

function Drone.registerFunctions(vehicleType)
    SpecializationUtil.registerFunction(vehicleType, "mouseEvent", Drone.mouseEvent)
    SpecializationUtil.registerFunction(vehicleType, "activateFlightMode", Drone.activateFlightMode)
    SpecializationUtil.registerFunction(vehicleType, "deactivateFlightMode", Drone.deactivateFlightMode)
    SpecializationUtil.registerFunction(vehicleType, "getMorldDirectionDegree", Drone.getMorldDirectionDegree)
    SpecializationUtil.registerFunction(vehicleType, "getMorldDirectionDegree2", Drone.getMorldDirectionDegree2)
    SpecializationUtil.registerFunction(vehicleType, "getMorldDirectionDegree3", Drone.getMorldDirectionDegree3)
    SpecializationUtil.registerFunction(vehicleType, "getAltitude", Drone.getAltitude)
    SpecializationUtil.registerFunction(vehicleType, "getTailForce", Drone.getTailForce)
    SpecializationUtil.registerFunction(vehicleType, "updateMovement", Drone.updateMovement)
    SpecializationUtil.registerFunction(vehicleType, "keyEvent", Drone.mouseEvent)
end;

function Drone:mouseEvent(posX, posY, isDown, isUp, button)
end;
function Drone:keyEvent(unicode, sym, modifier, isDown)
end;

--Aufsteigen und Absinken mit Mause: 
 if Input.isMouseButtonPressed(Input.MOUSE_BUTTON_LEFT) or Input.isMouseButtonPressed(Input.MOUSE_BUTTON_RIGHT)then
             if Input.isMouseButtonPressed(Input.MOUSE_BUTTON_LEFT)then
                 self.Drone.pitch = math.min(self.Drone.pitch + 3, 15);
             end;
             if Input.isMouseButtonPressed(Input.MOUSE_BUTTON_RIGHT)then
                 self.Drone.pitch = math.max(self.Drone.pitch - 3, -20); 
             end;
			
--Aufsteigen und Absinken mit Keybord (o:aufsteigen, u:absinken):
if Input.isKeyPressed(Input.KEY_o) or Input.isKeyPressed(Input.KEY_u)then
            if Input.isKeyPressed(Input.KEY_o)then
                self.Drone.pitch = math.min(self.Drone.pitch + 3, 15);
            end;
            if Input.isKeyPressed(Input.KEY_u)then
                self.Drone.pitch = math.max(self.Drone.pitch - 3, -20); 
            end;
Edit don_apple: Thema von "Technische Fragen und Probleme" nach "Modding" verschoben, da es hier um die Veränderung eines Mods geht.