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

Wysłany: 2017-11-29, 19:02


marcin778

Krytyk serwerów MTA






Wiek: 24
Na forum: 4290 dni
Posty: 2268
Nick w MP: Marcineg

Piwa: 4661

Respekt: 1436,8
Respekt: 1436,8

Zr?b sobie jak?? funkcj? eksportow?, w kt?rej dodajesz ka?d? notyfikacje do tablicy. Pozycje ustaw sta?e np w osobnej tablicy lub w zmiennych, i w renderze pokazuje notyfikacje z tablicy. Robisz warunek na max 3 notyfikacje (rekordy w tablicy) i tyle.

Podpis
Moje prace: https://www.youtube.com/c...MuaWGHPp1mhlGnw

-- obecnie
-- obecnie
-- dawniej
-- dawniej
-- dawniej
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-29, 19:59


Szydlo

Stance Works






Wiek: 26
Na forum: 3726 dni
Posty: 343
Nick w MP: Szydlo

Piwa: 4

Respekt: 105,3
Respekt: 105,3

Dobra aktualnie mam taki kod:

setTimer(function(player)
    sec = 1
end, 10000, 0, player)
function afk(button, press)
  if press then
    sec = 0
    outputChatBox(sec)
  end 
end
addEventHandler("onClientKey", root, afk)
function isafk()
  if sec == 1 then
    outputChatBox("AFK")
    outputChatBox(sec)
  elseif sec == 0 then
    outputChatBox("NOT AFK!") 
    outputChatBox(sec)
  end 
end
addEventHandler("onClientRender", root, isafk)


I ta funkcja jest nie najlepsza, bo to tylko dzia?a z klikaniem a nie, np z przytrzymaniem. Mo?e wyt?umacz? to tak: Biegam sobie, pokazuje ?e "NOTAFK" i po 10 sekundach pokazuje "AFK" dop?ki znowu nie klikn? "W" wi?c ta funkcja chyba nie jest najlepsza.

[ Dodano: 2017-11-29, 19:59 ]
Mo?e doczytam wiki.

[ Dodano: 2017-11-29, 19:59 ]
Mo?e doczytam wiki.

[ Dodano: 2017-11-29, 20:01 ]
Z tego co przeczyta?em nic wi?cej nie ma.

[ Dodano: 2017-11-29, 20:05 ]
Z onClientCursorMove tak samo.

Podpis
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-29, 21:20


marcin778

Krytyk serwerów MTA






Wiek: 24
Na forum: 4290 dni
Posty: 2268
Nick w MP: Marcineg

Piwa: 4661

Respekt: 1436,8
Respekt: 1436,8

Bo trzeba sobie odpowiednio warunki pouk?ada? :D

Podpis
Moje prace: https://www.youtube.com/c...MuaWGHPp1mhlGnw

-- obecnie
-- obecnie
-- dawniej
-- dawniej
-- dawniej
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-30, 17:13


Szydlo

Stance Works






Wiek: 26
Na forum: 3726 dni
Posty: 343
Nick w MP: Szydlo

Piwa: 4

Respekt: 105,3
Respekt: 105,3

Moim zdaniem problemem jest "addEventHandler("onClientKey", root, afk)" poniewa? dzia?a on tylko gdy co? klikniemy.

[ Dodano: 2017-11-30, 17:18 ]
Po za tym, jak mam u?o?y? warunki?

[ Dodano: 2017-11-30, 18:00 ]
Mam kolejny problem, mam sobie nametag i chcia?bym go pokaza? innym graczom ale sobie ukry?, a wi?c jak to zrobi??

[ Dodano: 2017-11-30, 18:15 ]
Dobra kolejny problem jest taki ?e nie wiem jak dodawa? stringi, zrobi?em o tak:

text = string.gsub(text, text2, button)

Tylko to nie dodaje kolejnych literek tylko zmienia pierwsz?. A string.gsub chyba dzia?a tak ?e zmienia a nie dodaje.

[ Dodano: 2017-11-30, 18:16 ]
Mo?e w internecie co? znajd?.

[ Dodano: 2017-11-30, 18:23 ]
I potrzebuje onClient ma w??czone te menu z mta sa

Podpis
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-30, 18:24


marcin778

Krytyk serwerów MTA






Wiek: 24
Na forum: 4290 dni
Posty: 2268
Nick w MP: Marcineg

Piwa: 4661

Respekt: 1436,8
Respekt: 1436,8

Szydlo, 1. Tak, ten event wykonuje si? gdy co? klikniemy, ale ma on argument wci?ni?cia, kt?ry mo?esz sprawdza?.
2. Przy nametagach w p?tli robisz warunek
if zmiennagracza == localPlayer then return end

3. Tak, string.gsub zamienia znaki, czy te? ich form?. Prawid?owym rozwi?zaniem jest string.sub.

Podpis
Moje prace: https://www.youtube.com/c...MuaWGHPp1mhlGnw

-- obecnie
-- obecnie
-- dawniej
-- dawniej
-- dawniej
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-30, 18:47


Szydlo

Stance Works






Wiek: 26
Na forum: 3726 dni
Posty: 343
Nick w MP: Szydlo

Piwa: 4

Respekt: 105,3
Respekt: 105,3

marcin778, Chodzi co o Release? Czy mo?e wystarczy ?e wpisze "or pressed"

[ Dodano: 2017-11-30, 19:03 ]
I to chyba nie jest string.sub

[ Dodano: 2017-11-30, 19:20 ]
Dobra te nametagi sam ca?kowicie zbugowane, nie wiem dlaczego ?e gdy jestem na kompie to wsz?dzie pokazuje m?j nick, a gdy jestem na laptopie to pokazuje ten nick z laptopa nad ka?dym. A gdy klikn? T to pokazuje klawiatur? nie nade mn? tylko na tej drugiej osobie Tutaj kod do nich:

local FMain = dxCreateFont( "files/font.ttf", 20)
local SMain = dxCreateFont( "files/font.ttf", 15)
local s_rang = "NULL"

addEventHandler( "onClientRender",root,   
   function(player)
      local players = getElementsByType ( "player" ) 
      local getRange = getElementData(source, "player:level")
      for key, player in ipairs ( players ) do       
        setPlayerNametagShowing ( player, false ) 
      end
      local px, py, pz, tx, ty, tz, dist
      px, py, pz = getCameraMatrix( )
      for _, v in ipairs( getElementsByType 'player' ) do
         tx, ty, tz = getElementPosition( v )
         dist = math.sqrt( ( px - tx ) ^ 2 + ( py - ty ) ^ 2 + ( pz - tz ) ^ 2 )
         if dist < 30.0 then
            if isLineOfSightClear( px, py, pz, tx, ty, tz, true, false, false, true, false, false, false,localPlayer ) then
               sx, sy, sz = getPedBonePosition( v, 6 )
               x,y = getScreenFromWorldPosition( sx, sy, sz)
               if x then 

                local getNick = getPlayerName(getLocalPlayer())
                dx_nick = dxDrawText( "[1]"..getNick, x, y-90, x,y, tocolor(255, 255, 255, 160), 0.85, FMain, "center" )

                  if getRange == 5 then
                    s_rang = "Admin"   
                    s_color = tocolor(255, 0, 0) 
                    s_pos = 36
                  elseif getRange == 2 then
                    s_rang = "Premium"
                    s_color = tocolor(249, 179, 0)
                    s_pos = 45
                  elseif getRange == 3 then
                    s_rang = "Support"
                    s_color = tocolor(249, 116, 0)
                    s_pos = 40
                  elseif getRange == 4 then
                    s_rang = "Moderator"
                    s_color = tocolor(0, 201, 13) 
                    s_pos = 55
                  elseif getRange == 1 then
                    s_rang = "" 
                    s_color = tocolor(0, 201, 13)
                    s_pos = 55
                  end
                dxDrawText(s_rang, x, y-65, x, y, s_color, 0.85, SMain, "center" )
               end
            end
         end
      end
   end
)
function imgs_key(player)
-- if zplayer == localPlayer then return end
  key_img = dxCreateTexture( "files/keybord.png" )
  dxDrawImage ( x-70, y-145, 64, 64, key_img,0,0,0,tocolor(255,255,255,160))
end
function imgs_afk(player)
  afk_img = dxCreateTexture( "files/afk.png" )
  dxDrawImage ( x, y-135, 68, 55, afk_img,0,0,0,tocolor(255,255,255,255))
end
function keyboard()
  if isChatBoxInputActive() then
   addEventHandler("onClientRender", root, imgs_key)
  else
    removeEventHandler("onClientRender", root, imgs_key)
  end 
