Ea7gign Posted January 20, 2018 Share Posted January 20, 2018 Salut, J'ai créer un système ou quand on appui sur "m" une fenêtre Dx s'ouvre avec les infos du véhicule. Le problème est que si j'appui sur "m", même si je suis dans un véhicule sa écris : "Tu doit être dans un véhicule". Voici le code : https://pastebin.com/CL2hRy0t Link to comment
Moderators Citizen Posted January 20, 2018 Moderators Share Posted January 20, 2018 (edited) function show_dx() if(isPedInVehicle(thePlayer)) then local theVehicle = getPedOccupiedVehicle(thePlayer) if(handlerExist) then removeEventHandler("onClientRender", getRootElement(), dxDraw) handlerExist = false else addEventHandler("onClientRender", getRootElement(), dxDraw) handlerExist = true end else outputChatBox("Tu doit être dans un véhicule !", thePlayer) end end bindKey("m", "down", show_dx) Ici la variable thePlayer n'est pas définie ! Donc tu iras toujours dans le else car isPedInVehicle(nil) retournera toujours false. Comme c'est un script client, et qu'un script client s'exécute pour un joueur à la fois (chaque joueur en récupère une copie à la connexion et l'exécutent pour eux-même) il est possible de récupérer directement le joueur actuel via getLocalPlayer() ou le raccourci très pratique: localPlayer. -- Version 1: via getLocalPlayer() function show_dx() local thePlayer = getLocalPlayer() -- on défini thePlayer if(isPedInVehicle(thePlayer)) then local theVehicle = getPedOccupiedVehicle(thePlayer) if(handlerExist) then removeEventHandler("onClientRender", getRootElement(), dxDraw) handlerExist = false else addEventHandler("onClientRender", getRootElement(), dxDraw) handlerExist = true end else outputChatBox("Tu doit être dans un véhicule !", thePlayer) end end bindKey("m", "down", show_dx) -- Version2: directement via localPlayer function show_dx() if(isPedInVehicle(localPlayer)) then local theVehicle = getPedOccupiedVehicle(thePlayer) if(handlerExist) then removeEventHandler("onClientRender", getRootElement(), dxDraw) handlerExist = false else addEventHandler("onClientRender", getRootElement(), dxDraw) handlerExist = true end else outputChatBox("Tu doit être dans un véhicule !", localPlayer) end end bindKey("m", "down", show_dx) Edited January 20, 2018 by Citizen Link to comment
Ea7gign Posted January 20, 2018 Author Share Posted January 20, 2018 Merci pour l'aide, la version 2 est donc la plus simple et la plus rapide. Link to comment
Moderators Citizen Posted January 20, 2018 Moderators Share Posted January 20, 2018 Pour connaître la liste des raccourcis mis à disposition: Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now