commit
2d65e91e51
@ -0,0 +1,45 @@ |
||||
script_name("hallowen-door-cracker") |
||||
script_author("Serhiy_Rubin") |
||||
script_version("31.10.2023") |
||||
|
||||
function main() |
||||
if not isSampLoaded() or not isSampfuncsLoaded() then return end |
||||
while not isSampAvailable() do wait(0) end |
||||
bot = false |
||||
sampRegisterChatCommand("hdoor", function() |
||||
bot = not bot |
||||
printStringNow("~Y~Hallowen Door Cracker~N~"..(bot and "~G~ON" or "~R~OFF"), 1000) |
||||
end) |
||||
while true do |
||||
wait(0) |
||||
if bot then |
||||
for a = 0, 2304 do |
||||
if sampTextdrawIsExists(a) then |
||||
local x, y = sampTextdrawGetPos(a) |
||||
local text = sampTextdrawGetString(a) |
||||
if getDistanceBetweenCoords2d(399.0, 270.0, x, y) < 0.3 then |
||||
if text:find("PRESS %~r%~%~k%~%~(.+)%~ %~w%~TO HACK THE DOOR") then |
||||
local key = text:match("PRESS %~r%~%~k%~%~(.+)%~ %~w%~TO HACK THE DOOR") |
||||
local keys = { |
||||
["CONVERSATION_YES"] = 64, |
||||
["CONVERSATION_NO"] = 128, |
||||
["GROUP_CONTROL_BWD"] = 192, |
||||
} |
||||
if keys[key] ~= nil then |
||||
if af_send == nil or ((os.clock() * 1000 - af_send > 100) or old_key ~= keys[key]) then |
||||
af_send = os.clock() * 1000 |
||||
old_key = keys[key] |
||||
local data = allocateMemory(68) |
||||
sampStorePlayerOnfootData(select(2, sampGetPlayerIdByCharHandle(PLAYER_PED)), data) |
||||
setStructElement(data, 36, 1, keys[key], false) |
||||
sampSendOnfootData(data) |
||||
freeMemory(data) |
||||
end |
||||
end |
||||
end |
||||
end |
||||
end |
||||
end |
||||
end |
||||
end |
||||
end |
Loading…
Reference in new issue