чекер

Lance_Sterling

Известный
Автор темы
801
281
Версия MoonLoader
.026-beta
кароче пытался спиздить чекер с исходника админ тулса арп
Lua:
function renderfriends()
    while true do
      wait(0)
      if friendSet['state'].v then
        x = friendSet['posX'].v
        mainY = friendSet['posY'].v 
        y = mainY
        colorheader = '0x'..bit.tohex(join_argb(255,inicolors.friendheader[1],inicolors.friendheader[2],inicolors.friendheader[3]))
        countfriends = 0
        instreamfriends = 0
        if #mainIni.friendslist > 0 then 
        for k,v in pairs(mainIni.friendslist) do
          if sampGetPlayerIdByNickname(v) ~= -1 then
            countfriends = countfriends + 1
             resultf, pedf = sampGetCharHandleBySampPlayerId(sampGetPlayerIdByNickname(v))
             mX, mY, mZ = getCharCoordinates(playerPed)
             if resultf then
              instreamfriends = instreamfriends + 1
             end
          end
        end
        if friendSet['instreamstate'].v then
          friendtext = ' |{19ff19} '.. instreamfriends
        else
          friendtext = ''
        end
        renderFontDrawTextAlign(fontfriendchecker,'Игроков онлайн{FFFFFF}[{19ff19}'..countfriends .. '{FFFFFF}'.. friendtext..'{FFFFFF}]',x,mainY,colorheader)
        for k,v in pairs(mainIni.friendslist) do
          
            if sampGetPlayerIdByNickname(v) ~= -1 then
                sresultf, pedf = sampGetCharHandleBySampPlayerId(sampGetPlayerIdByNickname(v))
                if sresultf then 
                local mX, mY, mZ = getCharCoordinates(playerPed)
                local X, Y, Z = getCharCoordinates(pedf)
                fuckingcoords = math.floor(getDistanceBetweenCoords3d(mX, mY, mZ, X, Y, Z))
      
                if friendSet['instreamstate'].v then
                textforrender = v .. '['..sampGetPlayerIdByNickname(v)..']{FFFFFF} - Расстояние: {'..bit.tohex(join_argb(255,inicolors.friendstream[1],inicolors.friendstream[2],inicolors.friendstream[3])) .. '}'.. fuckingcoords
                else
                  textforrender = v .. '['..sampGetPlayerIdByNickname(v)..']'
              end
              else
                  textforrender = v .. '['..sampGetPlayerIdByNickname(v)..']'--на этой строке ошибка
                end
                colorfriend = '0x'..bit.tohex(join_argb(255,inicolors.friendcolor[1],inicolors.friendcolor[2],inicolors.friendcolor[3]))
                y = y + friendSet['fOffs'].v
                renderFontDrawTextAlign(fontfriendchecker,textforrender,x,y,colorfriend)
      
              end
            end
          end
          
          end
        end
      
      end
в итоге там он работает, а у меня выдает ошибку на строке которую я отметил в коде
все переменные я перенес, все посмотрел, у меня просто уже бомбит от этого, даже точки перехотелось ставить
вот как это выглядит в исходнике
Lua:
function renderfriends()


  while true do
    wait(0)

    if friendSet['state'].v then


       x = friendSet['posX'].v
       mainY = friendSet['posY'].v 
       y = mainY
      colorheader = '0x'..bit.tohex(join_argb(255,inicolors.friendheader[1],inicolors.friendheader[2],inicolors.friendheader[3]))

      countfriends = 0
      instreamfriends = 0
      if #ini.friendslist > 0 then 
      for k,v in pairs(ini.friendslist) do
        if sampGetPlayerIdByNickname(v) ~= -1 then
          countfriends = countfriends + 1
          
           resultf, pedf = sampGetCharHandleBySampPlayerId(sampGetPlayerIdByNickname(v))
           mX, mY, mZ = getCharCoordinates(playerPed)

           if resultf then
            
            instreamfriends = instreamfriends + 1
            
           end
        end
      end
      if friendSet['instreamstate'].v then
        friendtext = ' |{19ff19} '.. instreamfriends
      else
        friendtext = ''
      end
 

      

      renderFontDrawTextAlign(fontfriendchecker,'Игроков онлайн{FFFFFF}[{19ff19}'..countfriends .. '{FFFFFF}'.. friendtext..'{FFFFFF}]',x,mainY,colorheader)

      for k,v in pairs(ini.friendslist) do
        
        if sampGetPlayerIdByNickname(v) ~= -1 then
          sresultf, pedf = sampGetCharHandleBySampPlayerId(sampGetPlayerIdByNickname(v))
          if sresultf then 
          local mX, mY, mZ = getCharCoordinates(playerPed)
          local X, Y, Z = getCharCoordinates(pedf)
          fuckingcoords = math.floor(getDistanceBetweenCoords3d(mX, mY, mZ, X, Y, Z))

          if friendSet['instreamstate'].v then
          textforrender = v .. '['..sampGetPlayerIdByNickname(v)..']{FFFFFF} - Расстояние: {'..bit.tohex(join_argb(255,inicolors.friendstream[1],inicolors.friendstream[2],inicolors.friendstream[3])) .. '}'.. fuckingcoords
          else
            textforrender = v .. '['..sampGetPlayerIdByNickname(v)..']'
        end
        else
            textforrender = v .. '['..sampGetPlayerIdByNickname(v)..']'
          end
          colorfriend = '0x'..bit.tohex(join_argb(255,inicolors.friendcolor[1],inicolors.friendcolor[2],inicolors.friendcolor[3]))
          y = y + friendSet['fOffs'].v
          renderFontDrawTextAlign(fontfriendchecker,textforrender,x,y,colorfriend)

        end
      end
    end
    
    end
  end

end

sa-mp-495.png
 
Последнее редактирование:
Решение
функцию sampGetPlayerIdByNickname() закинул в код?
конечно давно

функцию sampGetPlayerIdByNickname() закинул в код?
пофиксил. проблема была в нем)
вот так было в исходнике
Код:
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
    return -1
  end
а вот так в моем скрипте
Код:
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000...

Lance_Sterling

Известный
Автор темы
801
281
функцию sampGetPlayerIdByNickname() закинул в код?
конечно давно

функцию sampGetPlayerIdByNickname() закинул в код?
пофиксил. проблема была в нем)
вот так было в исходнике
Код:
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
    return -1
  end
а вот так в моем скрипте
Код:
function sampGetPlayerIdByNickname(nick)
    local _, myid = sampGetPlayerIdByCharHandle(playerPed)
    if tostring(nick) == sampGetPlayerNickname(myid) then return myid end
    for i = 0, 1000 do if sampIsPlayerConnected(i) and sampGetPlayerNickname(i) == tostring(nick) then return i end end
  end
то есть не хватало return -1, клятые суперкодеры