Szerző Téma: Setrendszam probléma  (Megtekintve 2330 alkalommal)

Setrendszam probléma
« Válasz #15 Dátum: 2016. Augusztus 24. - 21:54:34 »
0 Show voters
próbáld meg úgy, hogy kiveszed az adminleveles elágazást... ha úgy lefut, akkor azzal lesz a gond

Nem elérhető Eduka

  • 214
    • Profil megtekintése
Setrendszam probléma
« Válasz #16 Dátum: 2016. Augusztus 24. - 22:58:36 »
0 Show voters
Biztos h az a gond, tobbi menni fog

Setrendszam probléma
« Válasz #17 Dátum: 2016. Augusztus 25. - 12:19:05 »
0 Show voters
így el sem akar indulni. eddig működött az F10 el hogy mutatja a rendszámot most meg az sem megy.
 
function PlateText(commandName,text,also)
local Vehicle = getPedOccupiedVehicle(getLocalPlayer())
if Vehicle then
if text and not also then
   setVehiclePlateText( Vehicle, text )
elseif text and also then
   setVehiclePlateText( Vehicle, text .. \" \" .. also )
else
    outputChatBox(\"Kénes szöveg is nemigaz?\",localPlayer)
end
else
outputChatBox(\"Úgy látom nem vagy kocsiban\",localPlayer)
end
end
end
addCommandHandler(\"setrendszam\",PlateText)

 
itt a teljes.
 
function dxDrawTextOnElement(TheElement,text,height,distance,R,G,B,alpha,size,font,checkBuildings,checkVehicles,checkPeds,checkDummies,seeThroughStuff,ignoreSomeObjectsForCamera,ignoredElement)
      local x, y, z = getElementPosition(TheElement)
      local x2, y2, z2 = getElementPosition(localPlayer)
      local distance = distance or 20
      local height = height or 1
                                local checkBuildings = checkBuildings or true
                                local checkVehicles = checkVehicles or false
                                local checkPeds = checkPeds or false
                                local checkObjects = checkObjects or true
                                local checkDummies = checkDummies or true
                                local seeThroughStuff = seeThroughStuff or false
                                local ignoreSomeObjectsForCamera = ignoreSomeObjectsForCamera or false
                                local ignoredElement = ignoredElement or nil
      if (isLineOfSightClear(x, y, z, x2, y2, z2, checkBuildings, checkVehicles, checkPeds , checkObjects,checkDummies,seeThroughStuff,ignoreSomeObjectsForCamera,ignoredElement)) then
         local sx, sy = getScreenFromWorldPosition(x, y, z+height)
         if(sx) and (sy) then
            local distanceBetweenPoints = getDistanceBetweenPoints3D(x, y, z, x2, y2, z2)
            if(distanceBetweenPoints < distance) then
               dxDrawText(text, sx+2, sy+3.5, sx, sy, tocolor(R or 255, G or 255, B or 255, 100), (size or 1)-(distanceBetweenPoints / distance), font or \"arial\", \"center\", \"center\")
   end
end
end
end
 
function keszrendszam()
for k,v in ipairs(getElementsByType(\"vehicle\")) do
        local rendszam = getVehiclePlateText(v)
local visible = getElementData(getLocalPlayer(), \"rendszam\") or 0
if visible == 1 then
if rendszam then
dxDrawTextOnElement(v,rendszam,0.8,16,255,255,255,255,2,\"arial\")
end
end
end
end
addEventHandler(\"onClientRender\", getRootElement(), keszrendszam)
--[[addCommandHandler(\"teszt\", function()
setElementData(getLocalPlayer(), \"rendszam\", 1)
end)
addCommandHandler(\"teszt2\", function()
setElementData(getLocalPlayer(), \"rendszam\", 0)
end)]]--
function nulla()
setElementData(getLocalPlayer(), \"rendszam\", 0)
end
addEventHandler(\"onClientPlayerJoin\", getRootElement(), nulla)
addEventHandler(\"onClientPlayerQuit\", getRootElement(), nulla)
addEventHandler(\"onClientResourceStart\", getRootElement(), nulla)
addEventHandler(\"onClientResourceStop\", getRootElement(), nulla)
function ream()
local rendszam = getElementData(getLocalPlayer(), \"rendszam\") or 0
if rendszam == 0 then
setElementData(getLocalPlayer(), \"rendszam\", 1)
--outputChatBox(\"asd\")
elseif rendszam == 1 then
setElementData(getLocalPlayer(), \"rendszam\", 0)
--outputChatBox(\"kecske\")
end
end
bindKey(\"F10\", \"down\", ream)
function PlateText(commandName,text,also)
local Vehicle = getPedOccupiedVehicle(getLocalPlayer())
if Vehicle then
if text and not also then
   setVehiclePlateText( Vehicle, text )
elseif text and also then
   setVehiclePlateText( Vehicle, text .. \" \" .. also )
else
    outputChatBox(\"Kénes szöveg is nemigaz?\",localPlayer)
end
else
outputChatBox(\"Úgy látom nem vagy kocsiban\",localPlayer)
end
end
end
addCommandHandler(\"setrendszam\",PlateText)
« Utoljára szerkesztve: 2016. Augusztus 25. - 13:27:12 írta AceHardlightHUN »

Nem elérhető Senus

Setrendszam probléma
« Válasz #18 Dátum: 2016. Szeptember 17. - 19:56:58 »
0 Show voters
Client oldalba írtad nem de? :) Most lehet hülyeséget mondok de nekem ez serverbe müködik csak :(  :thumbsup:

Setrendszam probléma
« Válasz #19 Dátum: 2016. Szeptember 18. - 09:42:26 »
0 Show voters
Próbáltam mind 2 be.

Setrendszam probléma
« Válasz #20 Dátum: 2016. Szeptember 18. - 13:26:14 »
0 Show voters
A rendszám változtatást szerver oldalon illik megcsinálni, mert ha nem, akkor csak a lokális játékosnak változtatja meg.
 
function PlateText(thePlayer, commandName, text, also)
        local vehicle = getPedOccupiedVehicle(thePlayer)
        local adminlevel = getElementData(thePlayer, \'adminlevel\')
        if (adminlevel >= 9) then
        if vehicle then
                if text and not also then
                        setVehiclePlateText( vehicle, text )
                elseif text and also then
                        setVehiclePlateText( vehicle, text .. \" \" .. also )
                else
                    outputChatBox(\"Kéne szöveg is nemigaz?\", thePlayer)
                end
        else
                outputChatBox(\"Úgy látom nem vagy kocsiban\", thePlayer)
        end
        end
end
addCommandHandler(\"setrendszam\",PlateText)

 
Így már működnie kéne.

Setrendszam probléma
« Válasz #21 Dátum: 2016. Szeptember 19. - 16:49:16 »
0 Show voters
Idézetet írta: Changeme date=1474197974\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"62801\" data-ipsquote-contentclass=\"forums_Topic
A rendszám változtatást szerver oldalon illik megcsinálni, mert ha nem, akkor csak a lokális játékosnak változtatja meg.
 
function PlateText(thePlayer, commandName, text, also)
        local vehicle = getPedOccupiedVehicle(thePlayer)
        local adminlevel = getElementData(thePlayer, \'adminlevel\')
        if (adminlevel >= 9) then
        if vehicle then
                if text and not also then
                        setVehiclePlateText( vehicle, text )
                elseif text and also then
                        setVehiclePlateText( vehicle, text .. \" \" .. also )
                else
                    outputChatBox(\"Kéne szöveg is nemigaz?\", thePlayer)
                end
        else
                outputChatBox(\"Úgy látom nem vagy kocsiban\", thePlayer)
        end
        end
end
addCommandHandler(\"setrendszam\",PlateText)

 
Így már működnie kéne.
 
Megcsinálhatod te client oldalon is, csak szinkronizálni kell azt. Ezt megtudod tenni client oldalon is amúgy, ha pl írsz hozzá egy olyan function-t amely minden játékosnál lecserélni az adott járműre. Legalábbis elviekben ez egy működőképes megoldás lehet.  :thumbsup:

Nem elérhető Xenius

  • 668
    • Profil megtekintése
Setrendszam probléma
« Válasz #22 Dátum: 2016. Szeptember 24. - 11:37:32 »
+2 Show voters
Szerver oldal
 
addCommandHandler(\"setrendszam\", function(player, cmd, ...)
if not ... then
outputChatBox(\"/\"..cmd..\" [Rendszám]\", player)
else
local veh = getPedOccupiedVehicle(player)
if not veh then
   outputChatBox(\"Nem vagy járműben\", player)
else
   local plate = table.concat({...}, \" \")
   setVehiclePlateText(veh, plate)
   outputChatBox(\"Rendszám átírva: \"..plate, player)
end
end
end)

Setrendszam probléma
« Válasz #23 Dátum: 2016. Szeptember 28. - 18:48:52 »
0 Show voters
Sok dolgot csináltok de arra nem gondoltok hogy ha nem debuggol és nem ír errort mi a hiba :)? Az adminlevel if nem megy tovább. Alias egy nil értéket kap ami kisebb 9 nél.



-- Ha server oldalon fut akkor definiálj a cmd elé még egy thePlayer változót (thePlayer, cmd, dataName, value) és cseréld ki a localPlayert thePlayerre
function setData(cmd, dataName, value)
     if not dataName or not value then return end
     setElementData(localPlayer, dataName, value)
     -- A Value lehet string vagy boolean érték is.
     outputChatBox(tostring(dataName)..\" -> \"..tostring(value))
end
addCommandHandler(\"setData\", setData)
 
Ha megvolt a setData funkció létrehozása akkor a /setData-val állítsd be magadnak az adminlevelt 12 -re (/setData adminlevel 12)
Majd ezután próbáld a kommandot.
Különben tudom hogy az én régi scriptemet használod amit még doubleMTA-nak adtam el. Innen töltheted le azt:



-- Fos Script warning :) Első scriptjeim közül való :D
http://data.hu/get/10003443/joker_table.rar
 
Huzina Patrik voltam.
« Utoljára szerkesztve: 2016. Szeptember 28. - 18:52:19 írta JokerSajt »

Setrendszam probléma
« Válasz #24 Dátum: 2016. Szeptember 30. - 22:09:20 »
0 Show voters
Már azóta megoldottam! Köszi! A legfőbb probléma a parancs kivitelezése volt. Ugyanis sikerült működésre bírni csak server resi után régi rendszám volt.
Ergo egy mysql callbackel az adatbázist kellett átírni. Így egyszerűbb is.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal