Jump to content

SetFreeze at a job


AlexWo

Recommended Posts

Hi guys I have a job and I want that if a player with the vehicle arrive at the marker he get frozed for 3 seconds.

I already tried to put a timer into the script but it doesn't work :(

Client file

---------------------------------------------------------------------------------------------------------------------------------- 
--Tug TABLE 
---------------------------------------------------------------------------------------------------------------------------------- 
local tugTable = { 
[1]={-1336, -513, 15}, 
[2]={-1411, -552, 15}, 
[3]={-1442, -122, 15}, 
[4]={-1263, 36, 15}, 
[5]={-1203, 28, 15}, 
[6]={-1239, -8, 15}, 
[7]={-1567, -431, 7}, 
[8]={-1428, -312, 6}, 
[9]={-1549, -453, 6}                   --<----- LA ULTIMA LINEA DE TABLA NO LLEVA COMA 
} 
---------------------------------------------------------------------------------------------------------------------------------- 
--GET TUG LOCATION 
---------------------------------------------------------------------------------------------------------------------------------- 
function getTugLocation(ID) 
if isElement (marker) then 
    destroyElement(marker) 
end 
if isElement (blip) then 
    destroyElement(blip) 
end 
local x, y, z = tugTable[iD][1], tugTable[iD][2], tugTable[iD][3] 
local marker = createMarker(x,y,z,"checkpoint",10,10,235,250,150) 
local blip = createBlipAttachedTo(marker,19,2,10,235,250,225) 
     
    function rewardPlayer (hitPlayer) 
        if hitPlayer == getLocalPlayer() and isPedInVehicle(hitPlayer) then 
           
          if getElementVelocity(getPedOccupiedVehicle(hitPlayer)) <= 2 then 
                outputChatBox ("You arrived succesfully!",hitPlayer,10,235,250) 
                if getElementModel(getPedOccupiedVehicle(hitPlayer)) == 583 then 
                    playSoundFrontEnd (11) 
                    triggerServerEvent("DriverGiveMoney",getLocalPlayer(),math.random(80,100)) 
                    if #tugTable == tonumber(getElementData(hitPlayer,"SAMR.jobs_civilian_train_driver")) then 
                        setElementData(hitPlayer,"SAMR.jobs_civilian_train_driver",1) 
                    else 
                        setElementData(hitPlayer,"SAMR.jobs_civilian_train_driver",tonumber(getElementData(hitPlayer,"SAMR.jobs_civilian_train_driver"))+1) 
                    end 
                    blipsAttached = getAttachedElements (source) 
                    for i,blips in ipairs (blipsAttached) do 
                        if getElementType (blips) == "blip" then 
                            destroyElement(blips) 
                        end 
                    end 
                    if isElement (source) then 
                        destroyElement(source) 
                    end  
                    getTugLocation(tonumber(getElementData(hitPlayer,"SAMR.jobs_civilian_train_driver"))) 
                end 
               else 
                    outputChatBox ("*You're going very fast!",hitPlayer,10,235,250) 
             end 
        end 
    end 
    addEventHandler("onClientMarkerHit",marker,rewardPlayer,hitPlayer) 
  
    addEventHandler("onClientVehicleExit",getRootElement(), 
    function (leaveElement) 
        if leaveElement == getLocalPlayer() then 
            if isElement (marker) then 
                destroyElement(marker) 
            end 
            if isElement (blip) then 
                destroyElement(blip) 
            end 
        end 
    end) 
end 
---------------------------------------------------------------------------------------------------------------------------------- 
--ON CLIENT VEHICLE ENTER 
---------------------------------------------------------------------------------------------------------------------------------- 
addEventHandler("onClientVehicleEnter",getRootElement(), 
function (thePlayer) 
    if getElementModel(source) == 583 and getElementModel(thePlayer) == 16 and thePlayer == getLocalPlayer() then  
           outputChatBox ("Now You Can Go To The Airport For Job",10,235,250) 
        getTugLocation(1) 
        setElementData(thePlayer,"SAMR.jobs_civilian_train_driver",1) 
    end 
end) 
----------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug GUI 
----------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTugGUI() 
tug_window_main = guiCreateWindow (0.3,0.2,0.4,0.5,"Tug Mission",true) 
memo1 = guiCreateMemo (0.15,0.2,0.7,0.5,"Welcome to the Cargo job, please take a Tug and go to the next Marker",true,tug_window_main) 
    tug_window_main_button_accept = guiCreateButton(0.52,0.85,0.45,0.1,"Acept",true,tug_window_main) 
    tug_window_main_button_decline = guiCreateButton(0,0.85,0.45,0.1,"Decline",true,tug_window_main) 
    showCursor (true) 
