depato123 Posted September 20, 2013 Share Posted September 20, 2013 Hola, el problema es este. function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehicle shutted down.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) outputChatBox ("Vehicle started.", source, 255, 0, 0) end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) ¿Como puedo hacer para suplantar lo de la linea 9 por algun tipo de *Usuario ha cerrado el vehiculo ? Link to comment
depato123 Posted September 21, 2013 Author Share Posted September 21, 2013 Explicate. Emmm. ¿vieron el comando /me? lo que yo quiero es que envés de que al apretar el botón diga "Vehicle started." diga "*Nombredelusuario ha encendido el vehículo" Link to comment
Sensacion Posted September 21, 2013 Share Posted September 21, 2013 Usa getPlayerName y le cambias de color. Link to comment
Julian09123 Posted September 21, 2013 Share Posted September 21, 2013 No testeado fijate si te anda asi function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehicle shutted down.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) texto = getPlayerName(player) outputChatBox ("#FE2EF7El Jugador"..texto.."#FE2EF7Ah Cerrado El Vehiculo", source, 255, 0, 0) end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) Link to comment
depato123 Posted September 21, 2013 Author Share Posted September 21, 2013 Intente con esto pero no aparece ningun texto function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehicle shutted down.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) outputChatBox ("*"..getPlayerName(Source).."ha encendido el vehiculo", Source, 255, 0, 0) end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) Link to comment
AlvareZ_ Posted September 21, 2013 Share Posted September 21, 2013 function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehiculo Apagado.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) outputChatBox ("El Jugador ".. getPlayerName(source) .." ah encendido el Vehiculo!.", root, 255, 0, 0) end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) Link to comment
Julian09123 Posted September 21, 2013 Share Posted September 21, 2013 intenta con esto amigo function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehicle shutted down.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) texto = getPlayerName(player) outputChatBox ("#FE2EF7El Jugador"..texto.."#FE2EF7Ah Encendido El Vehiculo", source, 255, 0, 0) end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) Link to comment
depato123 Posted September 21, 2013 Author Share Posted September 21, 2013 intenta con esto amigo ... Gracias, pero no funciono Tambien gracias AlvareZ_ Una pregunta mas function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehiculo Apagado.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", Source, 255, 30, 50) end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) ¿Como puedo hacer para que el mensaje de la linea 9 no se diga en todo el server, sino que se diga en un par de metros? Link to comment
Other Languages Moderators Cuervo_fi Posted September 21, 2013 Other Languages Moderators Share Posted September 21, 2013 Linea 9 outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", Source, 255, 30, 50) cambia el 'Source' por 'source' edit: no ley completo D: Guiate de aqui: https://forum.multitheftauto.com/viewtopic.php?f=91&t=53376&p=518382&hilit=localchat#p518382 Link to comment
depato123 Posted September 21, 2013 Author Share Posted September 21, 2013 Linea 9 outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", Source, 255, 30, 50) cambia el 'Source' por 'source' edit: no ley completo D: Guiate de aqui: https://forum.multitheftauto.com/viewtopic.php?f=91&t=53376&p=518382&hilit=localchat#p518382 No entendí nada de ese topic Link to comment
AlvareZ_ Posted September 21, 2013 Share Posted September 21, 2013 Intenta chat_range = 100 -- Distancia function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehiculo Apagado.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) local px,py,pz = getElementPosition(player) for _,v in ipairs(getElementsByType("player")) do if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", Source, 255, 30, 50) end end end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) function isPlayerInRangeOfPoint(player,x,y,z,range) local px,py,pz=getElementPosition(player) return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5<=range end Link to comment
depato123 Posted September 21, 2013 Author Share Posted September 21, 2013 Intenta... Gracias. Pero no me aparece el texto *Edito Agrego fotos del debug script La linea 62 vendria a ser la linea 27 esto return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5<=range Link to comment
AlvareZ_ Posted September 21, 2013 Share Posted September 21, 2013 chat_range = 100 -- Distancia function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehiculo Apagado.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) local px,py,pz = getElementPosition(player) for _,v in ipairs(getElementsByType("player")) do if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", source, 255, 30, 50) end end end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) function isPlayerInRangeOfPoint(player,x,y,z,range) local px,py,pz=getElementPosition(player) return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5<=range end Link to comment
depato123 Posted September 21, 2013 Author Share Posted September 21, 2013 gracias, pero sigue sin funcionar Link to comment
Alexs Posted September 22, 2013 Share Posted September 22, 2013 Solo corregí ese error, así que revisa bien si funciona correctamente: chat_range = 100 -- Distancia function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehiculo Apagado.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) local px,py,pz = getElementPosition(source) for _,v in ipairs(getElementsByType("player")) do if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", source, 255, 30, 50) end end end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) function isPlayerInRangeOfPoint(player,x,y,z,range) local px,py,pz=getElementPosition(player) return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5 <= range end Link to comment
depato123 Posted September 22, 2013 Author Share Posted September 22, 2013 Solo corregí ese error, así que revisa bien si funciona correctamente: Ahora si un usuario se acerca el mensaje se repite 2 veces Link to comment
depato123 Posted September 22, 2013 Author Share Posted September 22, 2013 Solo corregí ese error, así que revisa bien si funciona correctamente: Ahora si un usuario se acerca el mensaje se repite 2 veces Link to comment
AlvareZ_ Posted September 22, 2013 Share Posted September 22, 2013 chat_range = 100 -- Distancia function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehiculo Apagado.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) local px,py,pz = getElementPosition(source) if isPlayerInRangeOfPoint(source,px,py,pz,chat_range) then outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", source, 255, 30, 50) end end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) function isPlayerInRangeOfPoint(player,x,y,z,range) local px,py,pz=getElementPosition(player) return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5 <= range end Link to comment
Alexs Posted September 22, 2013 Share Posted September 22, 2013 chat_range = 100 -- Distancia function engineSwitch () if (isPedInVehicle (source)) then local veh = getPedOccupiedVehicle (source) if (getVehicleEngineState (veh) == true) then setVehicleEngineState (veh, false) outputChatBox ("Vehiculo Apagado.", source, 255, 0, 0) elseif (getVehicleEngineState (veh) == false) then setVehicleEngineState (veh, true) local px,py,pz = getElementPosition(source) for _,v in ipairs(getElementsByType("player")) do if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then outputChatBox ("*".. getPlayerName(source) .." ah encendido el Vehiculo.", v, 255, 30, 50) end end end else outputChatBox ("You aren't in a vehicle!", source, 255, 0, 0) end end addEvent("engenieSwitch",true) addEventHandler("engenieSwitch",getRootElement(),engineSwitch) function isPlayerInRangeOfPoint(player,x,y,z,range) local px,py,pz=getElementPosition(player) return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5 <= range end No mire mas del código, así que dime si hay algún error. Link to comment
Recommended Posts