Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2020-10-14, 23:41


NoNamik







Wiek: 35
Na forum: 2327 dni
Posty: 288
Nick w MP: JestemNoNamem

Piwa: 379

Respekt: 60

Witam otoz mam skrypt licznika z WestRPG lecz jak go odpalam to nie pojawia sie totalnie prosilbym o pomoc stawiam :piwo:

--[[
Skrypt zosta? wykonany przez:
   -Asper (nezymr69@gmail.com),
   -Hardu? (rafox123.1990@o2.pl).

Na potrzeby serwera:
   -WestRPG (2018).

Jedyne i wy??czone prawo do u?ywania kodu ma serwer WestRPG oraz autor skryptu. (Asper, Hardu?)
]]

local dxLibary = exports.dxLibary

local speedometer = {}

local sw,sh = guiGetScreenSize()
local baseX = 1920
local scale = 1
local minScale = 2
if sw < baseX then
    scale = math.min(minScale, baseX/sw)
end

local addScale = false
local tick = getTickCount()

function isEventHandlerAdded(eventName, rootName, fnc)
    if type(eventName) == 'string' and isElement(rootName) and type(fnc) == 'function' then
      local eventHandlers = getEventHandlers(eventName, rootName)
      if type(eventHandlers) == 'table' and #eventHandlers > 0 then
        for i,v in ipairs(eventHandlers) do
          if v == fnc then
            return true
          end
        end
      end
    end
    return false
  end

function speedometer:ReplaceTextures()
    self['txd_speedometer'] = dxLibary:createTexture(':licznik/images/licznik.png', 'dxt5', false, 'clamp')
    self['txd_center'] = dxLibary:createTexture(':licznik/images/srodek.png', 'dxt5', false, 'clamp')
    self['txd_arrow'] = dxLibary:createTexture(':licznik/images/strzalka.png', 'dxt5', false, 'clamp')
    self['txd_progress'] = dxLibary:createTexture(':licznik/images/progress.png', 'dxt5', false, 'clamp')
    self['txd_gas-bottle'] = dxLibary:createTexture(':licznik/images/gas_bottle.png', 'dxt5', false, 'clamp')
    self['txd_pasek'] = dxLibary:createTexture(':licznik/images/pasek.png', 'dxt5', false, 'clamp')

    self['font_1'] = dxCreateFont('fonts/Digital-7.ttf', 13/scale)
    self['font_2'] = dxCreateFont('fonts/Digital-7.ttf', 30/scale)

    self['render_fnc'] = function() self:Render() end
    self['pre_render-fnc'] = function() self:PreRender() end

    self['pos'] = {}
    self['pos_tick'] = getTickCount()
end

