sckatchof Posted December 11, 2011 Share Posted December 11, 2011 Hello all , Why this code does not work for the entry of the Bank ? bankMarker = createMarker ( 1654.1, -1654.76, 21.51, "cylinder", 2, 255, 255, 255, 255 ) outBankMarker = createMarker ( 389.82, 173.71, 1008.38, "cylinder", 2, 255, 255, 255, 255 ) function goIntoBank(hitElement, matchingDimension) if getElementType( hitElement ) == "player" and not getPedOccupiedVehicle( player ) then setPedFrozen( hitElement, true ) setElementDimension ( hitElement, 1 ) setElementInterior ( hitElement, 3, 386.59, 173.84, 1008.38 ) setPedFrozen( hitElement, false ) end end addEventHandler( "onMarkerHit", bankMarker, goIntoBank ) function goOutOfBank(hitElement, matchingDimension) if getElementType( hitElement ) == "player" and not getPedOccupiedVehicle( player ) then setPedFrozen( hitElement, true ) setElementDimension ( hitElement, 0 ) setElementInterior ( hitElement, 0, 1654.496, -1661.855, 22.51 ) setPedFrozen( hitElement, false ) end end addEventHandler( "onMarkerHit", outBankMarker, goOutOfBank ) function setDim() if ( getElementDimension ( outBankMarker ) == 0 ) then setElementDimension (outBankMarker , 1 ) end end addEventHandler( "onResourceStart", getResourceRootElement(getThisResource()), setDim ) Link to comment
Evil-Cod3r Posted December 11, 2011 Share Posted December 11, 2011 /debugscript 3 what is show ? Link to comment
sckatchof Posted December 11, 2011 Author Share Posted December 11, 2011 (edited) /debugscript 3 what is show ? i want to get the player into the bank ! Edited December 11, 2011 by Guest Link to comment
bandi94 Posted December 11, 2011 Share Posted December 11, 2011 1. you got error on line 34 at dxText ! the script what you post have only 29 line ..... post the full code or the right debug error Link to comment
sckatchof Posted December 11, 2011 Author Share Posted December 11, 2011 1. you got error on line 34 at dxText ! the script what you post have only 29 line ..... post the full code or the right debug error local localPlayer = getLocalPlayer() local driver = false local shooting = false local helpText,helpAnimation lastSlot = 0 settings = {} --This function simply sets up the driveby upon vehicle entry local function setupDriveby( player, seat --If his seat is 0, store the fact that he's a driver if seat == 0 then driver = true else driver = false end --By default, we set the player's equiped weapon to nothing. setPedWeaponSlot( localPlayer, 0 ) if settings.autoEquip then toggleDriveby() end end addEventHandler( "onClientPlayerVehicleEnter", localPlayer, setupDriveby ) --Tell the server the clientside script was downloaded and started addEventHandler("onClientResourceStart",getResourceRootElement(getThisResource()), function() bindKey ( "mouse2", "down", "Toggle Driveby", "" ) bindKey ( "e", "down", "Next driveby weapon", "1" ) bindKey ( "q", "down", "Previous driveby weapon", "-1" ) toggleControl ( "vehicle_next_weapon",false ) toggleControl ( "vehicle_previous_weapon",false ) triggerServerEvent ( "driveby_clientScriptLoaded", localPlayer ) helpText = dxText:create("",0.5,0.85) helpText:scale(1) helpText:type("stroke",1) end ) addEventHandler("onClientResourceStop",getResourceRootElement(getThisResource()), function() toggleControl ( "vehicle_next_weapon",true ) toggleControl ( "vehicle_previous_weapon",true ) end ) --Get the settings details from the server, and act appropriately according to them addEvent ( "doSendDriveBySettings", true ) addEventHandler("doSendDriveBySettings",localPlayer, function(newSettings) settings = newSettings --We change the blocked vehicles into an indexed table that's easier to check local newTable = {} for key,vehicleID in ipairs(settings.blockedVehicles) do newTable[vehicleID] = true end settings.blockedVehicles = newTable end ) --This function handles the driveby toggling key. function toggleDriveby() --If he's not in a vehicle dont bother if not isPedInVehicle( localPlayer ) then return end --If its a blocked vehicle dont allow it local vehicleID = getElementModel ( getPedOccupiedVehicle ( localPlayer ) ) if settings.blockedVehicles[vehicleID] then return end --Has he got a weapon equiped? local equipedWeapon = getPedWeaponSlot( localPlayer ) if equipedWeapon == 0 then --Decide whether he is a driver or passenger if ( driver ) then weaponsTable = settings.driver else weaponsTable = settings.passenger end --We need to get the switchTo weapon by finding any valid IDs local switchTo local switchToWeapon local lastSlotAmmo = getPedTotalAmmo ( localPlayer, lastSlot ) if not lastSlotAmmo or lastSlotAmmo == 0 or getSlotFromWeapon(getPedWeapon (localPlayer,lastSlot)) == 0 then for key,weaponID in ipairs(weaponsTable) do local slot = getSlotFromWeapon ( weaponID ) local weapon = getPedWeapon ( localPlayer, slot ) if weapon == 1 then weapon = 0 end --If its a brass knuckle, set it to a fist to avoid confusion --if the weapon the player has is valid if weapon == weaponID then --If the ammo isn't 0 if getPedTotalAmmo ( localPlayer, slot ) ~= 0 then --If no switchTo slot was defined, or the slot was 4 (SMG slot takes priority) if not switchTo or slot == 4 then switchTo = slot switchToWeapon = weaponID end end end end else switchTo = lastSlot switchToWeapon = getPedWeapon ( localPlayer, lastSlot ) end --If a valid weapon was not found, dont set anything. if not switchTo then return end setPedDoingGangDriveby ( localPlayer, true ) setPedWeaponSlot( localPlayer, switchTo ) --Setup our driveby limiter limitDrivebySpeed ( switchToWeapon ) --Disable look left/right keys, they seem to become accelerate/decelerate (carried over from PS2 version) toggleControl ( "vehicle_look_left",false ) toggleControl ( "vehicle_look_right",false ) toggleControl ( "vehicle_secondary_fire",false ) toggleTurningKeys(vehicleID,false) addEventHandler ( "onClientPlayerVehicleExit",localPlayer,removeKeyToggles ) local prevw,nextw = next(getBoundKeys ( "Previous driveby weapon" )),next(getBoundKeys ( "Next driveby weapon" )) if prevw and nextw then if animation then Animation:remove() end helpText:text( "Press '"..prevw.."' or '"..nextw.."' to change weapon" ) fadeInHelp() setTimer ( fadeOutHelp, 10000, 1 ) end else --If so, unequip it setPedDoingGangDriveby ( localPlayer, false ) setPedWeaponSlot( localPlayer, 0 ) limitDrivebySpeed ( switchToWeapon ) toggleControl ( "vehicle_look_left",true ) toggleControl ( "vehicle_look_right",true ) toggleControl ( "vehicle_secondary_fire",true ) toggleTurningKeys(vehicleID,true) fadeOutHelp() removeEventHandler ( "onClientPlayerVehicleExit",localPlayer,removeKeyToggles ) end end addCommandHandler ( "Toggle Driveby", toggleDriveby ) function removeKeyToggles(vehicle) toggleControl ( "vehicle_look_left",true ) toggleControl ( "vehicle_look_right",true ) toggleControl ( "vehicle_secondary_fire",true ) toggleTurningKeys(getElementModel(vehicle),true) fadeOutHelp() removeEventHandler ( "onClientPlayerVehicleExit",localPlayer,removeKeyToggles ) end --This function handles the driveby switch weapon key function switchDrivebyWeapon(key,progress) progress = tonumber(progress) if not progress then return end --If the fire button is being pressed dont switch if shooting then return end --If he's not in a vehicle dont bother if not isPedInVehicle( localPlayer ) then return end --If he's not in driveby mode dont bother either local currentWeapon = getPedWeapon( localPlayer ) if currentWeapon == 1 then currentWeapon = 0 end --If its a brass knuckle, set it to a fist to avoid confusion local currentSlot = getPedWeaponSlot(localPlayer) if currentSlot == 0 then return end if ( driver ) then weaponsTable = settings.driver else weaponsTable = settings.passenger end --Compile a list of the player's weapons local switchTo for key,weaponID in ipairs(weaponsTable) do if weaponID == currentWeapon then local i = key + progress --We keep looping the table until we go back to our original key while i ~= key do nextWeapon = weaponsTable[i] if nextWeapon then local slot = getSlotFromWeapon ( nextWeapon ) local weapon = getPedWeapon ( localPlayer, slot ) if ( weapon == nextWeapon ) then switchToWeapon = weapon switchTo = slot break end end --Go back to the beginning if there is no valid weapons left in the table if not weaponsTable[i+progress] then if progress < 0 then i = #weaponsTable else i = 1 end else i = i + progress end end break end end --If a valid weapon was not found, dont set anything. if not switchTo then return end lastSlot = switchTo setPedWeaponSlot( localPlayer, switchTo ) limitDrivebySpeed ( switchToWeapon ) end addCommandHandler ( "Next driveby weapon", switchDrivebyWeapon ) addCommandHandler ( "Previous driveby weapon", switchDrivebyWeapon ) --Here lies the stuff that limits shooting speed (so slow weapons dont shoot ridiculously fast) local limiterTimer function limitDrivebySpeed ( weaponID ) local speed = settings.shotdelay[tostring(weaponID)] if not speed then if not isControlEnabled ( "vehicle_fire" ) then toggleControl ( "vehicle_fire", true ) end removeEventHandler("onClientPlayerVehicleExit",localPlayer,unbindFire) removeEventHandler("onClientPlayerWasted",localPlayer,unbindFire) unbindKey ( "vehicle_fire", "both", limitedKeyPress ) else if isControlEnabled ( "vehicle_fire" ) then toggleControl ( "vehicle_fire", false ) addEventHandler("onClientPlayerVehicleExit",localPlayer,unbindFire) addEventHandler("onClientPlayerWasted",localPlayer,unbindFire) bindKey ( "vehicle_fire","both",limitedKeyPress,speed) end end end function unbindFire() unbindKey ( "vehicle_fire", "both", limitedKeyPress ) if not isControlEnabled ( "vehicle_fire" ) then toggleControl ( "vehicle_fire", true ) end removeEventHandler("onClientPlayerVehicleExit",localPlayer,unbindFire) removeEventHandler("onClientPlayerWasted",localPlayer,unbindFire) end local block function limitedKeyPress (key,keyState,speed) if keyState == "down" then if block == true then return end shooting = true pressKey ( "vehicle_fire" ) block = true setTimer ( function() block = false end, speed, 1 ) limiterTimer = setTimer ( pressKey,speed, 0, "vehicle_fire" ) else shooting = false for k,timer in ipairs(getTimers()) do if timer == limiterTimer then killTimer ( limiterTimer ) end end end end function pressKey ( controlName ) setControlState ( controlName, true ) setTimer ( setControlState, 150, 1, controlName, false ) end Link to comment
Xeno Posted December 11, 2011 Share Posted December 11, 2011 Your error is on the 34th line of the client side, show us that line/function. Link to comment
sckatchof Posted December 11, 2011 Author Share Posted December 11, 2011 Your error is on the 34th line of the client side, show us that line/function. function() bindKey ( "mouse2", "down", "Toggle Driveby", "" ) bindKey ( "e", "down", "Next driveby weapon", "1" ) bindKey ( "q", "down", "Previous driveby weapon", "-1" ) toggleControl ( "vehicle_next_weapon",false ) toggleControl ( "vehicle_previous_weapon",false ) triggerServerEvent ( "driveby_clientScriptLoaded", localPlayer ) helpText = dxText:create("",0.5,0.85) helpText:scale(1) helpText:type("stroke",1) end ) addEventHandler("onClientResourceStop",getResourceRootElement(getThisResource()), Link to comment
Castillo Posted December 11, 2011 Share Posted December 11, 2011 You're all doing it wrong, what has driveby to do with his script?? because you see the image with a error you think it's the same resource...? function createMarkers() bankMarker = createMarker ( 1654.1, -1654.76, 21.51, "cylinder", 2, 255, 255, 255, 255 ) outBankMarker = createMarker ( 389.82, 173.71, 1008.38, "cylinder", 2, 255, 255, 255, 255 ) setElementDimension (outBankMarker, 1 ) addEventHandler( "onMarkerHit", bankMarker, goIntoBank ) addEventHandler( "onMarkerHit", outBankMarker, goOutOfBank ) end addEventHandler( "onResourceStart", resourceRoot, createMarkers ) function goIntoBank(hitElement, matchingDimension) if (matchingDimension and getElementType( hitElement ) == "player" and not isPedInVehicle(hitElement) ) then setPedFrozen( hitElement, true ) setElementDimension ( hitElement, 1 ) setElementInterior ( hitElement, 3, 386.59, 173.84, 1008.38 ) setPedFrozen( hitElement, false ) end end function goOutOfBank(hitElement, matchingDimension) if (matchingDimension and getElementType( hitElement ) == "player" and not isPedInVehicle(hitElement) ) then setPedFrozen( hitElement, true ) setElementDimension ( hitElement, 0 ) setElementInterior ( hitElement, 0, 1654.496, -1661.855, 22.51 ) setPedFrozen( hitElement, false ) end end Link to comment
sckatchof Posted December 12, 2011 Author Share Posted December 12, 2011 You're all doing it wrong, what has driveby to do with his script?? because you see the image with a error you think it's the same resource...? No , but i want just Team criminal can Enters to the Marker local Marcklbara = createMarker( 1457.3000488281, -1010.799987793, 27.89999961853, 'arrow', 2, 0, 255, 0, 150 ) local Marcklde5el = createMarker( -1894.73, 653.08, -64.42, 'cylinder', 1.5, 255, 0, 0, 150 ) function Entrer( hitPlayer, matchingDimension ) if hasObjectPermissionTo( hitPlayer, 'general.adminpanel', false ) then setElementPosition ( hitPlayer, -1901.87, 653.26, -63.42 ) else outputChatBox ( "You cannot enter. You need to be a criminal.",hitPlayer ) end end addEventHandler( "onMarkerHit", Marcklbara, Entrer ) function Sortie( hitPlayer, matchingDimension ) setElementPosition ( hitPlayer, 1462.2607421875, -1012.4664306641, 26.84375 ) end addEventHandler( "onMarkerHit", Marcklde5el, Sortie ) and thnx for help Link to comment
Castillo Posted December 12, 2011 Share Posted December 12, 2011 local Marcklbara = createMarker( 1457.3000488281, -1010.799987793, 27.89999961853, 'arrow', 2, 0, 255, 0, 150 ) local Marcklde5el = createMarker( -1894.73, 653.08, -64.42, 'cylinder', 1.5, 255, 0, 0, 150 ) function Entrer( hitPlayer, matchingDimension ) local team = getPlayerTeam(hitPlayer) if (not team) then return end if (getTeamName(team) == "Criminal") then setElementPosition ( hitPlayer, -1901.87, 653.26, -63.42 ) else outputChatBox ( "You cannot enter. You need to be a criminal.",hitPlayer ) end end addEventHandler( "onMarkerHit", Marcklbara, Entrer ) function Sortie( hitPlayer, matchingDimension ) local team = getPlayerTeam(hitPlayer) if (not team) then return end if (getTeamName(team) == "Criminal") then setElementPosition ( hitPlayer, 1462.2607421875, -1012.4664306641, 26.84375 ) end end addEventHandler( "onMarkerHit", Marcklde5el, Sortie ) Link to comment
sckatchof Posted December 12, 2011 Author Share Posted December 12, 2011 thank you for your help, its work Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now