Jump to content
Fivem-DEV.cz

Leaderboard


Popular Content

Showing content with the highest reputation since 11/23/2020 in all areas

  1. 1 point
    Nezakázalo fivem náhodou provozovaní fivem hostingu ?
  2. 1 point
    Update 1.0.2 Co je nového? opravena bezpečnostní chyba odstraněn server event pro provolávání z klienta (notsafe) přdán discord webhook pro notifikace ohledně provedení CK možnost vybrat typ identifikátoru, který používáte (steam, license) odebrán debug režim Nahrajte si prosím původní verzi touto novou, jinak se vystavujete riziku zneužití bezpečnostní chyby předchozí verze
  3. 1 point
    Zdravím, viděl sem že zde má hodně lidí problém s mumblem tak vám tu sepíšu malý tutoriál 1. Stáhneme mumble voip Vložíme do resources 2. Zapíšeme do server.cfg Prosím aby jste tohle zapsali dříve v startu než hardcap start mumble-voip start rp-radio setr voice_use3dAudio true setr voice_useSendingRangeOnly true 3. Smažeme Server Cache 4. Zapneme server NESMÍTE MÍT AKTIVNÍ ŽÁDNÝ DALŠÍ VOICE SYSTÉMY Pro Integraci GcPhone Otevřeme gcphone/client/client.lua Najdeme si řádek 377 následně nahradíme NetworkSetVoiceChannel(infoCall.id + 1) NetworkSetTalkerProximity(0.0) za tohle exports["mumble-voip"]:SetCallChannel(infoCall.id + 1) -- NetworkSetVoiceChannel(infoCall.id + 1) -- NetworkSetTalkerProximity(0.0) Následně zase najdeme řádek 392 zase nahradíme Citizen.InvokeNative(0xE036A705F989E049) NetworkSetTalkerProximity(2.5) za tohle exports["mumble-voip"]:SetCallChannel(0) --Citizen.InvokeNative(0xE036A705F989E049) --NetworkSetTalkerProximity(2.5) Doufám že jsem pomohl jestli ano budu rád když mi tu necháte srdičko .) S Láskou Mr.N0BODY
  4. 1 point
    [ESX] Revive Script • Přines své přátele do nemocnice a oni se klávesou E revivnou. Tente script je dobrý, když je na serveru málo EMS. ;) Odkaz: https://forum.cfx.re/t/esx-revive-script-bring-your-friends-to-hospital-and-revive-it/1609767
  5. 1 point
    ShapeTest (raycast) slouží k detekci "něčeho ve světě." se na určitém místě něco nachází (auto/ped) jestli se něco nachází mezi bodem A a bodem B Může být užitečné pro Spawnování aut (checknutí jestli je parkovací místo zabrané) Radar (vyhledání auta před/za autem hráče) Systém židlí (podívám se, jestli v ruzých směrech kolem peda je židle - rychlejší než GetClosestObjectOfType Užitečné jen když chcete vypsat help text. Pokud máte sednutí jen na tlačítko, pak 1 zavolání GetClosestObjectOfType dostačuje Zjištění, jestli mezi bodem A a bodem B je přímka, která není nijak blokovaná (ekvivalent HasEntityClearLosToEntity, netestoval jsem, co je rychlejší) Mnou testované ShapeTest funkce v GTA StartShapeTestRay StartShapeTestBox StartShapeTestCapsule Pro získání výsledku pak funkce GetShapeTestResult GetShapeTestResultIncludingMaterial Zbytek jsem nezkoušel a zatím jsem pro ně neměl potřebu. Příklad jednoduchého shapetestu, který najde auto před našim autem a zobrazí NumberPlate (R.Z.) Citizen.CreateThread(function() while true do Wait(0) local ped = PlayerPedId() local veh = GetVehiclePedIsIn(ped, false) if veh > 0 then local vehCoord = GetEntityCoords(veh) local fwdVector = GetEntityForwardVector(veh) local rayEnd = vehCoord + fwdVector * 8 -- debug line -- pro debug nevypisuju individualne x,y,z, nechavam CFX -- aby to spravne interpretoval. Neni doporuceno pro -- produkcni kod, nebot se to muze kdykoli zmenit -- a podpora muze zmizet DrawLine(vehCoord, rayEnd, 0, 0, 255, 255) -- nadefinujeme shapetest local ray = StartShapeTestRay( vehCoord.x, vehCoord.y, vehCoord.z, -- začátek shapetestu rayEnd.x, rayEnd.y, rayEnd.z, -- konec shapetestu 2, -- flag => auta veh, -- entita, kterou chceme ignorovat => naše auto 4 -- neznámý argument ) -- získáme výsledek raycastu local _, hit, endCoords, _, entityHit = GetShapeTestResult(ray) if hit > 0 and entityHit > 0 then -- nemusime zjišťovat, jeslti entityHit je auto -- protože jsme ray omezili flagem local license = GetVehicleNumberPlateText(entityHit) Draw3DText(endCoords.x, endCoords.y, endCoords.z, license) end end end end) function Draw3DText(x, y, z, text) local onScreen,_x,_y=World3dToScreen2d(x,y,z) if onScreen then SetTextScale(0.6, 0.6) SetTextFont(0) SetTextColour(255, 255, 255, 255) SetTextDropshadow(0, 0, 0, 0, 255) SetTextDropShadow() SetTextOutline() SetTextEntry("STRING") SetTextCentre(1) AddTextComponentString(text) DrawText(_x,_y) end end Příklad složitějšího shapetestu pro zjištění, jestli je parkovací místo zabrané. Citizen.CreateThread(function() -- checknuti 1 pozice trva na mojem PC neco málo přes 0.01ms local centers = { vector3(228.35, -786.49, 29.69), vector3(229.26, -783.89, 29.7), vector3(230.3, -781.41, 29.7), vector3(231.22, -778.95, 29.71), vector3(233.05, -773.91, 29.73), vector3(234.09, -771.28, 29.75) } local heading = 68.5 -- směr parkovacího boxu -- velikost parkovacího boxu local width = 2.3 local length = 4.5 local height = 2.0 while true do Wait(0) for _, center in pairs(centers) do local occluded = IsParkingSpotOccluded(center, heading, width, length, height) ShapeBoxDraw(center, heading, width, length, height, occluded) end end end) function IsParkingSpotOccluded(center, heading, width, length, height) -- 2 -> auta -- 4 -> peds -- 16 -> objekty -- 256 -> rostliny local flags = 2 + 4 + 16 + 256 local ray = StartShapeTestBox( -- vytvoříme ShapeTest center.x, center.y, center.z, -- center boxu width, length, height, -- velikost boxu 0.0, 0.0, heading, 2, -- https://en.wikipedia.org/wiki/Euler_angles, `2` - pořadí rotací flags, -- flagy, co raycast chyta - https://runtime.fivem.net/doc/natives/?_0x377906D8A31E5586 0, -- entita, kterou má raycast ignorovat (např. PlayerPedId() pokud chceme ignorovat sveho peda) 4 -- neznamy parametr ) -- 1. vystup je neznámá proměnná -- hit - 0 pokud nic nebylo nalezeno, 1 pokud bylo -- endCoords - kde raycast něco trefil -- surfaceNormal - https://cs.wikipedia.org/wiki/Norm%C3%A1la -- entityHit - jakou entitu ray trefil local _, hit, endCoords, surfaceNormal, entityHit = GetShapeTestResult(ray) -- zjistíme výsledek ShapeTestu -- pokud vás zajímá i materiál, pak funkce https://runtime.fivem.net/doc/natives/?_0x65287525D951F6BE return hit > 0 end -- Funkce na debug StartShapeTestBox, není vysvětleno jak funguje, neboť není předmětem návodu -- ale je to jen jednoduchá trigonometrie -- vykreslení debug boxu trvá ~0.01ms function ShapeBoxDraw(center, heading, width, length, height, occluded) local diagonal = math.sqrt((width/2)^2 + (length/2)^2) local fullDiagonal = math.sqrt(width^2 + length^2) local boxHeight = vector3(0.0, 0.0, height) local newAngle = math.deg(math.asin(length/fullDiagonal)) local topRight = GetAngledPosition(center, diagonal, heading + newAngle, 1) local bottomRight = GetAngledPosition(center, diagonal, heading - newAngle, 1) local bottomLeft = GetAngledPosition(center, diagonal, heading + newAngle, -1) local topLeft = GetAngledPosition(center, diagonal, heading - newAngle, -1) local off = vector3(0.0, 0.0, 5.0) local boxColor = {0, 255, 0} if occluded then boxColor = {255, 0, 0} end DrawLine(topRight-off, topRight+off, 0, 255,0,255) DrawLine(bottomRight-off, bottomRight+off, 255, 0 ,0,255) DrawLine(bottomLeft-off, bottomLeft+off, 0, 0,255,255) DrawLine(topLeft-off, topLeft+off, 255, 255,255,255) DrawPoly(topRight, topLeft, topLeft + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(topRight, topLeft + boxHeight, topRight + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(bottomLeft, bottomRight, bottomRight + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(bottomLeft, bottomRight + boxHeight, bottomLeft + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(topLeft, bottomLeft, bottomLeft + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(topLeft, bottomLeft + boxHeight, topLeft + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(bottomRight, topRight, topRight + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(bottomRight, topRight + boxHeight, bottomRight + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(bottomRight + boxHeight, topRight + boxHeight, topLeft + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) DrawPoly(topLeft + boxHeight, bottomLeft + boxHeight, bottomRight + boxHeight, boxColor[1], boxColor[2], boxColor[3], 100) end function GetAngledPosition(center, dist, angle, mod) local angRad = math.rad(angle) return center + mod * dist * vector3( math.cos(angRad), math.sin(angRad), 0.0 ) end
  6. 0 points
    Prosím neberte toto video nějak vážně má sloužit čistě jako parodie, jména a osoby v tomto videu byli vymyšlené a nejspíš neexistují Kappa

Our partners

rcore.cz
K4mb1
K4mb1
SLTH
×
×
  • Create New...