end 
addEventHandler("onClientRender", root, keyboard)


local screenW, screenH = guiGetScreenSize()
function awayfk()
        dxDrawRectangle((screenW - 1920) / 2, (screenH - 1080) / 2, 1920, 1080, tocolor(0, 0, 0, 230), false)
        dxDrawRectangle(723, 431, 475, 122, tocolor(10, 9, 9, 255), false)
        dxDrawText("Away From Keyboard", screenW * 0.4083, screenH * 0.4056, screenW * 0.5917, screenH * 0.4444, tocolor(202, 202, 202, 230), 3.00, "arial", "left", "top", false, false, false, false, false)
        dxDrawRectangle(720, 538, 0, 0, tocolor(255, 255, 255, 255), false)
        dxDrawRectangle(screenW * 0.3766, screenH * 0.5028, screenW * 0.2474, screenH * 0.0139, tocolor(219, 0, 0, 255), false)
        dxDrawText("Jeste? akutalnie w trybie AFK czyli nie rusza?e? si? przez 5 sekund.\nAby wyj?? z trybu AFK porusz myszk? lub kliknij jaki kolwiek przycisk.", screenW * 0.3807, screenH * 0.4537, screenW * 0.6188, screenH * 0.4861, tocolor(202, 202, 202, 230), 1.20, "default", "left", "top", false, false, false, false, false)
end


timer = setTimer(function(player)
    sec = 1
end, 5000, 0, localPlayer)
function isafk()
  if sec == 1 then
   addEventHandler("onClientRender", root, imgs_afk)
   addEventHandler("onClientRender", root, awayfk)
  end  
end
addEventHandler("onClientRender", root, isafk)
function afk(button, press)
  if press then
    sec = 0
    resetTimer(timer)
    removeEventHandler("onClientRender", root, imgs_afk)
    removeEventHandler("onClientRender", root, awayfk)
  end 
end
addEventHandler("onClientKey", root, afk)
addEventHandler("onClientCursorMove", root, afk)
function miscafk()
   addEventHandler("onClientRender", root, imgs_afk)
   addEventHandler("onClientRender", root, awayfk)
end
addEventHandler("onClientMinimize", root, miscafk)

  text = ""

    function editbox()
        dxDrawRectangle(601, 336, 249, 50, tocolor(255, 255, 255, 255), false)
        dxDrawText(text.."|", 611, 346, 807, 369, tocolor(2, 2, 2, 255), 1.70, "default", "left", "top", false, false, false, false, false)
    end
    function getkeys(button, press)
       if (press) then -- Only output when they press it down
        outputChatBox(""..button.."")
        text2 = text
        text = string.sub(text, button)
      end
    end
    addEventHandler("onClientKey", root, getkeys)
    function showedit()
      addEventHandler("onClientRender", root, editbox)
    end
    addEventHandler("onClientRender", root, showedit)




Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-30, 19:51


marcin778

Krytyk serwerów MTA






Wiek: 24
Na forum: 4290 dni
Posty: 2268
Nick w MP: Marcineg

Piwa: 4661

Respekt: 1436,8
Respekt: 1436,8

1. Tak to ten argument.
2. string.sub, poczytaj sobie w google. https://stackoverflow.com/questions/5249629/modifying-a-character-in-a-string-in-lua
3. Kod jest katastrofalny, nie chce mi sie go przegl?da?.

Podpis
Moje prace: https://www.youtube.com/c...MuaWGHPp1mhlGnw

-- obecnie
-- obecnie
-- dawniej
-- dawniej
-- dawniej
Postaw piwo autorowi tego posta
 

 
Wysłany: 2017-11-30, 20:19


Szydlo

Stance Works






Wiek: 26
Na forum: 3726 dni
Posty: 343
Nick w MP: Szydlo

Piwa: 4

Respekt: 105,3
Respekt: 105,3

marcin778, Dlaczego jest "katastrofalny",? To go wtedy poprawi?.

[ Dodano: 2017-11-30, 20:20 ]
(Cz??? kodu jest skopiowane z wiki)

Podpis
Aktualny najlepszy kontakt do mnie: Szydlo#8134 (Discord)
Postaw piwo autorowi tego posta
 

 
Tagi: mysql :: afk :: coś :: jeszcze. :: onclientrender :: noti
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » LUA » MYSQL + AFK, i coś jeszcze. onClientRender + Noti 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