-
Posts
180 -
Joined
-
Last visited
Everything posted by JuanM27
-
Ah, gracias por ejemplo lo probe y asi anda pero no se sube la barrera, sino que se baja (osea se me mete abajo del suelo) tenia mal esta posicion 11544.5999755859 ? Pd: yo las posiciones las tome del map edit, esta bien que use esas posiciones? saludos y gracias
-
hola que tal, bueno tengo un problema que no puedo resolver ni con los ejemplos de la wiki y no se a quien preguntar mas que en este foro. bueno le comento, estoy queriendo poner la barrera en la entrada del garage de la comisaria de LS, ya tengo el id del objecto las posiciones y rotaciones. pero cuando hago el codigo para que se mueva si un player tiene un skin se levante o se baje la barrera. dejo el codigo que tengo en mi script, para que vean y me puedan dicir que es lo que tengo mal PoliBarraObj1 = createObject ( 968, 1544.5999755859, -1630.8000488281, 13.300000190735, 0, 90, 89) PoliBarra1 = createColTube ( 1541, -1630, 12.5, 25, 10) function BARRA1 ( player ) if ( getElementType ( player ) == "player" ) then local skin = getElementModel ( player ) if skin == 280 or skin == 281 or skin == 282 or skin == 283 or skin == 284 or skin == 285 or skin == 286 or skin == 287 or skin == 288 or skin == 265 or skin == 266 or skin == 267 then setTimer ( function () moveObject ( PoliBarraObj1, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 0, 89) end, 500, 1 ) else setTimer ( function () -- outputChatBox ( "Usted no es Policia!!, alejese YA!", player, 0,0,200 ) end, 100, 1 ) end local seat = getPedOccupiedVehicleSeat(player) if seat == 0 then local car = getPedOccupiedVehicle(player) local skin = getElementModel ( player ) if skin == 280 or skin == 281 or skin == 282 or skin == 283 or skin == 284 or skin == 285 or skin == 286 or skin == 287 or skin == 288 or skin == 265 or skin == 266 or skin == 267 then setTimer ( function () moveObject ( PoliBarraObj1, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) end, 500, 1 ) end end end end addEventHandler( "onColShapeHit", PoliBarra1, BARRA1 ) function Barra1Close () setTimer ( function () moveObject ( PoliBarraObj1, 1544.5999755859,-1630.8000488281, 13.300000190735, 0, 90, 89) end, 500, 1 ) end addEventHandler( "onColShapeLeave", PoliBarra1, Barra1Close ) esto lo tengo del lado server muchas gracias
-
bueno ya lo solucione, dejo como lo solucione por si a alguien le sirba la solucion fue crear una tabla con los id de los skin no permitidos function doneButton(thePlayer) local Noskin = { [217] = true,[16] = true,[61] = true,[71]=true,[202] = true,[206] = true,[228] = true,[253] = true,[255] = true,[265] = true,[266] = true,[267] = true,[268] = true,[291] = true,[274] = true,[275] = true,[276] = true,[277] = true,[278] = true,[279] = true,[280] = true,[281] = true,[282] = true,[283] = true,[284] = true,[285] = true,[286] = true,[287] = true,[288]= true,[211] = true,[305] = true,[309]= true,[50]= true} if (Noskin[getElementModel(localPlayer)]) then --comprobamos que no esten usando algun skin no permitidos como el del admin o los jobs guiSetText(skinLabel,"skin no permitido.") else guiSetVisible(guiSkinShop,false) guiSetVisible(windowLogin, false) showCursor(false) triggerServerEvent("setCameraRegister", localPlayer) end end saludos
-
hola que tal amigos, tengo un problema con un selector de skin bueno yo quiero que por ejemplo el skin ID: 217 (staff) no se pueda elegir, asi como los skin de policas etc me baje un recurso que no recuerdo el nombre, pero es registre+login+selector de skin y tiene esto que es para seleccionar el skin function goRight(player) local newSkin = getElementModel (localPlayer) + 1 while not setElementModel (localPlayer,newSkin) do newSkin = newSkin + 1 end end function goLeft(player) local newSkin = getElementModel (localPlayer) - 1 while not setElementModel (localPlayer,newSkin) do newSkin = newSkin - 1 end end por lo que yo vi, getElementModel (localPlayer) es el id del skin, por ejemplo 117 y + 1 o -1 segun el boton pero que como tengo que hacer para que el skin 217, y los skin que yo uso en mis jobs no lo puedan seleccionar? muchas gracias
-
ok gracias, ya lo pruebo y te digo edito: me andubo perfecto, muchas gracias de verdad
-
hola si pongo ese codigo en el cliente addEventHandler("onClientPlayerDamage", localPlayer, function (attacker, weapon, bodypart, loss) if (attacker and getElementType(attacker) == "player" and weapon == 41) then local team = getPlayerTeam(attacker) if (team and getTeamName(team) == "Medicos") then cancelEvent() end end end) no hace daño, pero no cura. la parte que cura lo tengo en el lado del server que es la siguiente function heal(attacker, attackerweapon, bodypart, loss) theHealth = getElementHealth (source) if (attackerweapon == 41) and (loss > 1) and ( theHealth < 90 ) then -- el real era (if (attackerweapon == 14) and (loss > 1) and ( theHealth < 80 ) then) setElementHealth ( source, 100 ) takePlayerMoney (source, 100) givePlayerMoney (attacker, 100) end end addEventHandler ("onPlayerDamage", getRootElement(), heal ) pero trate de modificarlo, quitando la parte del server y agregando en el cliente esto addEventHandler("onClientPlayerDamage", localPlayer, function (attacker, weapon, bodypart, loss) if (attacker and getElementType(attacker) == "player" and weapon == 41) then local team = getPlayerTeam(attacker) if (team and getTeamName(team) == "Medicos") then setElementHealth ( localPlayer, 100 ) takePlayerMoney (localPlayer, 100) givePlayerMoney (attacker, 100) cancelEvent() end end end) pero tampoco cura, me darias una mano, para hacerlo funcionar? gracias
-
dale muchas gracias, hay me funciono y con la wiki le puse para que tambien no permita el cambio de armas. tengo 1 consulta no saben cual es el id del Spray que usa el medico para currar en varios server? yo probe con el id 41 que es el Spraycan pero ese hace daño al currar al otro player, o como seria para que el Spray no haga daño a los players? saludos y muchas gracias
-
hola, quisiera saber como poder bloquear el uso de armas, y de golpe cuando un player esta en la carcel? busque en la wiki y no encontre nada relacionado. si conocen la pag de la wiki que explique su funcion me lo podrian dar o algun ejemplo si esa informacion no esta en la wiki. saludos y gracias
-
listo muchas gracias solo le cambie el respawnVehicle ( vehicle ) por destroyElement( vehicle ) saludos
-
hola buenas tardes, yo molestando de nuevo jejeje hola tengo esta duda sobre si existe un script ya publicado el script que busco es que cada XX tiempo, borre todos los vehiculos que esten vacios en el server en la wiki encontre esta funcion que es util para guiarme function allvehiclesaredoomed() -- get a table of all the vehicles that exist and loop through it vehicles = getElementsByType("vehicle") for i,v in ipairs(vehicles) do -- destroy every vehicle. destroyElement(v) end end --The command handler below will destroy all vehicles once --you enter /vdoom in the chat box or vdoom in the game console. addCommandHandler("vdoom", allvehiclesaredoomed) --This is very useful if you use the freeroam resource and some --heartless players start spawn spamming. --You can also set it on a timer to have your server clear all --vehicles ever 60 minutes, (1 hour). Timer below: setTimer(allvehiclesaredoomed, 3600000, 0) pero esa funcion elimina todos los vehiculos, pero yo lo que busco es que si hay algun player en un vehiculo, sea o no sea el conductor no se elimine tenia pensado a ese codigo agregarle el if isPedInVehicle(player) then pero no se como hacerlo para que los vehiculos que estan ocupados, no se eliminen alguien me podria explicar o si ya existe el script echo de pasarme el link. yo lo busque en la pagina del mta en recursos pero no lo encontre saludos y muchas gracias
-
hola, amigo mira te comento, estube probando los ejemplo que hay en la wiki sobre getVehicleTowingVehicle y getVehicleTowedByVehicle y en los casos con el camion 515 y el trailer 584 me dio negativo, como si no estaria enganchado al camion. sera por la version del mta? mi version es 1.2 saludos
-
jeje si gracias a los 2 de nuevo
-
lo probe, pero me dice que necesito el trailer
-
si, pero ya lo arregle, hay deje el code por si alguien lo necesita, muchas gracias a 2
-
si lo quite
-
Edito, hay me anda joya, dejo el code por si alguien lo necesita. --Conseguimos las coordenadas de los hospitales, y la rotacion (para evitar que el jugador mire hacia el hospital al spawnear ) local zones = { ["Los Santos"]={1177.5, -1323.2, 14.07}, --Cambia solo "rotacion"! ["San Fierro"]={-2645.3, 635.2, 14.4}, --Cambia las coordenadas y "rotacion"! ["Las Venturas"]={1600.2, 1827.2, 10.8} --Cambia las coordenadas y "rotacion"! } function aparecerJugador(jug,armas,skin,Team,x,y,z) --local city = getElementZoneName ( jug, true ) --En que ciudad esta el jugador? --if city then --Si el jugador esta en una ciudad de las 3, y no en el campo o algo asi spawnPlayer(jug,x,y,z,0,skin) setPlayerTeam(jug,Team) --outputChatBox ("naciste en: " ..x .." " ..y .." " ..z .." ", jug, 255, 0 ,0) for k,v in ipairs(armas) do -- Repetimos codigo por todas las armas que tenia giveWeapon(jug,v[1],v[2]) -- Damos la arma que tenia con su respectiva munición end end --end addEventHandler("onPlayerWasted",root,function() local weaps = {} -- Inicializamos la tabla de armas for i=1,11 do --Repetimos codigo por los 11 slots de armas local weap = getPedWeapon(source,i) -- Obtenemos la arma en un slot if weap>0 then -- Vemos si es que tiene arma en el slot local ammo = getPedTotalAmmo(source,i) -- Obtenemos la munición de la arma if ammo>0 then -- Vemos si hay munición de la arma table.insert(weaps,{weap,ammo}) -- Agregamos la arma en la tabla end end end local city = getElementZoneName (source, true ) --En que ciudad esta el jugador? if city then --Si el jugador esta en una ciudad de las 3, y no en el campo o algo asi local x,y,z = zones[city][1],zones[city][2],zones[city][3] local Team = getPlayerTeam(source) -- obtenemos el team del jugador local skin = getElementModel(source) -- Obtenemos el skin del jugador setTimer(aparecerJugador,4000,1,source,weaps,skin,Team,x,y,z) -- Esperamos 4 segundos para reaparecer al jugador end end) gracias a los 2 por sus ayudas, sobre el playerblips alguna sugerian? ah otro dato que puede ser util. los blips de los players, en el mapa (F11) no se mueven aparecen quietos por mas que el player este manejando. y en el mini mapa (radar) no muestra los blips de los players saludos
-
hola amigo, me sigue diciendo Necesitas el Trailer!!
-
hola amigo, esto es del lado server verdad? por que lo puse y sigo apareciendo siempre en LS sin skin y sin team gracias
-
hola, tengo un problema, asi como esta anda el trabajo para todos pero cuando pasas por el maker con un auto o moto, te lo toma igual como si pasas con el camion como podria poner para que cuando pasas en el maker compruebe si pasas con el camion + trailer? en la parte del server yo le puse esto addEvent("misionTerminada",true) addEventHandler("misionTerminada",root, function ( elCamion, MiTrailer ) local ElPlayer = source local ganado = math.random(#Preciotable) local pagado = Preciotable[ganado][1] local theTruckTrailerID = getElementModel ( MiTrailer ) local ElPlayer = getVehicleOccupant ( elCamion, 0 ) if ( ElPlayer ) and ( theTruckTrailerID == 584 ) then givePlayerMoney ( ElPlayer, pagado ) outputChatBox ( "Combustible Entregado, Ganaste $ ".. pagado, ElPlayer, 255, 0, 0 ) NuevaPosicion(ElPlayer) else outputChatBox ( "Necesitas el Trailer!!", ElPlayer, 255, 0, 0 ) return end end) pero no lo toma, osea siempre me dice Necesitas el Trailer!! tendria que hacer una funcion nueva? busque en la wiki sobre getElementModel pero no hay para el lado del cliente side. y no se como mandarle el dato del trailer al server asi lo puedo comprobar si tiene o no el camion + trailer
-
Hola buenas tardes, desde ya agradezco la ayuda del otro dia. ahora tengo 1 duda, quizas para muchos sea algo sencillo, pero ami me cuesta por que recien estoy espesando con esto de lua. igual algo entiendo, pero me cuesta entender algunas funciones, busque en la wiki y me ayudo bastante. en fin ahora tengo 1 duda, sobre, como hacer para que cuando un player muera no pierda las armas, el skin y el team, y que nasca en el hostipal mas cercano a su muerte yo ahora mismo tengo esto addEventHandler( "onPlayerWasted", getRootElement( ), function(ammo, killer, weapon) setTimer( spawnPlayer, 4000, 1, source, 1177.5682373047, -1323.2587890625, 14.077121734619 ) -- outputChatBox ( getPlayerName ( source ).." died and was transported at All Saints Hospital.") end ) este codigo a todos los players que mueren lo pone en el hospital de LS, pero si moris en LV tambien vas a parar al Hospital de LS pero cuando moris perdes las armas, skin, team si me pueden guiar un poco se lo agradeceria, ------- otra duda que tengo es sobre los playersblip es decir yo me descargue el scrip playerblip2 que esta en recursos de la pag del mta. pero este no me anda, o bien no es lo que yo busco, yo quiero que en el radar y mapa(F11), los players tengan el blip del color que tienen en sus nombres que es el que tiene el Team. pero que se cambien solo los colores, osea que si un player si hace policia el blip de ese player se cambie solo a azul o el color que sea el team. en este script playerblips2 para que cambie de color los blips tengo que desde el panel del admin, estar apagando y prendiendo el script. nose si ese script Playerblips2 no sea compatible con mi version, uso el mta 1.2 ---------------------------------------------- otra duda, pero esto es un poco sin importancia, vieron cuando entras a un server por primera vez que descarga las cosas del server. como puedo poner una imagen en el fondo para que no se quede la pantalla negra? y luego que se termine de descargar se habra el gui del Login/registre? bueno eso seria mis dudas por ahora. pero me gustaria que me guien mas en las del hospital y playerblips que son las mas importantes. no quiero abusar de su tiempo, por eso no estoy pidiendo que me den los scripts ya echos. sino que me digan se hace con esta funcion o un ejemplo para yo asi poder hacerlo, ya que se que este es un foro de ayuda y ayuda el que puede, por que tambien se que yo no le estoy pagando a nadie para que me ayude o me de los script, bueno saludos
-
oka gracias Solidsnake14, tema resuelto. tengo alguna que otras preguntas, pero como no es de este script mejor hago un nuevo post. saludos
-
ahora si, muchas gracias pa. ya que esta te lo pregunto, para hacer otros tipos de jobs tambien lo tengo que hacer cliente - server? osea las funciones similar a este? de verdad muchas gracias
-
hola solidsnake14, lo volvi a copiar, pero sigue haciendo lo mismo osea paso por el maker y no hace gracias
-
hola Solidsnake14, probe lo que me dejaste, el resultado que me dio es que no anda, no tira error pero no hace cuando pasas por el punto de llegada osea te da el camion y te pone el blip y el maker bien pero cuando llegas al maker no hace, no paga, no quita el maker ni el blip saludos
-
hola buenas noches. bueno le comento, estube haciendo un pequeño script y todo salio. el script es de un trabajo y funciona bien se podria decir, cuando 1 solo player tiene ese empleo. pero si hay 2 players haciendo el trabajo es como que se mesclan. le explico mejor. actualmente estamos haciendo un server con 2 amigos, y hacemos las pruebas nosotros mismo. siempre somos 3 en el server. y por ejemplo si yo me pongo a trabajar el trabajo me funciona de bien pero si los 3 nos ponemos a trabajar. el trabajo solo le sirbe al ultimo que acepto el empleo y a los 2, se le queda el maker y blip marcados en el mapa pero por mas que pasen por el maker con el camion no gana plata y ni tampoco desaparece el maker y blip, mientras que al ultimo que tomo el empleo si le funciona. de pongo los lua server, cliente, aver en que le estoy errando. lua server local Trailertable = { [1] = {584, 2613.9821, -2199.5480, 15, 0, 146, 180}, [2] = {584, 2613.9821, -2199.5480, 15, 0, 1422, 180}, [3] = {584, 2613.9821, -2199.5480, 15, 0, 6400, 180}, [4] = {584, 2613.9821, -2199.5480, 15, 0, 1427, 180}, } -- los id de los trailers son = 584,435,450,591,606,607,610,611,608 pero en este job utilizamos el trailer nº 584 local Preciotable = { [1] = {200}, [2] = {350}, [3] = {500}, [4] = {550}, [5] = {670}, [6] = {750}, [7] = {800}, [8] = {850}, [9] = {900}, [10] = {950}, [11] = {1000}, [12] = {1050}, [13] = {1100}, [14] = {1150}, [15] = {1200}, [16] = {1400}, [17] = {1500}, [18] = {1600}, [19] = {1700}, [20] = {1800}, [21] = {1900}, [22] = {2000}, [23] = {2100}, [24] = {2200}, [25] = {2300}, [26] = {2400}, [27] = {2500}, [28] = {2600}, [29] = {2700}, [30] = {2800}, [31] = {2900}, [32] = {3000}, [33] = {3100}, [34] = {3200}, [35] = {3300}, [36] = {3400}, [37] = {3500}, [38] = {3600}, [39] = {3700}, [40] = {3800}, } --Tabla de posiciones local Posiciontable = { [1] = {1959, -1786, 12.5}, [2] = {-1574, -2743, 47.5}, [3] = {-2251, -2552, 30.5}, [4] = {-1697, 390, 6.5}, [5] = {-2425, 953, 44.5}, [6] = {-1268, 2702, 49.5}, [7] = {-1196, 1826, 40.5}, [8] = {89, 1207, 18.5}, [9] = {585, 1656, 6.5}, [10] = {2211, 2466, 9.5}, [11] = {989, -926, 41.5}, [12] = {-100, -1188, 1.5}, } function creablipcirculo() rpBlipOne0 = createBlip ( 2596, -2204, 13, 56 ) -- blip en el mapa y radar (Hospital LS) setBlipVisibleDistance( rpBlipOne0, 250 ) end addEventHandler("onResourceStart", getResourceRootElement(getThisResource()), creablipcirculo) petro = createMarker (2596,-2204,12.5,"cylinder",2.0,0,0,225,100) teampetro = createTeam ( "Petrolero", 255, 255, 50 ) -- abre el gui del cliente function menuShow1 (jugador) if (source == petro) then if getPlayerTeam ( jugador ) ==getTeamFromName( teampetro) then triggerClientEvent (jugador,"menuShow1",getRootElement(),jugador) else return end end end addEventHandler ("onMarkerHit",getRootElement(),menuShow1) addEvent ("aceptar1", true) function aceptar1( id ) if id == "133" then if getElementType (source) == "player" then level = getPlayerWantedLevel(source) if level == 0 then --si es lvl 0 trabaja setPlayerTeam ( source, teampetro ) -- team medico setPedSkin(source,id) -- le ponemos el skin setPedArmor ( source, 0 ) -- le ponemos sin chaleco anti balas outputChatBox("Estas Trabajando Como Petrolero.", source, 0,255,0) else outputChatBox ("Solamente a Personajes que no sea buscados por la policia se le da el trabajo!!!", source, 255,0,0) end end else outputChatBox ("Selecciona un Skin Valido!!", source, 255,0,0, false) end end addEventHandler( "aceptar1", getRootElement(), aceptar1 ) local ambulancia32 = createMarker (2623.8139, -2207.0749, 12.5, "cylinder", 1.5,0,255,0,150) --cilindro que da la ambulancia function vehicleMarkerHit1 ( hitElement, matchingDimension ) if getElementType ( hitElement ) == "player" and getPlayerTeam ( hitElement ) ==getTeamFromName("Petrolero") then if isPedInVehicle(hitElement) then return true end--si esta en un vehiculo no le da la ambulancia Monters = createVehicle ( 403, 2613.9819, -2208.5371, 14.49, 0, 0, 180 )--donde y rotacion que crea el auto hay que probar si pone el semi ^^ warpPedIntoVehicle(hitElement, Monters) local trailer = math.random(#Trailertable) local id,x,y,z,a,b,r = Trailertable[trailer][1],Trailertable[trailer][2],Trailertable[trailer][3],Trailertable[trailer][4],Trailertable[trailer][5],Trailertable[trailer][6],Trailertable[trailer][7] Monters1 = createVehicle (id,x,y,z,a,b,r) attachTrailerToVehicle(Monters,Monters1) else outputChatBox("Solo a Petrolero se le dará el Camion!!", hitElement, 0, 255, 0 ) end end addEventHandler( "onMarkerHit", ambulancia32 , vehicleMarkerHit1 ) local ambulancia33 = createMarker (2623.8139, -2211.0749, 12.5, "cylinder", 1.5,0,255,255,150) --cilindro que da la ambulancia function vehicleMarkerHit2 ( hitElement, matchingDimension ) if getElementType ( hitElement ) == "player" and getPlayerTeam ( hitElement ) ==getTeamFromName("Petrolero") then if isPedInVehicle(hitElement) then return true end--si esta en un vehiculo no le da la ambulancia Monters = createVehicle ( 515, 2613.9819, -2208.5371, 14.49, 0, 0, 180 ) warpPedIntoVehicle(hitElement, Monters) local trailer = math.random(#Trailertable) local id,x,y,z,a,b,r = Trailertable[trailer][1],Trailertable[trailer][2],Trailertable[trailer][3],Trailertable[trailer][4],Trailertable[trailer][5],Trailertable[trailer][6],Trailertable[trailer][7] --Monters1 = createVehicle (math.random(#Trailertable), 2613.9821, -2199.5480, 15, 0, 0, 180) Monters1 = createVehicle (id,x,y,z,a,b,r) attachTrailerToVehicle(Monters,Monters1) else outputChatBox("Solo a Petrolero se le dará el Camion!!", hitElement, 0, 255, 0 ) end end addEventHandler( "onMarkerHit", ambulancia33 , vehicleMarkerHit2 ) function final1(Player) setPlayerTeam ( Player, "Civil" ) -- team medico setPedSkin(Player,0) -- le ponemos el skin setPedArmor ( Player, 0 ) -- le ponemos sin chaleco anti balas outputChatBox("Dejaste de Trabajando Como Petrolero.", Player, 0,255,0) end addCommandHandler("finpet",final1); function truckerJob ( ElPlayer ) theTruckVehicle = ElPlayer theTruckTrailer = source theTruckTrailerID = getElementModel (source) local ElPlayer = getVehicleOccupant ( ElPlayer, 0 ) if ( ElPlayer ) and ( theTruckTrailerID == 584 ) then outputChatBox ("Llevar el remolque a la bandera.", ElPlayer, 255, 0, 0, false) local posi = math.random(#Posiciontable) local x,z,y= Posiciontable[posi][1],Posiciontable[posi][2],Posiciontable[posi][3] theFinishMarker = createMarker ( x, z, y, "cylinder", 4.5, 0, 255, 0, 90, ElPlayer ) theFinishBlip = createBlip ( x, z, y, 53, 2, 255, 0, 0, 255, 0, 99999.0, ElPlayer ) end function truckerJobMarkerHit ( ElPlayer, matchingDimension ) theMarkerID = getElementID (theFinishMarker) if (source == theFinishMarker) then flashRed (ElPlayer) local ganado = math.random(#Preciotable) local pagado = Preciotable[ganado][1] givePlayerMoney ( ElPlayer, pagado ) destroyElement ( theFinishMarker ) destroyElement ( theFinishBlip ) outputChatBox ( "Aprobada la misión, que gana $ ".. pagado, ElPlayer, 255, 0, 0, false ) --aca el nuevo destino NuevaPosicion(hitPlayer) end end addEventHandler ("onMarkerHit", getRootElement(), truckerJobMarkerHit) end addEventHandler("onTrailerAttach", getRootElement(), truckerJob) function flashRed (jugador) fadeCamera(jugador, false, 1.0, 0, 0, 0 ) -- set a 500 ms (0.5 sec) timer to fade it back in before it has completely faded out setTimer ( fadeCamera, 700, 1, jugador, true, 0.5 ) end addEventHandler( "onMarkerHit", getRootElement(), flashRed ) function NuevaPosicion(Player) local posi = math.random(#Posiciontable) local x,z,y= Posiciontable[posi][1],Posiciontable[posi][2],Posiciontable[posi][3] theFinishMarker = createMarker ( x, z, y, "cylinder", 4.5, 0, 255, 0, 90, Player ) theFinishBlip = createBlip ( x, z, y, 53, 2, 255, 0, 0, 255, 0, 99999.0, Player ) end lua cliente GUIEditor_Label = {} GUIEditor_Label1 = {} theWindow1 = guiCreateWindow(350,50,250,350,"[Life]Petrolero",false) guiWindowSetSizable(theWindow1,false) guiSetVisible (theWindow1, false) guiLabelSetHorizontalAlign(GUIEditor_Label[1],"left",false) guiSetFont(GUIEditor_Label[1],"default-bold-small") aceptaBut1 = guiCreateButton(0.15,0.9,0.3,0.1,"Aceptar",true,theWindow1) closeBut1 = guiCreateButton(0.47,0.9,0.3,0.1,"Cerrar",true,theWindow1) info = guiCreateLabel(0.08,0.05,0.9,0.3,"¿Estas Listo para trabajar de Petrolero?",true,theWindow1) guiLabelSetColor(info, 0, 255, 0) info2 = guiCreateLabel(0.15,0.12,0.60,0.3,"Selecciona el Skin a Utilizar!",true,theWindow1) guiLabelSetColor(info2, 0, 255, 0) autos1 = guiCreateGridList ( 0.01, 0.19, 0.91, 0.70, true,theWindow1 ) column1 = guiGridListAddColumn( autos1, "Skins Disponibles", 0.93, true, theWindow1 ) skin1 = guiGridListAddRow( autos1 ) guiGridListSetItemText(autos1, skin1 , column1,"133",false,false) skin2 = guiGridListAddRow( autos1 ) theWindow2 = guiCreateWindow(350,50,250,350,"[Life]Petrolero",false) guiWindowSetSizable(theWindow2,false) guiSetVisible (theWindow2, false) guiLabelSetHorizontalAlign(GUIEditor_Label1[1],"left",false) guiSetFont(GUIEditor_Label1[1],"default-bold-small") aceptaBut2 = guiCreateButton(0.15,0.9,0.3,0.1,"Aceptar",true,theWindow2) closeBut2 = guiCreateButton(0.47,0.9,0.3,0.1,"Cerrar",true,theWindow2) info4 = guiCreateLabel(0.15,0.12,0.60,0.3,"Selecciona el Camion a Utilizar!",true,theWindow2) guiLabelSetColor(info4, 0, 255, 0) autos2 = guiCreateGridList ( 0.01, 0.19, 0.91, 0.70, true,theWindow2 ) column2 = guiGridListAddColumn( autos2, "Camiones Disponibles", 0.93, true, theWindow2 ) skin2 = guiGridListAddRow( autos2 ) guiGridListSetItemText(autos2, skin2 , column2,"Linerunner",false,false) --id nº 403 skin3 = guiGridListAddRow( autos2 ) guiGridListSetItemText(autos2, skin3 , column2,"Roadtrain",false,false) --id nº 515 function menuShow1 () visableornot = guiGetVisible (theWindow1) if (visableornot == true) then guiSetVisible (theWindow1, false) showCursor (false) end if (visableornot == false) then guiSetVisible (theWindow1, true) showCursor (true) end end addEvent ("menuShow1",true) addEventHandler ("menuShow1",getRootElement(),menuShow1) addEvent ("aceptar1", true) function menuShow2 () visableornot1 = guiGetVisible (theWindow2) if (visableornot1 == true) then guiSetVisible (theWindow2, false) showCursor (false) end if (visableornot1 == false) then guiSetVisible (theWindow2, true) showCursor (true) end end addEvent ("menuShow2",true) addEventHandler ("menuShow2",getRootElement(),menuShow2) addEvent ("aceptar2", true) function guiClick (button, state, absoluteX, absoluteY) if (source == aceptaBut1) then if (guiGridListGetSelectedItem (autos1)) then local carName1 = guiGridListGetItemText (autos1, guiGridListGetSelectedItem (autos1)) triggerServerEvent ("aceptar1", getLocalPlayer(), carName1) guiSetVisible ( theWindow1, false ) showCursor ( false ) end elseif (source == closeBut1) then guiSetVisible ( theWindow1, false ) showCursor ( false ) end if (source == aceptaBut2) then if (guiGridListGetSelectedItem (autos2)) then local carName2 = guiGridListGetItemText (autos2, guiGridListGetSelectedItem (autos2)) triggerServerEvent ("aceptar2", getLocalPlayer(), carName2) guiSetVisible ( theWindow2, false ) showCursor ( false ) end elseif (source == closeBut2) then guiSetVisible ( theWindow2, false ) showCursor ( false ) end end addEventHandler ("onClientGUIClick", getRootElement(), guiClick) saludos, y espero que me digan cual es mi error o si me falta alguna funcion para que sea multijugador