slot0 = false
slot1 = -1
function main()
repeat
wait(0)
until isSampAvailable()
wait(2000)
sampRegisterChatCommand("ebash", dgg)
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Загружен!", -1)
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Автор: {DAA520}КРИПТОН {FFFFFF}Модификатор: {DAA520}THEORBITAYT", -1)
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Активация: {DAA520}/ebash (id)", -1)
while true do
wait(0)
if uv0 then
slot0, slot1 = sampGetCharHandleBySampPlayerId(uv1)
if not slot0 then
uv0 = false
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Игрок умер, кикнут либо вышел!", -1)
elseif isCharOnFoot(PLAYER_PED) then
uv0 = false
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Ты вышел из авто, Сядь в авто, если не пиздюк!", -1)
else
slot3, slot4 = sampGetVehicleIdByCarHandle(getCarCharIsUsing(PLAYER_PED))
if slot3 then
slot5, slot6, slot7 = getCharCoordinates(PLAYER_PED)
slot8, slot9, slot10 = getCharCoordinates(slot1)
if slot10 - slot7 < 5 then
slot11 = samp_create_sync_data("vehicle")
slot3, slot11.vehicleId = sampGetVehicleIdByCarHandle(slot2)
slot11.vehicleHealth = getCarHealth(slot2)
slot11.playerHealth = getCharHealth(PLAYER_PED)
slot11.armor = getCharArmour(PLAYER_PED)
slot11.position.x, slot11.position.y, slot11.position.z = getCharCoordinates(slot1)
slot11.position.z = slot11.position.z - 1
slot11.send()
wait(0)
slot12 = samp_create_sync_data("vehicle")
slot3, slot12.vehicleId = sampGetVehicleIdByCarHandle(slot2)
slot12.vehicleHealth = getCarHealth(slot2)
slot12.playerHealth = getCharHealth(PLAYER_PED)
slot12.armor = getCharArmour(PLAYER_PED)
slot12.position.x, slot12.position.y, slot12.position.z = getCharCoordinates(PLAYER_PED)
slot12.position.z = slot12.position.y - 15
slot12.send()
wait(0)
end
end
end
end
end
end
function dgg(slot0)
if uv0 then
uv0 = false
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Ты больше не кикаешь игрока!", -1)
elseif isCharOnFoot(PLAYER_PED) then
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Сядь в авто, если не пиздюк!", -1)
elseif not slot0:match("%d+") then
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Используйте: {DAA520}/ebash [PlayerID]", -1)
else
slot1, slot2 = sampGetCharHandleBySampPlayerId(slot0)
if not slot1 then
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Игрока нет в зоне стрима!", -1)
else
uv1 = tonumber(slot0)
uv0 = true
sampAddChatMessage("{DAA520}[Kicker Radmir]: {FFFFFF}Кикаем игрока {DAA520}" .. sampGetPlayerNickname(uv1) .. "[" .. uv1 .. "]", -1)
end
end
end
function samp_create_sync_data(slot0, slot1)
slot2 = require("ffi")
slot3 = require("sampfuncs")
slot4 = require("samp.raknet")
require("samp.synchronization")
slot5 = {}
slot6 = {
"PlayerSyncData",
slot4.PACKET.PLAYER_SYNC,
sampStorePlayerOnfootData
}
slot5.player = slot6
slot6 = {
"VehicleSyncData",
slot4.PACKET.VEHICLE_SYNC,
sampStorePlayerIncarData
}
slot5.vehicle = slot6
slot6 = {
"PassengerSyncData",
slot4.PACKET.PASSENGER_SYNC,
sampStorePlayerPassengerData
}
slot5.passenger = slot6
slot6 = {
"AimSyncData",
slot4.PACKET.AIM_SYNC,
sampStorePlayerAimData
}
slot5.aim = slot6
slot6 = {
"TrailerSyncData",
slot4.PACKET.TRAILER_SYNC,
sampStorePlayerTrailerData
}
slot5.trailer = slot6
slot6 = {
"UnoccupiedSyncData",
slot4.PACKET.UNOCCUPIED_SYNC
}
slot5.unoccupied = slot6
slot6 = {
"BulletSyncData",
slot4.PACKET.BULLET_SYNC
}
slot5.bullet = slot6
slot6 = {
"SpectatorSyncData",
slot4.PACKET.SPECTATOR_SYNC
}
slot5.spectator = slot6
slot7 = "struct " .. slot5[slot0][1]
slot9 = tonumber(slot2.cast("uintptr_t", slot2.new(slot7 .. "*", slot2.new(slot7, {}))))
if (slot1 or true) and slot6[3] then
slot11, slot12 = nil
if slot1 == true then
slot11, slot12 = sampGetPlayerIdByCharHandle(PLAYER_PED)
else
slot12 = tonumber(slot1)
end
slot10(slot12, slot9)
end
slot11 = {
__index = function (slot0, slot1)
return uv0[slot1]
end,
__newindex = function (slot0, slot1, slot2)
uv0[slot1] = slot2
end
}
slot13 = {
send = function ()
slot0 = raknetNewBitStream()
raknetBitStreamWriteInt8(slot0, uv0[2])
raknetBitStreamWriteBuffer(slot0, uv1, uv2.sizeof(uv3))
raknetSendBitStreamEx(slot0, uv4.HIGH_PRIORITY, uv4.UNRELIABLE_SEQUENCED, 1)
raknetDeleteBitStream(slot0)
end
}
return setmetatable(slot13, slot11)
end