end 
addEvent ("tugCreateTugGUI",true) 
addEventHandler ("tugCreateTugGUI",getResourceRootElement(getThisResource()),tugCreateTugGUI) 
----------------------------------------------------------------------------------------------------------------------------- 
--DESTROY Tug GUI 
----------------------------------------------------------------------------------------------------------------------------- 
function tugDestroyTugGUI() 
    destroyElement(tug_window_main) tug_window_main = false 
    showCursor (false) 
end 
----------------------------------------------------------------------------------------------------------------------------- 
--ON tug WINDOW CLICK 
----------------------------------------------------------------------------------------------------------------------------- 
function tugOnTugWindowClick() 
   if source == tug_window_main_button_accept then 
        triggerServerEvent ("tugCreateTug",getLocalPlayer()) 
        tugDestroyTugGUI () 
   elseif source == tug_window_main_button_decline then 
        tugDestroyTugGUI () 
    end 
end 
addEventHandler("onClientGUIClick",getRootElement(),tugOnTugWindowClick) 
  

Server file:

----------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug STUFF 
----------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTugStuff() 
    tug_marker_request = createMarker(-1546,-441,6,"arrow",2, 225, 225, 0, 150 ) 
    blip2 = createBlip (-1546,-441,6,40) 
end 
addEventHandler ("onResourceStart",getResourceRootElement(getThisResource()),tugCreateTugStuff) 
----------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug 
----------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTug () 
    theTug = createVehicle (583,-1546,-441,6,40) 
    setElementModel(source, 16) 
    outputChatBox ("*The Tug is behind you.",source,10,235,250) 
end 
addEvent ("tugCreateTug",true) 
addEventHandler ("tugCreateTug",getRootElement(),tugCreateTug) 
---------------------------------------------------------------------------------------------------------------------------------- 
--GIVE MONEY 
---------------------------------------------------------------------------------------------------------------------------------- 
addEvent ("DriverGiveMoney",true) 
addEventHandler ("DriverGiveMoney",getRootElement(), 
function (theMoney) 
    givePlayerMoney(source,theMoney) 
end) 
---------------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug GUI 
---------------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTugGUI(hitElement) 
    if source == tug_marker_request then 
        triggerClientEvent (hitElement,"tugCreateTugGUI",getRootElement()) 
    end 
end 
addEventHandler ("onMarkerHit",getRootElement(),tugCreateTugGUI) 
  

I think there have to be a timer in the Client file...

Link to comment

Client:

---------------------------------------------------------------------------------------------------------------------------------- 
--Tug TABLE 
---------------------------------------------------------------------------------------------------------------------------------- 
local tugTable = { 
[1]={-1336, -513, 15}, 
[2]={-1411, -552, 15}, 
[3]={-1442, -122, 15}, 
[4]={-1263, 36, 15}, 
[5]={-1203, 28, 15}, 
[6]={-1239, -8, 15}, 
[7]={-1567, -431, 7}, 
[8]={-1428, -312, 6}, 
[9]={-1549, -453, 6}                   --<----- LA ULTIMA LINEA DE TABLA NO LLEVA COMA 
} 
---------------------------------------------------------------------------------------------------------------------------------- 
--GET TUG LOCATION 
---------------------------------------------------------------------------------------------------------------------------------- 
function getTugLocation(ID) 
if isElement (marker) then 
    destroyElement(marker) 
end 
if isElement (blip) then 
    destroyElement(blip) 
end 
local x, y, z = tugTable[ID][1], tugTable[ID][2], tugTable[ID][3] 
local marker = createMarker(x,y,z,"checkpoint",10,10,235,250,150) 
local blip = createBlipAttachedTo(marker,19,2,10,235,250,225) 
     
    function rewardPlayer (hitPlayer) 
        if hitPlayer == getLocalPlayer() and isPedInVehicle(hitPlayer) then 
           
          if getElementVelocity(getPedOccupiedVehicle(hitPlayer)) <= 2 then 
                
                if getElementModel(getPedOccupiedVehicle(hitPlayer)) == 583 then 
                    playSoundFrontEnd (11) 
                    triggerServerEvent("DriverGiveMoney",getLocalPlayer(),math.random(80,100)) 
                    if #tugTable == tonumber(getElementData(hitPlayer,"SAMR.jobs_civilian_train_driver")) then 
                        setElementData(hitPlayer,"SAMR.jobs_civilian_train_driver",1) 
                    else 
                        setElementData(hitPlayer,"SAMR.jobs_civilian_train_driver",tonumber(getElementData(hitPlayer,"SAMR.jobs_civilian_train_driver"))+1) 
                    end 
                    blipsAttached = getAttachedElements (source) 
                    for i,blips in ipairs (blipsAttached) do 
                        if getElementType (blips) == "blip" then 
                            destroyElement(blips) 
                        end 
                    end 
                    if isElement (source) then 
                        destroyElement(source) 
                    end  
                    getTugLocation(tonumber(getElementData(hitPlayer,"SAMR.jobs_civilian_train_driver"))) 
                end 
               else 
                    outputChatBox ("*You're going very fast!",hitPlayer,10,235,250) 
             end 
        end 
    end 
    addEventHandler("onClientMarkerHit",marker,rewardPlayer,hitPlayer) 
  
    addEventHandler("onClientVehicleExit",getRootElement(), 
    function (leaveElement) 
        if leaveElement == getLocalPlayer() then 
            if isElement (marker) then 
                destroyElement(marker) 
            end 
            if isElement (blip) then 
                destroyElement(blip) 
            end 
        end 
    end) 