function speedometer:Render()
    if (not self['vehicle'] or self['vehicle'] and not isElement(self['vehicle'])) then
        self:Showed(false)
        return
    end

    if getElementData(self['vehicle'], 'vehicle:handbrake') and not getControlState('handbrake') then
        setControlState('handbrake', true)
    end

    local speed = self:GetVehicleSpeed() > 285 and math.random(285,286) or self:GetVehicleSpeed()
    local speed_ = self:GetVehicleSpeed_()
    local distance = getElementData(self['vehicle'], 'vehicle:distance') or 0
    local fuel = getElementData(self['vehicle'], 'vehicle:fuel') or 25
    local gas = getElementData(self['vehicle'], 'vehicle:gas') or 25
    local type = getElementData(self['vehicle'], 'vehicle:type') or 'Benzyna'
    local bak = getElementData(self['vehicle'], 'vehicle:bak') or 25
    local rot = getVehicleRPM(self['vehicle']) / 25
    local actualType = getElementData(self['vehicle'], 'vehicle:actualType') or 'Benzyna'
    local engine = getElementData(self['vehicle'], 'vehicle:engine') or 1.2
    local enginePower = getElementData(self['vehicle'], 'vehicle:enginePower') or 100

    if fuel > bak then
        fuel = bak
    elseif gas > bak then
        gas = bak
    end

    if speed_ > 25 and getVehicleType(self['vehicle']) == 'Bike' then
        local lvl = (speed_-25) > 255 and 255 or (speed_-25)
        setBlurLevel(lvl)
    else
        setBlurLevel(0)
    end

    local _type = (actualType == 'Benzyna' and 'PB-95' or actualType == 'Diesel' and 'ON' or actualType == 'LPG' and 'PB-95')
    local _iftype = (type == 'LPG' and true or false)

    if not getElementData(localPlayer, 'pokaz:hud') or not get() then return end

    --dxDrawText(engine..' dm&#179; - '..enginePower..' KM', sw-(700/scale) + 1, sh-(125/scale) + 1, 35/scale + sw-(110/scale) + 1, 230/scale + sh-(150/scale) + 1, tocolor(0, 0, 0, 255), 1, self['font_1'], 'center', 'center', false, false, false, false, false)
    --dxDrawText(engine..' dm&#179; - '..enginePower..' KM', sw-(700/scale), sh-(125/scale), 35/scale + sw-(110/scale), 230/scale + sh-(150/scale), tocolor(255, 255, 255, 255), 1, self['font_1'], 'center', 'center', false, false, false, false, false)

    if(getElementModel(self.vehicle) == 453)then return end

    if getVehicleType(self['vehicle']) == 'Bike' then
        if addScale then
            scale = scale - 0.1
            addScale = false
        end

        dxDrawText(string.format('%01d', speed_)..'km/h', 1656/scale + 1, 1025/scale + 1, 1910/scale + 1, 1045/scale + 1, tocolor(0, 0, 0, 255), 1, self['font_2'], 'right', 'bottom', false, false, false, false, false)
        dxDrawText('#0072ff'..string.format('%01d', speed_)..'#939393km/h', 1656/scale, 1025/scale, 1910/scale, 1045/scale, tocolor(255, 255, 255, 255), 1, self['font_2'], 'right', 'bottom', false, false, false, true, false)

        dxDrawText(string.format('%.1f', distance)..'km', 1685/scale + 1, 1041/scale + 1, 1910/scale + 1, 1035/scale + 1, tocolor(0, 0, 0, 255), 1, self['font_1'], 'right', 'top', false, false, false, true, false)
        dxDrawText('#0072ff'..string.format('%.1f', distance)..'#939393km', 1685/scale, 1041/scale, 1910/scale, 1035/scale, tocolor(255, 255, 255, 255), 1, self['font_1'], 'right', 'top', false, false, false, true, false)

        dxDrawText(string.format('%.1f', fuel)..' / '..bak..'L', 1685/scale + 1, 975/scale + 1, 1910/scale + 1, 1072/scale + 1, tocolor(0, 0, 0, 255), 1, self['font_1'], 'right', 'top', false, false, false, true, false)
        dxDrawText('#0072ff'..string.format('%.1f', fuel)..'#939393 / #0072ff'..bak..'#939393L', 1685/scale, 975/scale, 1910/scale, 1072/scale, tocolor(255, 255, 255, 255), 1, self['font_1'], 'right', 'top', false, false, false, true, false)
    else
        if not addScale then
            scale = scale + 0.1
            addScale = true
        end

        fuel = fuel < 0 and 0 or fuel

        dxDrawImage(sw-(350/scale), sh-(343/scale), 330/scale, 330/scale, self['txd_speedometer'], 0, 0, 0, tocolor(255, 255, 255, 255), false)
        dxDrawImage(sw-(338/scale), sh-(333/scale), 305/scale, 305/scale, self['txd_center'], rot, 0, 0, tocolor(255, 255, 255, 255), false)
        dxDrawImage(sw-(338/scale), sh-(333/scale), 305/scale, 305/scale, self['txd_arrow'], speed / 1.1, 0, 0, tocolor(255, 255, 255, 255), false)

        dxDrawImage(sw-(110/scale), sh-(100/scale), 135/scale, 25/scale, self['txd_progress'], 90, 0, 0, tocolor(255, 255, 255, 255), false)
        dxDrawImage(sw-(50/scale), sh-(25/scale), 15/scale, (-125/scale) * (fuel/bak), self['txd_pasek'], 0, 0, 0, tocolor(255, 255, 255, 255), false)

        dxDrawText(_type, sw-(110/scale) + 1, sh-(180/scale) + 1, 135/scale + sw-(110/scale) + 1, 25/scale + sh-(100/scale) + 1, tocolor(0, 0, 0, 255), 1, self['font_1'], 'center', 'top', false)
        dxDrawText(_type, sw-(110/scale), sh-(180/scale), 135/scale + sw-(110/scale), 25/scale + sh-(100/scale), tocolor(255, 255, 255, 255), 1, self['font_1'], 'center', 'top', false)

        if _iftype then
            local r,g,b = 0,255,0
            local myBak = (gas / bak) * 100
            if myBak == bak then
                r,g,b = 0,255,0
            elseif myBak < 5 then
                r,g,b = 255,0,0
            elseif myBak > 5 and myBak < 25 then
                r,g,b = 200,0,0
            elseif myBak > 25 and myBak < 50 then
                r,g,b = 255,255,0
            elseif myBak > 50 and myBak < 75 then
                r,g,b = 50,255,0
            elseif myBak > 75 and myBak < 100 then
                r,g,b = 25,255,25
            end

            dxDrawRectangle(sw-(48/scale), sh-(300/scale), 35/scale, - (gas / bak) * 25/scale, tocolor(r, g, b, 100), false)

            if gas < 5 then
                dxDrawImage(sw-(64/scale) + 1, sh-(350/scale) + 1, 64/scale + 1, 64/scale + 1, self['txd_gas-bottle'], 0, 0, 0, tocolor(0, 0, 0, 225), false)

                local a = interpolateBetween(75, 0, 0, 225, 0, 0, (getTickCount() - tick)/3000, 'SineCurve')
                dxDrawImage(sw-(64/scale), sh-(350/scale), 64/scale, 64/scale, self['txd_gas-bottle'], 0, 0, 0, tocolor(255, 0, 0, a), false)
            else
                dxDrawImage(sw-(64/scale) + 1, sh-(350/scale) + 1, 64/scale + 1, 64/scale + 1, self['txd_gas-bottle'], 0, 0, 0, tocolor(0, 0, 0, 225), false)
                dxDrawImage(sw-(64/scale), sh-(350/scale), 64/scale, 64/scale, self['txd_gas-bottle'], 0, 0, 0, tocolor(255, 255, 255, 225), false)
            end
        end

        dxDrawText(string.format('%03d', speed_), sw-(110/scale) + 1, sh-(180/scale) + 1, 35/scale + sw-(110/scale) + 1, 230/scale + sh-(150/scale) + 1, tocolor(0, 0, 0, 255), 1, self['font_2'], 'right', 'center', false, false, false, false, false)
        dxDrawText(string.format('%03d', speed_), sw-(110/scale), sh-(180/scale), 35/scale + sw-(110/scale), 230/scale + sh-(150/scale), tocolor(255, 255, 255, 255), 1, self['font_2'], 'right', 'center', false, false, false, false, false)

        dxDrawText(string.format('%.1f', distance)..'km', sw-(110/scale) + 1, sh-(250/scale) + 1, 35/scale + sw-(110/scale) + 1, 230/scale + sh-(150/scale) + 1, tocolor(0, 0, 0, 255), 1, self['font_1'], 'right', 'center', false, false, false, false, false)
        dxDrawText(string.format('%.1f', distance)..'km', sw-(110/scale), sh-(250/scale), 35/scale + sw-(110/scale), 230/scale + sh-(150/scale), tocolor(255, 255, 255, 255), 1, self['font_1'], 'right', 'center', false, false, false, true, false)
    end
