как узнать версию сампа

Cloud.

Активный
Автор темы
352
52
как на луа узнать версию сампа? р1 либо р3
 

kyrtion

Известный
1,064
381
moonly: src/core/tool/version.lua:
local ffi = require('ffi')
local gameHandle = getModuleHandle('samp.dll')

function getSampVersion()
  if gameHandle == 0 then
    alert('Запуск невозможен! Не удалось определить версию SA:MP')
    print('{FF0000}Не удалось определить версию SA:MP')
    thisScript():unload()
  else
    local cast = ffi.cast('long*', gameHandle + 60)[0]
    local isR1 = ffi.cast('unsigned int*', gameHandle + cast + 40)[0] ~= 836816
    if isR1 then return 'R1' end
  end
  return 'R3'
end

-- test
local version = getSampVersion()
print(version) -- R1 or R3, or unload script or maybe nil
 

whyega52

Гений, миллионер, плейбой, долбаеб
Модератор
2,807
2,680