end 
---------------------------------------------------------------------------------------------------------------------------------- 
--ON CLIENT VEHICLE ENTER 
---------------------------------------------------------------------------------------------------------------------------------- 
addEventHandler("onClientVehicleEnter",getRootElement(), 
function (thePlayer) 
    if getElementModel(source) == 583 and getElementModel(thePlayer) == 16 and thePlayer == getLocalPlayer() then  
           outputChatBox ("Now You Can Go To The Airport For Job",10,235,250) 
        getTugLocation(1) 
        setElementData(thePlayer,"SAMR.jobs_civilian_train_driver",1) 
    end 
end) 
----------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug GUI 
----------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTugGUI() 
tug_window_main = guiCreateWindow (0.3,0.2,0.4,0.5,"Tug Mission",true) 
memo1 = guiCreateMemo (0.15,0.2,0.7,0.5,"Welcome to the Cargo job, please take a Tug and go to the next Marker",true,tug_window_main) 
    tug_window_main_button_accept = guiCreateButton(0.52,0.85,0.45,0.1,"Acept",true,tug_window_main) 
    tug_window_main_button_decline = guiCreateButton(0,0.85,0.45,0.1,"Decline",true,tug_window_main) 
    showCursor (true) 
end 
addEvent ("tugCreateTugGUI",true) 
addEventHandler ("tugCreateTugGUI",getResourceRootElement(getThisResource()),tugCreateTugGUI) 
----------------------------------------------------------------------------------------------------------------------------- 
--DESTROY Tug GUI 
----------------------------------------------------------------------------------------------------------------------------- 
function tugDestroyTugGUI() 
    destroyElement(tug_window_main) tug_window_main = false 
    showCursor (false) 
end 
----------------------------------------------------------------------------------------------------------------------------- 
--ON tug WINDOW CLICK 
----------------------------------------------------------------------------------------------------------------------------- 
function tugOnTugWindowClick() 
   if source == tug_window_main_button_accept then 
        triggerServerEvent ("tugCreateTug",getLocalPlayer()) 
        tugDestroyTugGUI () 
   elseif source == tug_window_main_button_decline then 
        tugDestroyTugGUI () 
    end 
end 
addEventHandler("onClientGUIClick",getRootElement(),tugOnTugWindowClick) 
  

Server

----------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug STUFF 
----------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTugStuff() 
    tug_marker_request = createMarker(-1546,-441,6,"arrow",2, 225, 225, 0, 150 ) 
    blip2 = createBlip (-1546,-441,6,40) 
end 
addEventHandler ("onResourceStart",getResourceRootElement(getThisResource()),tugCreateTugStuff) 
----------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug 
----------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTug () 
    theTug = createVehicle (583,-1545,-430,6,40) 
    setElementModel(source, 16) 
    outputChatBox ("*The Tug is behind you.",source,10,235,250) 
end 
addEvent ("tugCreateTug",true) 
addEventHandler ("tugCreateTug",getRootElement(),tugCreateTug) 
---------------------------------------------------------------------------------------------------------------------------------- 
--GIVE MONEY 
---------------------------------------------------------------------------------------------------------------------------------- 
addEvent ("DriverGiveMoney",true) 
addEventHandler ("DriverGiveMoney",getRootElement(), 
function (theMoney) 
    givePlayerMoney(source,theMoney) 
end) 
---------------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug GUI 
---------------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTugGUI(hitElement) 
    if source == tug_marker_request then 
        triggerClientEvent (hitElement,"tugCreateTugGUI",getRootElement()) 
    end 
end 
addEventHandler ("onMarkerHit",getRootElement(),tugCreateTugGUI) 
  

Link to comment

Server-side:

---------------------------------------------------------------------------------------------------------------------------------- 
--CREATE Tug GUI 
---------------------------------------------------------------------------------------------------------------------------------- 
function tugCreateTugGUI(hitElement) 
    if source == tug_marker_request then 
        setElementFrozen(hitElement,true) 
    setTimer (  
    function(hitElement) 
    setElementFrozen(hitElement,false) 
    end, 3000, 1 ) 
        triggerClientEvent (hitElement,"tugCreateTugGUI",getRootElement()) 
    end 
end 
addEventHandler ("onMarkerHit",getRootElement(),tugCreateTugGUI) 

EDITED***

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...