end

function get()
    local settings = getElementData(localPlayer, 'settings') or {}
    local showed = #settings < 1 and true or false
    for i,v in ipairs(settings) do
        if v['name'] == 'Poka? HUD' and v['state'] == 1 then
            showed = true
            break
        end
    end
    return showed
end

function speedometer:GetVehicleSpeed()
    local vx, vy, vz = getElementVelocity(self['vehicle'])
    return math.sqrt(vx^2+vy^2+vz^2)*200
end

function speedometer:GetVehicleSpeed_()
    local vx, vy, vz = getElementVelocity(self['vehicle'])
    return math.sqrt(vx^2+vy^2+vz^2)*190
end

function speedometer:PreRender()
    if (not self['vehicle'] or self['vehicle'] and not isElement(self['vehicle'])) then return end

    local distance = getElementData(self['vehicle'], 'vehicle:distance') or 0
    local fuel = getElementData(self['vehicle'], 'vehicle:fuel') or 25
    local gas = getElementData(self['vehicle'], 'vehicle:gas') or 25
    local actualType = getElementData(self['vehicle'], 'vehicle:actualType') or 'Benzyna'

    if ((actualType == 'Benzyna' or actualType == 'Diesel') and fuel <= 0) or (actualType == 'LPG' and gas <= 0) and getVehicleEngineState(self['vehicle']) == true then
        setVehicleEngineState(self['vehicle'], false)
    end

    if #self['pos'] < 3 then
        self['pos'] = {getElementPosition(self['vehicle'])}
        self['pos_tick'] = getTickCount()
    else
        local x,y,z = getElementPosition(self['vehicle'])
        local dist = getDistanceBetweenPoints3D(self['pos'][1], self['pos'][2], self['pos'][3], x, y, z)
        if dist > 10 then
            setElementData(self['vehicle'], 'vehicle:distance', distance + 0.01)

            if actualType == 'Benzyna' or actualType == 'Diesel' then
                setElementData(self['vehicle'], 'vehicle:fuel', fuel - 0.01)
            elseif actualType == 'LPG' then
                setElementData(self['vehicle'], 'vehicle:gas', gas - 0.01)
            end

            self['pos'] = {getElementPosition(self['vehicle'])}
            self['pos_tick'] = getTickCount()
        end
    end
