mgdmgd Posted March 21, 2017 Share Posted March 21, 2017 Hey. I was wondering if it's possible to give a spefic name for a police car, like a tag Adam-3 showing on the back of the car as a text? An identify for the car for roleplay servers. Thanks. Link to comment
_DrXenon Posted March 21, 2017 Share Posted March 21, 2017 If the question is only about possibility, then the answer is yes It is possible Link to comment
mgdmgd Posted March 21, 2017 Author Share Posted March 21, 2017 2 minutes ago, SuperCroz said: If the question is only about possibility, then the answer is yes It is possible Well can you help with the script? I need a script for it Link to comment
_DrXenon Posted March 21, 2017 Share Posted March 21, 2017 Well sure, You will need the functions; dxCreateRenderTarget, dxDrawRext, dxSetRenderTarget, dxDrawImage3D. It won't be that hard if you can script. You simply need to create a render target then create a text inside that render target using dxDrawText and dxSetRenderTarget and then you can draw the texture of this render target as a 3D image on the car. I can give a short example if you are not familiar with those functions. 1 Link to comment
mgdmgd Posted March 21, 2017 Author Share Posted March 21, 2017 Actually i am not familiar with scripting that well, if you could help me with a PM having some tips and the script if you can <3 It would be great help buddy. and i want the tag to be saved to the car even if the car respawns if it's possible buddy! Link to comment
_DrXenon Posted March 21, 2017 Share Posted March 21, 2017 Well, if you were familiar with those functions then a small example could help you, but since you are not then this is going to take some time and I actually don't have free time now to write a whole script but I'll make sure to help you tomorrow on my free time. So keep me updated about this issue. Link to comment
Moderators Citizen Posted March 22, 2017 Moderators Share Posted March 22, 2017 What about setVehiclePlateText ?? (limited to 8 characters max) Link to comment
mgdmgd Posted March 22, 2017 Author Share Posted March 22, 2017 1 hour ago, Citizen said: What about setVehiclePlateText ?? (limited to 8 characters max) No because it's roleplay server, i want a text to show on the car above it or anywhere on it that others can see like an identify for the radio, call-sign. Anybody can do this for me? Link to comment
NeXuS™ Posted March 22, 2017 Share Posted March 22, 2017 Is it a modded car, or just the default police car? Link to comment
mgdmgd Posted March 22, 2017 Author Share Posted March 22, 2017 I don't want a texture item @NeXuS™ I want to like use /addsign <carid> <sign> and it gets assigned to it and will be shown like a tag for everyone. Link to comment
NeXuS™ Posted March 22, 2017 Share Posted March 22, 2017 And it can be done with textures on it, lol. Link to comment
mgdmgd Posted March 22, 2017 Author Share Posted March 22, 2017 1 minute ago, NeXuS™ said: And it can be done with textures on it, lol. Well then it's going to be long script and stuff, i only want the command if you can help me Link to comment
NeXuS™ Posted March 22, 2017 Share Posted March 22, 2017 Working on it right now, gimme a minute. 1 Link to comment
mgdmgd Posted March 22, 2017 Author Share Posted March 22, 2017 Just now, NeXuS™ said: Working on it right now, gimme a minute. Alright thank you a lot bro <3! add me on skype if you can live:mgdazam7_1 Link to comment
Daniels69 Posted March 22, 2017 Share Posted March 22, 2017 local modelNames = { [402] = "Nissan 240SX", [529] = "529", [420] = "420", [550] = "550", [546] = "546", [540] = "540", [580] = "580", [527] = "Honda Civic Si", [587] = "Nissan Silvia S14", [436] = "Nissan Silvia S15", [426] = "BMW E39", --[526] = "BMW E34", [401] = "Nissan Skyline R34", [559] = "Toyota Supra", [562] = "BMW E36 M3", [477] = "Mazda RX7", [480] = "Porsche 911", [533] = "Honda S2000", [517] = "Toyota Celica", [405] = "Toyota Chaser Tourer V", [560] = "Subaru Impreza", [526] = "Audi S1 Quattro", [600] = "Audi S4" } function getVehicleNameFromModel(model) if not model then return false end if not modelNames[model] then return "Nav zināms:" .. model end return modelNames[model] end function getAllVehiclesModels() local models = {} for k,_ in pairs(modelNames) do table.insert(models, tonumber(k)) end return models end this one is for the names and this one is for drawing: addEventHandler("onClientRender", root, function() if not drawingName then return end offsetY = offsetY + (offsetTargetY - offsetY) * 0.15 local y = screenHeight - height + offsetY local h = screenHeight + offsetY local vehicle = getPedOccupiedVehicle ( localPlayer ) local vehids = getElementData(getPedOccupiedVehicle ( localPlayer ),"handlingType") dxDrawText(""..drawingName, 3, y + 3, screenWidth + 3, h + 3, tocolor(0, 0, 0, 170), 3, "default-bold", "center", "center",false,false,false,true) dxDrawText(""..drawingName, 0, y, screenWidth, h, tocolor(255, 255, 255), 3, "default-bold", "center", "center",false,false,false,true) if drawingOwner then local ownerOffset = dxGetFontHeight(3, "default-bold") y = y + ownerOffset h = h + ownerOffset dxDrawText(drawingOwner, 0, y, screenWidth, h, tocolor(48, 113, 138), 2, "default-bold", "center", "center", false, false, false, true) end end ) local function hide() drawingName = false end local function startHiding() offsetTargetY = height setTimer(hide, 1000, 1) end addEventHandler("onClientVehicleEnter", root, function(player) if player ~= localPlayer then return end drawingName = getVehicleNameFromModel(getElementModel(source)) local ownerName = getElementData(source, "tws-ownerName") if ownerName then drawingOwner = "" .. tostring(drawingName) else drawingOwner = false end offsetY = height offsetTargetY = 0 setTimer(startHiding, 4000, 1) end ) Link to comment
_DrXenon Posted March 23, 2017 Share Posted March 23, 2017 @Daniels69 Well, I'd rather understand what the main issue here before posting some random script. The guy wants to draw a text on the vehicle which exists on the 3D world, not to create custom vehicle names for certain vehicles. 1 Link to comment
mgdmgd Posted March 23, 2017 Author Share Posted March 23, 2017 16 hours ago, SuperCroz said: @Daniels69 Well, I'd rather understand what the main issue here before posting some random script. The guy wants to draw a text on the vehicle which exists on the 3D world, not to create custom vehicle names for certain vehicles. Thats actually what i mean, if somebody can help me and thank you for your time @Daniels69 but it's not what i need Link to comment
NeXuS™ Posted March 23, 2017 Share Posted March 23, 2017 Working on a texture script which would work on every car, that's why it takes a bit of time tho. 1 Link to comment
mgdmgd Posted March 24, 2017 Author Share Posted March 24, 2017 Guys I want to do /maketext and it shows a normal TEXT, normal text like "Hey sup" on the car I want it to be shown on the top of the car or on the back, floating in the air, not a texture or shaders or anything, just a normal TEXT, anybody know how to do it? Link to comment
mgdmgd Posted March 24, 2017 Author Share Posted March 24, 2017 12 minutes ago, FernandoMTA said: This is what he wants Exactly! thank you oh my god lol -,- 1 Link to comment
NeXuS™ Posted March 24, 2017 Share Posted March 24, 2017 Ohh, just in the air? For the server side. Later on, you can use the customNames table to set their custom name back after respawn. customNames = {} addCommandHandler("customname", function(thePlayer, cmdName, customName) local cVeh = getPedOccupiedVehicle(thePlayer) setElementData(cVeh, "customName", customName) customNames[cVeh] = customName end) For the client side. addEventHandler("onClientRender", getRootElement(), function() local pX, pY, pZ = getElementPosition(localPlayer) for i, k in ipairs(getElementsByType("vehicle")) do if getElementData(k, "customName") then local cX, cY, cZ = getElementPosition(k) if getDistanceBetweenPoints3D(cX, cY, cZ, pX, pY, pZ) <= 20 then if isLineOfSightClear(cX, cY, cZ+1, pX, pY, pZ+1) then local cX, cY = getScreenFromWorldPosition(cX, cY, cZ+1) if cX and cY then dxDrawText(getElementData(k, "customName"), cX, cY) end end end end end) This one should work just fine. Not tested tho. Give me a feedback of it. Still working on the texture one. Link to comment
_DrXenon Posted March 24, 2017 Share Posted March 24, 2017 lol. dxDrawTextOnElement function is a useful function on MTA wiki which does this job. 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