Skip to content

Commit 3e3300c

Browse files
committed
Update v2.5.1
1 parent abaf243 commit 3e3300c

File tree

5 files changed

+91
-61
lines changed

5 files changed

+91
-61
lines changed

client/functions/player.lua

+46-18
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,5 @@
11
local Player = {}
22

3-
Player.clientId = PlayerId()
4-
Player.serverId = GetPlayerServerId(Player.clientId)
5-
Player.playerId = Player.serverId
6-
7-
MSK.Player = Player
8-
93
function Player:set(key, value)
104
if self[key] ~= value then
115
TriggerEvent('msk_core:onPlayer', key, value, self[key])
@@ -15,32 +9,66 @@ function Player:set(key, value)
159
end
1610
end
1711

12+
function Player:remove(key)
13+
if self[key] then
14+
TriggerEvent('msk_core:onPlayerRemove', key, self[key])
15+
self[key] = nil
16+
17+
return true
18+
end
19+
end
20+
21+
Player:set('clientId', PlayerId())
22+
Player:set('serverId', GetPlayerServerId(Player.clientId))
23+
Player:set('playerId', Player.serverId)
24+
Player:set('source', Player.serverId)
25+
26+
local Notify = function(title, message, typ, duration)
27+
MSK.Notification(title, message, typ, duration)
28+
end
29+
Player:set('Notify', Notify)
30+
31+
local GetPlayerDeath = function()
32+
local isDead = IsPlayerDead(Player.clientId) or IsEntityDead(Player.playerPed) or IsPedFatallyInjured(Player.playerPed)
33+
34+
if GetResourceState("visn_are") == "started" then
35+
local healthBuffer = exports.visn_are:GetHealthBuffer()
36+
isDead = healthBuffer.unconscious
37+
end
38+
39+
if GetResourceState("osp_ambulance") == "started" then
40+
local data = exports.osp_ambulance:GetAmbulanceData(Player.serverId)
41+
isDead = data.isDead or data.inLastStand
42+
end
43+
44+
return isDead
45+
end
46+
1847
CreateThread(function()
1948
while true do
20-
Player:set('clientId', PlayerId())
21-
Player:set('serverId', GetPlayerServerId(Player.clientId))
22-
Player:set('playerId', Player.serverId)
23-
24-
local playerPed = PlayerPedId()
25-
Player:set('playerPed', playerPed)
49+
Player:set('ped', PlayerPedId())
50+
Player:set('playerPed', Player.ped)
2651

27-
local vehicle = GetVehiclePedIsIn(playerPed, false)
52+
local vehicle = GetVehiclePedIsIn(Player.ped, false)
2853

2954
if vehicle > 0 and DoesEntityExist(vehicle) then
3055
Player:set('vehicle', vehicle)
3156

32-
if not Player.seat or GetPedInVehicleSeat(vehicle, Player.seat) ~= playerPed then
33-
Player:set('seat', MSK.GetPedVehicleSeat(playerPed, vehicle))
34-
TriggerEvent('msk_core:onSeatChange', Player.vehicle, Player.seat)
57+
if not Player.seat or GetPedInVehicleSeat(vehicle, Player.seat) ~= Player.ped then
58+
Player:set('seat', MSK.GetPedVehicleSeat(Player.ped, vehicle))
3559
end
3660
else
3761
Player:set('vehicle', false)
3862
Player:set('seat', false)
3963
end
4064

41-
local hasWeapon, currentWeapon = GetCurrentPedWeapon(playerPed, true)
65+
local hasWeapon, currentWeapon = GetCurrentPedWeapon(Player.ped, true)
4266
Player:set('weapon', hasWeapon and currentWeapon or false)
4367

68+
Player:set('isDead', GetPlayerDeath())
69+
4470
Wait(100)
4571
end
46-
end)
72+
end)
73+
74+
MSK.Player = Player

client/main.lua

