GetVehicleNitroCount: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
(Remove obsolete Requirements section)
 
(One intermediate revision by one other user not shown)
Line 4: Line 4:
This function gets the nitro count of the [[vehicle]].
This function gets the nitro count of the [[vehicle]].
}}
}}
{{Warning|Only works if the vehicle is steamed in}}
{{Warning|Only works if the vehicle is streamed in, use [[isElementStreamedIn]] to check.}}
==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">int getVehicleNitroCount ( vehicle theVehicle )</syntaxhighlight>  
<syntaxhighlight lang="lua">int getVehicleNitroCount ( vehicle theVehicle )</syntaxhighlight>  
Line 45: Line 45:
</syntaxhighlight>
</syntaxhighlight>
</section>
</section>
==Requirements==
{{Requirements|n/a|1.3.1-9.04993|}}


==See Also==
==See Also==
{{Client_vehicle_functions}}
{{Client_vehicle_functions}}

Latest revision as of 17:10, 7 November 2024

This function gets the nitro count of the vehicle.

[[|link=|]] Warning: Only works if the vehicle is streamed in, use isElementStreamedIn to check.

Syntax

int getVehicleNitroCount ( vehicle theVehicle )

Required Arguments

  • theVehicle The vehicle which you want to get a nitro count.

Returns

Returns an integer determining the amount of nitro counts of the vehicle, false if there is no nitro in the vehicle.

Example

Click to collapse [-]
Client

This example draws the nitro count on vehicle on the player's screen.

function drawNitroCounts()
	local fCamX, fCamY, fCamZ = getCameraMatrix()
	for _, v in ipairs(getElementsByType("vehicle")) do
		if getVehicleUpgradeOnSlot(v, 8) then -- Check if the vehicle has nitro installed
			local fX, fY, fZ = getElementPosition(v)
			local fCamX, fCamY, fCamZ = getCameraMatrix()
			local fX2, fY2 = getScreenFromWorldPosition(fX, fY, fZ + 0.85, 0.08)
			if fX2 then
				local fDistance = getDistanceBetweenPoints3D(fX, fY, fZ, fCamX, fCamY, fCamZ)
				if fDistance < 60 then
					if isLineOfSightClear(fCamX, fCamY, fCamZ, fX, fY, fZ, true, false, false, true, false) then
						local pVehicle = getPedOccupiedVehicle(localPlayer)
						if not pVehicle or pVehicle ~= v then
							local fScale = (60 / fDistance) * 0.7
							local iNitroCount = getVehicleNitroCount(v)
							dxDrawText("Nitro count: " .. iNitroCount, fX2 + 1, fY2 + 1, fX2 + 1, fY2 + 1, tocolor(0, 0, 255), fScale, "default", "center", "bottom")
							dxDrawText("Nitro count: " .. iNitroCount, fX2, fY2, fX2, fY2, tocolor(255, 255, 255), fScale, "default", "center", "bottom")
						end
					end
				end
			end
		end
	end
end
addEventHandler("onClientRender", root, drawNitroCounts)

See Also