Hallo , wenn ich den Auftrag annehme und dann das Haus ausraube wird der Marker gelöscht und das Blip und dann spawnt es an einer anderen stelle und das möchte ich nicht. Wie kann ich machen das wenn ich in den marker gelaufen bin kein neuer marker und kein neues blip mehr erstellt werden? Hier ist Script:
Lua
--[[
Developer: Sebastian 'seb' Cronberg
Rights: All rights reserved by the developer (c) 2012
File: robber_client.lua
]]
local robberHouses =
{
{ 202.44506835938,-34.961380004883,1.2703125 };
{ 2013.9849853516,650.67877197266,11.0609375 };
{ -2657.7739257813,850.04949951172,63.4078125 };
{ -2523.8422851563,2238.9890136719,5.1784375 };
}
function unpackRobberHouses ()
return unpack ( robberHouses [ math.random ( #robberHouses ) ] )
end
function resourceBootUp ()
ourPed = createPed ( 1, 2055, -1760, 13 )
ourBlip = createBlipAttachedTo ( ourPed, 41 )
setBlipVisibleDistance ( ourBlip, 300 )
setElementFrozen ( ourPed, true )
setElementRotation ( ourPed, 0, 0, 0 )
setElementInterior ( ourPed, 0 )
setElementDimension ( ourPed, 0 )
end
addEventHandler ( "onClientResourceStart", resourceRoot, resourceBootUp )
local robberWindow = guiCreateWindow ( 0.314, 0.2513, 0.3809, 0.3893, "Robber Job", true )
local robberLabel = guiCreateLabel ( 0.0193, 0.0736, 0.9903, 0.1104, "Robber Job", true, robberWindow )
guiLabelSetColor ( robberLabel, 255, 0, 0 )
guiLabelSetHorizontalAlign ( robberLabel, "center", false )
guiSetFont ( robberLabel, "default-bold-small" )
local robberInfoLabel = guiCreateLabel ( 0.0309, 0.2441, 0.944, 0.3077, "If you accept this job, you are able to rob houses. \nDrive to the blip created on your minimap (an house icon) Once you enter the marker\nyou will get paid.\nAnd another house will be able to be robbed.", true, robberWindow )
local robberAcceptButton = guiCreateButton ( 0.3533 ,0.7993, 0.1409, 0.1204, "Accept", true, robberWindow )
local robberCloseButton = guiCreateButton ( 0.5309, 0.7993, 0.1409, 0.1204, "Close", true, robberWindow )
guiSetVisible ( robberWindow, false )
function detectClickOnPed ( button, state, absX, absY, wx, wy, wz, element )
if ( element and element == ourPed and not isPedInVehicle ( localPlayer ) ) then
local x, y, z = getElementPosition ( localPlayer )
if ( getDistanceBetweenPoints3D ( x, y, z, wx, wy, wz ) <= 3 ) then
guiSetVisible ( robberWindow, true )
end
end
end
addEventHandler ( "onClientClick", root, detectClickOnPed )
function buttonClick ( button )
if ( button ~= "left" ) then
return
end
if ( source == robberCloseButton ) then
guiSetVisible ( robberWindow, false )
showCursor ( false )
elseif ( source == robberAcceptButton ) then
destroyElement ( robhouseMarker )
destroyElement ( robhouseBlip )
triggerServerEvent ( "robberJobAccepted", localPlayer )
guiSetVisible ( robberWindow, false )
showCursor ( false )
triggerEvent ( "createHouseEvent", localPlayer )
outputChatBox ( "You are now employed as a Robber!" )
end
end
addEventHandler ( "onClientGUIClick", resourceRoot, buttonClick )
addEvent ( "createHouseEvent", true )
function createHouses ()
x, y, z = unpackRobberHouses ()
robhouseMarker = createMarker ( x, y, z, "cylinder", 3, 255, 51, 102, 70, localPlayer )
robhouseBlip = createBlipAttachedTo ( robhouseMarker, 32, localPlayer )
end
addEventHandler ( "createHouseEvent", root, createHouses )
addEventHandler ( "onClientMarkerHit", root,
function ( hitElement )
if ( source == robhouseMarker and not isPedInVehicle ( localPlayer ) and hitElement == localPlayer ) then
triggerServerEvent ( "givePlayerPay", localPlayer )
destroyElement(robhouseMarker)
destroyElement (robhouseBlip)
triggerEvent ( "createHouseEvent", localPlayer )
playSound ( "files/cash.mp3", false )
end
end
)
addEventHandler ( "onClientPedDamage", resourceRoot,
function ()
cancelEvent ()
end
)
Alles anzeigen