+10-7
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,18 @@ MSK.Bridge.Framework.Events = {
1111

1212
if Config.Framework == 'AUTO' then
1313
if GetResourceState('es_extended') ~= 'missing' then
14-
ESX = exports["es_extended"]:getSharedObject()
15-
MSK.Bridge.Framework.Type = 'ESX'
16-
MSK.Bridge.Framework.Core = ESX
14+
Config.Framework = 'ESX'
1715
elseif GetResourceState('qb-core') ~= 'missing' then
18-
QBCore = exports['qb-core']:GetCoreObject()
19-
MSK.Bridge.Framework.Type = 'QBCore'
20-
MSK.Bridge.Framework.Core = QBCore
16+
Config.Framework = 'QBCore'
17+
else
18+
Config.Framework = 'STANDALONE'
19+
MSK.Bridge.Framework.Type = 'STANDALONE'
2120
end
22-
elseif Config.Framework == 'ESX' then
21+
22+
print(('[^2%s^0] [^4Info^0] Framework ^3%s^0 found'):format(GetCurrentResourceName(), Config.Framework))
23+
end
24+
25+
if Config.Framework == 'ESX' then
2326
ESX = exports["es_extended"]:getSharedObject()
2427
MSK.Bridge.Framework.Type = 'ESX'
2528
MSK.Bridge.Framework.Core = ESX

fxmanifest.lua

+3-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ games { 'gta5' }
44
author 'Musiker15 - MSK Scripts'
55
name 'msk_core'
66
description 'Functions for MSK Scripts'
7-
version '2.5.0'
7+
version '2.5.1'
88

99
lua54 'yes'
1010

@@ -37,5 +37,7 @@ files {
3737
}
3838

3939
dependencies {
40+
'/server:7290',
41+
'/onesync',
4042
'oxmysql'
4143
}

import.lua

+22-27
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ if GetResourceState(msk_core) ~= 'started' then
1818
error('^1msk_core must be started before this resource.^0', 0)
1919
end
2020

21+
local context = IsDuplicityVersion() and 'server' or 'client'
22+
2123
----------------------------------------------------------------
2224
-- Export for MSK Library
2325
----------------------------------------------------------------
@@ -50,35 +52,28 @@ setmetatable(MSK.Progress, {
5052
----------------------------------------------------------------
5153
-- MSK.Player
5254
----------------------------------------------------------------
53-
if not IsDuplicityVersion() then
54-
MSK.Player = {}
55-
56-
MSK.Player.clientId = PlayerId()
57-
MSK.Player.serverId = GetPlayerServerId(MSK.Player.clientId)
58-
MSK.Player.playerId = MSK.Player.serverId
59-
60-
CreateThread(function()
61-
local playerPed = PlayerPedId()
62-
MSK.Player.playerPed = playerPed
63-
64-
local vehicle = GetVehiclePedIsIn(playerPed, false)
65-
66-
if vehicle > 0 and DoesEntityExist(vehicle) then
67-
MSK.Player.vehicle = vehicle
68-
69-
if not MSK.Player.seat or GetPedInVehicleSeat(vehicle, MSK.Player.seat) ~= playerPed then
70-
MSK.Player.seat = MSK.GetPedVehicleSeat(playerPed, vehicle)
71-
end
72-
else
73-
MSK.Player.vehicle = false
74-
MSK.Player.seat = false
75-
end
76-
77-
local hasWeapon, currentWeapon = GetCurrentPedWeapon(playerPed, true)
78-
MSK.Player.weapon = hasWeapon and currentWeapon or false
79-
end)
55+
if context == 'client' then
56+
local Player = {
57+
clientId = MSK.Player.clientId,
58+
serverId = MSK.Player.serverId,
59+
playerId = MSK.Player.playerId,
60+
source = MSK.Player.source,
61+
ped = MSK.Player.ped,
62+
playerPed = MSK.Player.ped,
63+
vehicle = MSK.Player.vehicle,
64+
seat = MSK.Player.seat,
65+
weapon = MSK.Player.weapon,
66+
isDead = MSK.Player.isDead,
67+
Notify = MSK.Player.Notify,
68+
}
69+
70+
MSK.Player = Player
8071

8172
AddEventHandler('msk_core:onPlayer', function(key, value, oldValue)
8273
MSK.Player[key] = value
8374
end)
75+
76+
AddEventHandler('msk_core:onPlayerRemove', function(key, value)
77+
MSK.Player[key] = nil
78+
end)
8479
end

server/main.lua

+10-8
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,18 @@ MSK.Bridge.Framework.Events = {
1010

1111
if Config.Framework == 'AUTO' then
1212
if GetResourceState('es_extended') ~= 'missing' then
13-
ESX = exports["es_extended"]:getSharedObject()
14-
MSK.Bridge.Framework.Type = 'ESX'
15-
MSK.Bridge.Framework.Core = ESX
13+
Config.Framework = 'ESX'
1614
elseif GetResourceState('qb-core') ~= 'missing' then
17-
QBCore = exports['qb-core']:GetCoreObject()
18-
MSK.Bridge.Framework.Type = 'QBCore'
19-
MSK.Bridge.Framework.Core = QBCore
15+
Config.Framework = 'QBCore'
16+
else
17+
Config.Framework = 'STANDALONE'
18+
MSK.Bridge.Framework.Type = 'STANDALONE'
2019
end
21-
print(('[^2%s^0] [^4Info^0] Framework ^3%s^0 found'):format(GetCurrentResourceName(), MSK.Bridge.Framework.Type))
22-
elseif Config.Framework == 'ESX' then
20+
21+
print(('[^2%s^0] [^4Info^0] Framework ^3%s^0 found'):format(GetCurrentResourceName(), Config.Framework))
22+
end
23+
24+
if Config.Framework == 'ESX' then
2325
ESX = exports["es_extended"]:getSharedObject()
2426
MSK.Bridge.Framework.Type = 'ESX'
2527
MSK.Bridge.Framework.Core = ESX

0 commit comments

Comments
 (0)