
brunob22
Members-
Posts
159 -
Joined
-
Last visited
Everything posted by brunob22
-
pode coloca onde tu quiser man ^^
-
evite erros function des1 (source) if bike1 then destroyElement (bike1) end givePlayerMoney (source, 10) outputChatBox (meu texto, source, r, g, b, a, true) end addCommandHandler ("desalugar", des1)
-
entendi agora.. tenta isso troca isso triggerClientEvent (client, "mission5", client) por isso triggerClientEvent (client, "mission5", client,veh5) no client mude function callServerFunction() por function callServerFunction(veh5) e assim use a variavel " veh5 " em lado client se funcionar avisa
-
--------- sistema de backup dos veiculos needToSave = { {"MAX_Slots"}, {"Tire_inVehicle"}, {"Engine_inVehicle"}, {"Parts_inVehicle"}, {"Tire_inVehicle_HP"}, {"Engine_inVehicle_HP"}, {"Parts_inVehicle_HP"}, {"armorPointsMax"}, {"armorPoints"}, {"fuel"}, {"maxfuel"}, {"needengine"}, {"needtires"}, {"needparts"}, {"receiver"}, } function SaveVehicles(player) if isElement(player) then if not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then return end end fileDelete("SaveSystem/XVehicles.xml") xml = xmlCreateFile("SaveSystem/XVehicles.xml","config") xmlSaveFile(xml) count = 0 for _,vehCol in pairs(getElementsByType("colshape")) do if getElementData(vehCol,"vehicle") and not getElementData(vehCol,"tent") then count = count + 1 if getElementData(vehCol,"parent") and isElement(getElementData(vehCol,"parent")) then veh = getElementData(vehCol,"parent") slots = getElementData(vehCol,"MAX_Slots") health = getElementHealth(veh) x,y,z = getElementPosition(veh) ---=========== local SpawnVehXYZ = getElementData(vehCol,"spawn") -- CORREÇÃO rx,ry,rz = getElementRotation(veh) VehInfos = xmlCreateChild(xml,"Veh") xmlNodeSetAttribute(VehInfos,"Name",getVehicleName(veh)) xmlNodeSetAttribute(VehInfos,"ID",getElementModel(veh)) xmlNodeSetAttribute(VehInfos,"Health",math.floor(health)) xmlNodeSetAttribute(VehInfos,"X",x) xmlNodeSetAttribute(VehInfos,"Y",y) xmlNodeSetAttribute(VehInfos,"Z",z) --------------------======================================= xmlNodeSetAttribute(VehInfos,"Spawn_X",SpawnVehXYZ[1]) -- CORREÇÃO xmlNodeSetAttribute(VehInfos,"Spawn_Y",SpawnVehXYZ[2]) -- CORREÇÃO xmlNodeSetAttribute(VehInfos,"Spawn_Z",SpawnVehXYZ[3]) -- CORREÇÃO ---------------------======================================== xmlNodeSetAttribute(VehInfos,"RX",rx) xmlNodeSetAttribute(VehInfos,"RY",ry) xmlNodeSetAttribute(VehInfos,"RZ",rz) VehItens = xmlCreateChild(VehInfos,"Itens") for _,item in pairs(vehicleDataTable)do if(tonumber(getElementData(vehCol,item[1])) and getElementData(vehCol,item[1]) >= 1) then Item2 = xmlCreateChild(VehItens,"Item") xmlNodeSetAttribute(Item2,"Item",item[1]) xmlNodeSetAttribute(Item2,"Quant",getElementData(vehCol,item[1]) or 0) end end for _,item in pairs(needToSave)do Item2 = xmlCreateChild(VehItens,"Item") xmlNodeSetAttribute(Item2,"Item",item[1]) xmlNodeSetAttribute(Item2,"Quant",getElementData(vehCol,item[1]) or 0) end end end end xmlSaveFile(xml) xmlUnloadFile(xml) if isElement(player) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then outputChatBox("#FFFFFFQuantidade de Veículos Salvos #FF0000*#FFFFFF"..count.."#FF0000*",player,255,0,0,true) end end end addEventHandler("onResourceStop",getResourceRootElement(),SaveVehicles) setTimer(SaveVehicles,10000,0) function LoadVehicles(player) if isElement(player) then if not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then return end end xml = xmlLoadFile("SaveSystem/XVehicles.xml") for i,node in pairs(xmlNodeGetChildren(xml)) do x = tonumber(xmlNodeGetAttribute(node,"X")) y = tonumber(xmlNodeGetAttribute(node,"Y")) z = tonumber(xmlNodeGetAttribute(node,"Z")) --------------============================= SpawnVx = tonumber(xmlNodeGetAttribute(node,"Spawn_X")) -- CORREÇÃO SpawnVy = tonumber(xmlNodeGetAttribute(node,"Spawn_Y")) -- CORREÇÃO SpawnVz = tonumber(xmlNodeGetAttribute(node,"Spawn_Z")) -- CORREÇÃO --------------============================= rx = tonumber(xmlNodeGetAttribute(node,"RX")) ry = tonumber(xmlNodeGetAttribute(node,"RY")) rz = tonumber(xmlNodeGetAttribute(node,"RZ")) veh = createVehicle(tonumber(xmlNodeGetAttribute(node,"ID")),x,y,z,rx,ry,rz) vehCol = createColSphere(x,y,z,4) ---================= setElementData(vehCol,"spawn",{tonumber(xmlNodeGetAttribute(node,"ID")),SpawnVx,SpawnVy,SpawnVz}) -- CORREÇÃO ---================= attachElements(vehCol,veh,0,0,0) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementHealth(veh,tonumber(math.floor(xmlNodeGetAttribute(node,"Health")))) for i,Item in pairs(xmlNodeGetChildren(xmlFindChild(node,"Itens",0))) do setElementData(vehCol,xmlNodeGetAttribute(Item,"Item"),tonumber(xmlNodeGetAttribute(Item,"Quant"))) end end xmlUnloadFile(xml) if isElement(player) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then outputChatBox("Todos os Veículos foram salvos com sucesso",player,255,0,0,true) end end end addEventHandler("onResourceStart",getResourceRootElement(getThisResource()),LoadVehicles) addCommandHandler("savevehs",SaveVehicles) addCommandHandler("loadvehs",LoadVehicles) tenta agora.
-
codigo incompleto.. impossivel entender alguma coisa ai pelo menos para mim
-
ue? kkk e muito simples e so ele olhar em vez de espera alguem trazer pronto.. ele ta salvando a posição x,y,z do carro e depois colocando ela no selementdata que salva o spawn do carro.. aii setElementData(vehCol,"spawn",{tonumber(xmlNodeGetAttribute(node,"ID")),x,y,z}) e so olhar e saber oque ta fazendo antes de fazer a minha resposta ali foi bem direta.. e so ele ler o codigo --------- sistema de backup dos veiculos needToSave = { {"MAX_Slots"}, {"Tire_inVehicle"}, {"Engine_inVehicle"}, {"Parts_inVehicle"}, {"Tire_inVehicle_HP"}, {"Engine_inVehicle_HP"}, {"Parts_inVehicle_HP"}, {"armorPointsMax"}, {"armorPoints"}, {"fuel"}, {"maxfuel"}, {"needengine"}, {"needtires"}, {"needparts"}, {"receiver"}, } function SaveVehicles(player) if isElement(player) then if not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then return end end fileDelete("SaveSystem/XVehicles.xml") xml = xmlCreateFile("SaveSystem/XVehicles.xml","config") xmlSaveFile(xml) count = 0 for _,vehCol in pairs(getElementsByType("colshape")) do if getElementData(vehCol,"vehicle") and not getElementData(vehCol,"tent") then count = count + 1 if getElementData(vehCol,"parent") and isElement(getElementData(vehCol,"parent")) then veh = getElementData(vehCol,"parent") slots = getElementData(vehCol,"MAX_Slots") health = getElementHealth(veh) x,y,z = getElementPosition(veh) ----<<< AQUI ELE PEGA A POSIÇÃO DOS CARROS rx,ry,rz = getElementRotation(veh) VehInfos = xmlCreateChild(xml,"Veh") xmlNodeSetAttribute(VehInfos,"Name",getVehicleName(veh)) xmlNodeSetAttribute(VehInfos,"ID",getElementModel(veh)) xmlNodeSetAttribute(VehInfos,"Health",math.floor(health)) xmlNodeSetAttribute(VehInfos,"X",x) --- <<< AQUI ELE TA SALVANDO A POSIÇÃO DO CARRO NO XML xmlNodeSetAttribute(VehInfos,"Y",y) --- <<< AQUI ELE TA SALVANDO A POSIÇÃO DO CARRO NO XML xmlNodeSetAttribute(VehInfos,"Z",z) --- <<< AQUI ELE TA SALVANDO A POSIÇÃO DO CARRO NO XML xmlNodeSetAttribute(VehInfos,"RX",rx) xmlNodeSetAttribute(VehInfos,"RY",ry) xmlNodeSetAttribute(VehInfos,"RZ",rz) VehItens = xmlCreateChild(VehInfos,"Itens") for _,item in pairs(vehicleDataTable)do if(tonumber(getElementData(vehCol,item[1])) and getElementData(vehCol,item[1]) >= 1) then Item2 = xmlCreateChild(VehItens,"Item") xmlNodeSetAttribute(Item2,"Item",item[1]) xmlNodeSetAttribute(Item2,"Quant",getElementData(vehCol,item[1]) or 0) end end for _,item in pairs(needToSave)do Item2 = xmlCreateChild(VehItens,"Item") xmlNodeSetAttribute(Item2,"Item",item[1]) xmlNodeSetAttribute(Item2,"Quant",getElementData(vehCol,item[1]) or 0) end end end end xmlSaveFile(xml) xmlUnloadFile(xml) if isElement(player) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then outputChatBox("#FFFFFFQuantidade de Veículos Salvos #FF0000*#FFFFFF"..count.."#FF0000*",player,255,0,0,true) end end end addEventHandler("onResourceStop",getResourceRootElement(),SaveVehicles) setTimer(SaveVehicles,10000,0) function LoadVehicles(player) if isElement(player) then if not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then return end end xml = xmlLoadFile("SaveSystem/XVehicles.xml") for i,node in pairs(xmlNodeGetChildren(xml)) do x = tonumber(xmlNodeGetAttribute(node,"X")) -----< AQUI ELE TA CARREGANDO POSIÇÃO DO CARRO QUE ELE SALVO NO XML y = tonumber(xmlNodeGetAttribute(node,"Y")) -----< AQUI ELE TA CARREGANDO POSIÇÃO DO CARRO QUE ELE SALVO NO XML z = tonumber(xmlNodeGetAttribute(node,"Z")) -----< AQUI ELE TA CARREGANDO POSIÇÃO DO CARRO QUE ELE SALVO NO XML rx = tonumber(xmlNodeGetAttribute(node,"RX")) ry = tonumber(xmlNodeGetAttribute(node,"RY")) rz = tonumber(xmlNodeGetAttribute(node,"RZ")) veh = createVehicle(tonumber(xmlNodeGetAttribute(node,"ID")),x,y,z,rx,ry,rz) vehCol = createColSphere(x,y,z,4) setElementData(vehCol,"spawn",{tonumber(xmlNodeGetAttribute(node,"ID")),x,y,z}) ---- <<< AQUI ELE TA PEGANDO A POSIÇÃO QUE ELE SALVO E TA COLOCANDO NO SPAWN DO CARRO attachElements(vehCol,veh,0,0,0) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementHealth(veh,tonumber(math.floor(xmlNodeGetAttribute(node,"Health")))) for i,Item in pairs(xmlNodeGetChildren(xmlFindChild(node,"Itens",0))) do setElementData(vehCol,xmlNodeGetAttribute(Item,"Item"),tonumber(xmlNodeGetAttribute(Item,"Quant"))) end end xmlUnloadFile(xml) if isElement(player) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then outputChatBox("Todos os Veículos foram salvos com sucesso",player,255,0,0,true) end end end addEventHandler("onResourceStart",getResourceRootElement(getThisResource()),LoadVehicles) addCommandHandler("savevehs",SaveVehicles) addCommandHandler("loadvehs",LoadVehicles) Codigo Arrumado.. --------- sistema de backup dos veiculos needToSave = { {"MAX_Slots"}, {"Tire_inVehicle"}, {"Engine_inVehicle"}, {"Parts_inVehicle"}, {"Tire_inVehicle_HP"}, {"Engine_inVehicle_HP"}, {"Parts_inVehicle_HP"}, {"armorPointsMax"}, {"armorPoints"}, {"fuel"}, {"maxfuel"}, {"needengine"}, {"needtires"}, {"needparts"}, {"receiver"}, } function SaveVehicles(player) if isElement(player) then if not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then return end end fileDelete("SaveSystem/XVehicles.xml") xml = xmlCreateFile("SaveSystem/XVehicles.xml","config") xmlSaveFile(xml) count = 0 for _,vehCol in pairs(getElementsByType("colshape")) do if getElementData(vehCol,"vehicle") and not getElementData(vehCol,"tent") then count = count + 1 if getElementData(vehCol,"parent") and isElement(getElementData(vehCol,"parent")) then veh = getElementData(vehCol,"parent") slots = getElementData(vehCol,"MAX_Slots") health = getElementHealth(veh) x,y,z = getElementPosition(veh) ---=========== local SpawnX,SpawnY,SpawnZ = getElementData(vehCol,"spawn") -- CORREÇÃO rx,ry,rz = getElementRotation(veh) VehInfos = xmlCreateChild(xml,"Veh") xmlNodeSetAttribute(VehInfos,"Name",getVehicleName(veh)) xmlNodeSetAttribute(VehInfos,"ID",getElementModel(veh)) xmlNodeSetAttribute(VehInfos,"Health",math.floor(health)) xmlNodeSetAttribute(VehInfos,"X",x) xmlNodeSetAttribute(VehInfos,"Y",y) xmlNodeSetAttribute(VehInfos,"Z",z) --------------------======================================= xmlNodeSetAttribute(VehInfos,"Spawn_X",SpawnX) -- CORREÇÃO xmlNodeSetAttribute(VehInfos,"Spawn_Y",SpawnY) -- CORREÇÃO xmlNodeSetAttribute(VehInfos,"Spawn_Z",SpawnZ) -- CORREÇÃO ---------------------======================================== xmlNodeSetAttribute(VehInfos,"RX",rx) xmlNodeSetAttribute(VehInfos,"RY",ry) xmlNodeSetAttribute(VehInfos,"RZ",rz) VehItens = xmlCreateChild(VehInfos,"Itens") for _,item in pairs(vehicleDataTable)do if(tonumber(getElementData(vehCol,item[1])) and getElementData(vehCol,item[1]) >= 1) then Item2 = xmlCreateChild(VehItens,"Item") xmlNodeSetAttribute(Item2,"Item",item[1]) xmlNodeSetAttribute(Item2,"Quant",getElementData(vehCol,item[1]) or 0) end end for _,item in pairs(needToSave)do Item2 = xmlCreateChild(VehItens,"Item") xmlNodeSetAttribute(Item2,"Item",item[1]) xmlNodeSetAttribute(Item2,"Quant",getElementData(vehCol,item[1]) or 0) end end end end xmlSaveFile(xml) xmlUnloadFile(xml) if isElement(player) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then outputChatBox("#FFFFFFQuantidade de Veículos Salvos #FF0000*#FFFFFF"..count.."#FF0000*",player,255,0,0,true) end end end addEventHandler("onResourceStop",getResourceRootElement(),SaveVehicles) setTimer(SaveVehicles,10000,0) function LoadVehicles(player) if isElement(player) then if not isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then return end end xml = xmlLoadFile("SaveSystem/XVehicles.xml") for i,node in pairs(xmlNodeGetChildren(xml)) do x = tonumber(xmlNodeGetAttribute(node,"X")) y = tonumber(xmlNodeGetAttribute(node,"Y")) z = tonumber(xmlNodeGetAttribute(node,"Z")) --------------============================= SpawnVx = tonumber(xmlNodeGetAttribute(node,"Spawn_X")) -- CORREÇÃO SpawnVy = tonumber(xmlNodeGetAttribute(node,"Spawn_Y")) -- CORREÇÃO SpawnVz = tonumber(xmlNodeGetAttribute(node,"Spawn_Z")) -- CORREÇÃO --------------============================= rx = tonumber(xmlNodeGetAttribute(node,"RX")) ry = tonumber(xmlNodeGetAttribute(node,"RY")) rz = tonumber(xmlNodeGetAttribute(node,"RZ")) veh = createVehicle(tonumber(xmlNodeGetAttribute(node,"ID")),x,y,z,rx,ry,rz) vehCol = createColSphere(x,y,z,4) ---================= setElementData(vehCol,"spawn",{tonumber(xmlNodeGetAttribute(node,"ID")),SpawnVx,SpawnVy,SpawnVz}) -- CORREÇÃO ---================= attachElements(vehCol,veh,0,0,0) setElementData(vehCol,"parent",veh) setElementData(veh,"parent",vehCol) setElementData(vehCol,"vehicle",true) setElementHealth(veh,tonumber(math.floor(xmlNodeGetAttribute(node,"Health")))) for i,Item in pairs(xmlNodeGetChildren(xmlFindChild(node,"Itens",0))) do setElementData(vehCol,xmlNodeGetAttribute(Item,"Item"),tonumber(xmlNodeGetAttribute(Item,"Quant"))) end end xmlUnloadFile(xml) if isElement(player) then if isObjectInACLGroup("user."..getAccountName(getPlayerAccount(player)),aclGetGroup("Admin"))then outputChatBox("Todos os Veículos foram salvos com sucesso",player,255,0,0,true) end end end addEventHandler("onResourceStart",getResourceRootElement(getThisResource()),LoadVehicles) addCommandHandler("savevehs",SaveVehicles) addCommandHandler("loadvehs",LoadVehicles)
-
ja vi que tem gente precisando saber sobre While e for ai https://www.lua.org/pil/4.3.2.html https://www.lua.org/pil/4.3.4.html boms estudos
-
voce entendeu porque ele mando o codigo pronto como sempre. eu te mostrei onde procurar que e diferene. voce nao vai na escola eo professor te entraga a prova ja com respostas? eu dei a direção poderia simplesmente estudar sobre ou espera alguem trazer codigo pronto escolheu a segunda opção
-
para obter lista de jogadores voce vai precisa usar " for " junto com getElementsByType basicamente para player e isso para add na grid vai usar guiGridListAddRow guiGridListSetItemText desculpe não te entrega o codigo pronto. sou totalmente contra a essa atitude
-
ate onde eu sei. o forum e para ajudar o pessoal com problemas em seus codigo. não distribuir codigos prontos assim nunca vao aparender
-
opa ai sim ^^
-
Bom dia. Vamos la primeiro não pego um codigo e simplesmente jogue ele no server se a menos entender oque ta fazendo. eu não vou ajudar vou apenas informa oque ta errado. o errado no codigo são as posição não vou ajudar mais que isso vejo você fazendo isso direito ja ta virando festa
-
[Ajuda] Criar veiculo freezado em cima de outro
brunob22 replied to +[T]rakin's topic in Programação em Lua
setElementCollisionsEnabled tenta isso veh = {} function inicio (source) --- Função do primeiro marker if isElementWithinMarker(source, PMarker) then local accName = getAccountName (getPlayerAccount(source)) if isObjectInACLGroup ("user."..accName, aclGetGroup ("Moderator")) then if veh[source] and isElement( veh[source] ) then destroyElement ( veh[source] ) veh[source] = nil end x,y,z = getElementPosition(source) Trabalho = true FBlip = createBlipAttachedTo(FMarker,19) ---Bandeira veh[source] = createVehicle(578, 1188.9052734375, -1278.16015625, 13.288257598877, 0, 0, 90.505493164063) setElementVisibleTo( FBlip, source, true) ---Mostrar o blipt quando começa o trabalho warpPedIntoVehicle (source, veh[source]) ---- Transporta o jogador para dentor do carro veiculoquebrado = createVehicle(422, 1188.9052734375 -2, -1278.16015625, 13.288257598877, 0, 0, 90.505493164063) setElementCollisionsEnabled ( veiculoquebrado, false ) --------------------<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< attachElements( veh[source], veiculoquebrado, 1188.9052734375 -2, -1278.16015625, 13.288257598877, 0, 0, 90.505493164063 ) outputChatBox ("#FFFFFF[Emprego]Bem Vindo ao emprego [Reboque]", source,0,0,0,true) -- triggerClientEvent ( source, "texto", root) else outputChatBox ("#00ccff[#ff0000AVISO#00ccff]#ff0000Você não pode fazer seus corres aqui!", source,0,0,0,true) end end end addEventHandler( "onMarkerHit", PMarker, inicio) -
[Ajuda] Criar veiculo freezado em cima de outro
brunob22 replied to +[T]rakin's topic in Programação em Lua
attachElements bom uso -
vou testa dps ^^
-
infelizmente ' gui ' nao entra nessa .. eo dxdraw so e pesado se fazer coisas erradas.
-
exatamente meu amigo.. mais onde eu andei veno e perguntando aqui não existe função para mudar a cor do drawtext so na base da gambiarra msm '-'
-
não esta bugando . apenas saber se tem outra forma. alguma função que faiz isso..
-
e auto explicativo. conforme eu vou nevegando pelo menu a cor do texto vai mudando basicamente a minha pergunta e: existe outro modo de fazer isso mais simples?
-
a print não carrego?
-
bom eu andei dando uma olhada e não vi nada relevante por ai então resolvi fazer desse jeito.. alguem conheçe outro modo? NumeroInicial = 1 function textSelecioando(key3) if key3 == "arrow_u" then NumeroInicial = NumeroInicial-1 if NumeroInicial < 1 then NumeroInicial = 1 end Textoselecioado[NumeroInicial+1] = tocolor(255,255,255,255) elseif key3 == "arrow_d" then NumeroInicial = NumeroInicial+1 if NumeroInicial > 11 then NumeroInicial = 11 end Textoselecioado[NumeroInicial-1] = tocolor(255,255,255,255) end Textoselecioado[NumeroInicial] = tocolor(0,255,255,255) end bindKey("arrow_u","down",textSelecioando) bindKey("arrow_d","down",textSelecioando) ex https://imgur.com/a/nNhXk1c
-
[ AJUDA ] Console - Network
brunob22 replied to Angelo Pereira's topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
vou tenta explicar .. oque voce informo ai alguma resource em seu servidor ta sobrecarregando o servidor. ou algum player descobriu como fazer isso tente descobri qual resource ta fazendo isso tente percebe e quem momento o servidor trava e dificil falar oque ta acontecendo entende? -
[ AJUDA ] Console - Network
brunob22 replied to Angelo Pereira's topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
problemas de network tem nada ave com fps. começa por ai.. oque pode ta causando network pode ser internet ou alguma resource puxando muito do servidor ao ponto dele travar como tb a vps pode ser ruim network trouble > problemas de rede fps | frames per second > quadro de frames por secundo.. por favor não confunda fps com ping agradeço