This commit is contained in:
Nordi98 2025-08-09 11:32:17 +02:00
parent 1ee6dbef40
commit 1032235744
356 changed files with 1 additions and 25585 deletions

View file

@ -1,164 +0,0 @@
local phoneProp = 0
local propCreated = false
local currentStatus = 'out'
local lastDict = nil
local lastAnim = nil
local lastProp = nil

local ANIMS = {
['cellphone@'] = {
['out'] = {
['text'] = 'cellphone_call_to_text',
['call'] = 'cellphone_call_listen_base'
},
['text'] = {
['out'] = 'cellphone_text_out',
['text'] = 'cellphone_text_in',
['call'] = 'cellphone_text_to_call'
},
['call'] = {
['out'] = 'cellphone_call_out',
['text'] = 'cellphone_call_to_text',
['call'] = 'cellphone_text_to_call'
}
},
['anim@cellphone@in_car@ps'] = {
['out'] = {
['text'] = 'cellphone_text_in',
['call'] = 'cellphone_call_in'
},
['text'] = {
['out'] = 'cellphone_text_out',
['text'] = 'cellphone_text_in',
['call'] = 'cellphone_text_to_call'
},
['call'] = {
['out'] = 'cellphone_horizontal_exit',
['text'] = 'cellphone_call_to_text',
['call'] = 'cellphone_text_to_call'
}
}
}

function newPhoneProp(prop)

local phoneModel = selectPhoneProp(prop)

deletePhone()

if not propCreated then
RequestModel(phoneModel)
while not HasModelLoaded(phoneModel) do
Wait(1)
end
local playerPed = PlayerPedId()
phoneProp = CreateObject(phoneModel, 1.0, 1.0, 1.0, 1, 1, 0)
local bone = GetPedBoneIndex(playerPed, 28422)
AttachEntityToEntity(phoneProp, playerPed, bone, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1, 1, 0, 0, 2, 1)
propCreated = true
end
end

function deletePhone()
if phoneProp ~= 0 then
DeleteEntity(phoneProp)
phoneProp = 0
propCreated = false
end
end

--[[
out || text || Call ||
--]]
function PhonePlayAnim(status, freeze, force, prop)
if currentStatus == status and force ~= true then
return
end

local myPedId = PlayerPedId()

GiveWeaponToPed(myPedId, 0xA2719263, 0, 0, 1)

local freeze = freeze or false

local dict = "cellphone@"
if IsPedInAnyVehicle(myPedId, false) then
dict = "anim@cellphone@in_car@ps"
end
loadAnimDict(dict)

local anim = ANIMS[dict][currentStatus][status]
if currentStatus ~= 'out' then
StopAnimTask(myPedId, lastDict, lastAnim, 1.0)
end
local flag = 50
if freeze == true then
flag = 14
end
TaskPlayAnim(myPedId, dict, anim, 3.0, -1, -1, flag, 0, false, false, false)

if status ~= 'out' and currentStatus == 'out' then
Wait(380)
newPhoneProp(prop)
end

lastDict = dict
lastAnim = anim
currentStatus = status

if status == 'out' then
Wait(180)
deletePhone()
StopAnimTask(myPedId, lastDict, lastAnim, 1.0)
end
end

function PhonePlayOut()
PhonePlayAnim('out')
end

function PhonePlayText(prop)
PhonePlayAnim('text', false, false, prop)
end

function PhonePlayCall(freeze)
PhonePlayAnim('call', freeze, false, "phone")
end

function PhonePlayIn(prop)
if currentStatus == 'out' then
PhonePlayText(prop)
end
end

function loadAnimDict(dict)
RequestAnimDict(dict)
while not HasAnimDictLoaded(dict) do
Wait(1)
end
end

function getAnimationStatus()
return currentStatus
end

function selectPhoneProp(propname)
local phoneModel = "prop_phone_ing_03"
if Config.UsePhoneProps then
local phoneModels = {
["phone"] = "phonesilver",
["purple_phone"] = "phonepurple",
["green_phone"] = "phonegreen",
["blue_phone"] = "phonelightblue",
["red_phone"] = "phonered",
['black_phone'] = "phoneblack"
}
phoneModel = phoneModels[propname] or phoneModels[lastProp] or phoneModel
end
return phoneModel
end