end

function speedometer:Showed(bool, vehicle)
    if bool == true then
        if vehicle then
            self['vehicle'] = vehicle
        end

        if not isEventHandlerAdded('onClientRender', root, self['render_fnc']) and not isEventHandlerAdded('onClientPreRender', root, self['pre_render-fnc']) then
            if getVehicleName(self.vehicle) == 'Bike' or getVehicleName(self.vehicle) == 'BMX' or getVehicleName(self.vehicle) == 'Mountain Bike' then return end

            addEventHandler('onClientRender', root, self['render_fnc'])
            addEventHandler('onClientPreRender', root, self['pre_render-fnc'])
        end
    else
        removeEventHandler('onClientRender', root, self['render_fnc'])
        removeEventHandler('onClientPreRender', root, self['pre_render-fnc'])

        self['vehicle'] = false
    end
end

addEventHandler('onClientVehicleEnter', root, function(player)
    if player ~= localPlayer then return end
    speedometer:Showed(true, source)
end)

addEventHandler('onClientVehicleExit', root, function(player)
    if player ~= localPlayer then return end
    speedometer:Showed(false)
end)

addEventHandler('onClientResourceStart', resourceRoot, function()
    speedometer:ReplaceTextures()
    if getPedOccupiedVehicle(localPlayer) then
        speedometer:Showed(true, getPedOccupiedVehicle(localPlayer))
    end
end)

function getVehicleRPM(vehicle)
    local vehicleRPM = 0
    if (vehicle) then
        if (getVehicleEngineState(vehicle) == true) then
            if getVehicleCurrentGear(vehicle) > 0 then
                vehicleRPM = math.floor(((speedometer:GetVehicleSpeed()/getVehicleCurrentGear(vehicle))*180) + 0.5)
                if (vehicleRPM < 650) then
                    vehicleRPM = math.random(650, 750)
                elseif (vehicleRPM >= 9600) then
                    vehicleRPM = math.random(9600, 9900)
                end
            else
                vehicleRPM = math.floor((speedometer:GetVehicleSpeed()*180) + 0.5)
                if (vehicleRPM < 650) then
                    vehicleRPM = math.random(650, 750)
                elseif (vehicleRPM >= 9600) then
                    vehicleRPM = math.random(9600, 9900)
                end
             end
        else
            vehicleRPM = 0
        end
        return tonumber(vehicleRPM)
    else
        return 0
    end
end



Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-14, 23:53


PatryKK.

Emeryt LUA






Wiek: 27
Na forum: 3202 dni
Posty: 1059
Nick w MP: PatryKK.

Piwa: 2331

Respekt: 331,5
Respekt: 331,5Respekt: 331,5Respekt: 331,5

B??dy db3?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-15, 00:55


NoNamik







Wiek: 35
Na forum: 2327 dni
Posty: 288
Nick w MP: JestemNoNamem

Piwa: 379

Respekt: 60

Brak

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-16, 11:14


kamilryb1

LUA






Wiek: 21
Na forum: 4407 dni
Posty: 146

Piwa: 321

Respekt: 7,3

Ostrzeżeń: 40%
poka? plik meta.xml, mo?e nie masz dopisanych tag?w <meta></meta>

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-16, 21:44


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

Skrypt odpali?? Po komendzie /refresh jest ze pomyslnie go zaladowano?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-17, 14:49


NoNamik







Wiek: 35
Na forum: 2327 dni
Posty: 288
Nick w MP: JestemNoNamem

Piwa: 379

Respekt: 60

Shuffle, tak

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-17, 18:06


vAnimo

Zielony w luła






Wiek: 20
Na forum: 2453 dni
Posty: 165
Nick w MP: vAnimo

Piwa: 883

Respekt: 70

Nie zmieni?o ci kodowania z UTF8 na ansi? moze dales w meta.xml zamiast file src= na grafiki script src=

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-18, 12:31


NoNamik







Wiek: 35
Na forum: 2327 dni
Posty: 288
Nick w MP: JestemNoNamem

Piwa: 379

Respekt: 60

Kod:


<meta>
<script src="c.lua" type="client" cache="false"/>

<file src="images/licznik.png"/>
<file src="images/strzalka.png"/>
<file src="images/srodek.png"/>
<file src="images/progress.png"/>
<file src="images/pasek.png"/>
<file src="images/gas_bottle.png"/>

<file src="fonts/Digital-7.ttf"/>
</meta>


Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-19, 11:10


MeeShuffle

Programista/Grafik






Wiek: 33
Na forum: 4536 dni
Posty: 2758
Nick w MP: Shuffle

Piwa: 8578

Respekt: 535,3
Respekt: 535,3

po kazdym warunki if dodaj outputChatBox("1") outputChatBox("2") itd. sprawdz w db3 gdzie kod sie zatrzyma i bedziemy mieli przyblizona sytuacj? gdzie jest blad.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2020-10-30, 13:23


NoNamik







Wiek: 35
Na forum: 2327 dni
Posty: 288
Nick w MP: JestemNoNamem

Piwa: 379

Respekt: 60

zamykam

Postaw piwo autorowi tego posta
 

 
Tagi: nie :: dziala :: licznik
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » Nie dziala licznik Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku