Jump to content

tzn

Members
  • Posts

    11
  • Joined

  • Last visited

Everything posted by tzn

  1. Such a question. Does the resource take about 4-5 minutes to load, or is it necessary?
  2. Thank you very much! It turns out that the problem was in the playercolors resource
  3. Hello, why is the link to the map editor not working?
  4. Hello, why is the message sent by the player not canceled? local chatRadius = 20 function onPlayerChatSendMessageToNearbyPlayers(messageText, messageType) local normalMessage = (messageType == 0) if (not normalMessage) then return false end local playerName = getPlayerName(source) local playerX, playerY, playerZ = getElementPosition(source) local playerInterior = getElementInterior(source) local playerDimension = getElementDimension(source) local nearbyPlayers = getElementsWithinRange(playerX, playerY, playerZ, chatRadius, "player", playerInterior, playerDimension) -- get nearby players within given radius local messageToOutput = playerName..": "..messageText outputChatBox(messageToOutput, nearbyPlayers, 255, 255, 255, true) cancelEvent() end addEventHandler("onPlayerChat", root, onPlayerChatSendMessageToNearbyPlayers)
  5. I am writing a task for the server and attached an object to the player using a bone attachment, but after it stands on the marker that should remove the object, it does not disappear, although it is deleted. This happens when you press the space bar Client function clickedWood(source) if getElementData(source, "job") == true then addEventHandler("onClientKey", root, function (button, press) if (button == "mouse1") and (getPedWeapon(source) == 9) then setTimer( function () if getKeyState("mouse1") then setTimer(toggleControl, 50, 1, "fire", false) setTimer(toggleControl, 50, 1, "jump", false) toggleControl("sprint", false) triggerServerEvent("createWood", source, source) triggerServerEvent("takeGun", getLocalPlayer()) return setTimer(triggerServerEvent, 1000, 1, "setAnimWood", source) end end, 5000, 1 ) end end ) end end addEventHandler("onClientColShapeHit", colrec1, clickedWood) addEventHandler("onClientColShapeHit", colrec2, clickedWood) addEventHandler("onClientColShapeHit", colrec3, clickedWood) addEventHandler("onClientColShapeHit", colrec4, clickedWood) addEventHandler("onClientColShapeHit", colrec5, clickedWood) addEventHandler("onClientColShapeHit", colrec6, clickedWood) addEventHandler("onClientColShapeHit", colrec7, clickedWood) addEventHandler("onClientColShapeHit", colrec8, clickedWood) addEventHandler("onClientColShapeHit", colrec9, clickedWood) addEventHandler("onClientColShapeHit", colrec10, clickedWood) addEventHandler("onClientColShapeHit", colrec11, clickedWood) addEventHandler("onClientColShapeHit", colrec12, clickedWood) addEventHandler("onClientColShapeHit", colrec13, clickedWood) Server function jobStartEnd(source) setTimer(setPedAnimation, 1000, 1, source) if getElementType(source) == "player" then if not (getElementData(source, "getSkin")) then local skin = getElementModel(source) setElementData(source, "skin", skin) end if getElementData(source, "job") then setElementFrozen(source, true) local skin = getElementData(source, "skin") destroyElement(getElementData(source,'wood')) setElementData(source, "job", nil) setElementData(source, "getwood", false) setElementData(source, "wood", nil) setElementModel(source, skin) toggleControl(source, "jump", true ); toggleControl(source, "fire", true ); toggleControl(source, "aim_weapon", true ); toggleControl(source, "next_weapon", true ); toggleControl(source, "previous_weapon", true ); toggleControl(source, "fire", true) destroyElement(areaWood1) destroyElement(areaWood2) destroyElement(areaWood3) destroyElement(areaWood4) destroyElement(areaWood5) destroyElement(areaWood6) destroyElement(markerWood1) destroyElement(markerWood2) destroyElement(markerWood3) destroyElement(markerWood4) outputChatBox("Вы уволились", source) local x, y, z = getElementPosition(source) setElementPosition(source, x, y, z + 0.3) toggleControl(source, "sprint", true) setElementFrozen(source, false) else outputChatBox("Вы устроились на работу лесника", source) setElementData(source, "p", source) setElementData(source, "job", true) setElementData(source, "getSkin", true) setElementModel(source, 16) giveWeapon(source, 9) areaWood1 = createRadarArea (-585.30011, -121.91802, 40, 30, 173, 93, 0, 100 ) areaWood2 = createRadarArea (-579.24915, -70.05952, 40, 30, 173, 93, 0, 100 ) areaWood3 = createRadarArea (-503.365234375, -70.92578125, 40, -60, 173, 93, 0, 100 ) areaWood4 = createRadarArea (-494.6416015625, -166.755859375, 40, 25, 173, 93, 0, 100 ) areaWood5 = createRadarArea (-556.4951171875, -172.0068359375, 40, 35, 173, 93, 0, 100 ) areaWood6 = createRadarArea (-536.49609375, -207.3017578125, 40, 25, 173, 93, 0, 100 ) markerWood1 = createMarker(-531.42578125, -74.357421875, 62, "cylinder", 1, 255, 0, 0, 100, source) markerWood2 = createMarker(-526.537109375, -60.978515625, 62, "cylinder", 1, 255, 0, 0, 100, source) markerWood3 = createMarker(-488.0556640625, -184.6318359375, 77.6, "cylinder", 1, 255, 0, 0, 100, source) markerWood4 = createMarker(-472.7919921875, -184.6298828125, 77.6, "cylinder", 1, 255, 0, 0, 100, source) addEventHandler("onMarkerHit", markerWood1, putWood) addEventHandler("onMarkerHit", markerWood2, putWood) addEventHandler("onMarkerHit", markerWood3, putWood) addEventHandler("onMarkerHit", markerWood4, putWood) end end end addEventHandler("onPickupHit", woodJobPickup, jobStartEnd) addEvent("takeGun", true) function takeGun() if (isElement(source)) then takeWeapon(source, 9) end end addEventHandler("takeGun", getRootElement(), takeGun) addEvent("setAnimWood", true) function setAnimWood() if (isElement(source)) then setPedAnimation(source, 'CARRY', 'crry_prtial', 0) end end addEventHandler("setAnimWood", getRootElement(), setAnimWood) addEvent("createWood", true) function createWood(source) if (isElement(source)) then outputChatBox("дад") local wood = createObject(1463,0,0,0) setElementData(source, 'wood', wood) setObjectScale(wood, 0.3) setElementData(source, 'getwood', true) exports.bone_attach:attachElementToBone(wood, source, 11,-0.2,0.14,0.2,-90,-10) end end addEventHandler("createWood", getRootElement(), createWood) local i = 3 local j = 3 function putWood(source) if (getElementData(source, "job") == true) and (getElementData(source, "getwood")) and (getElementData(source, "wood")) then setElementFrozen(source, true) local w = getElementData(source,'wood') setTimer(destroyElement, 100, 1, w) -- setTimer(setPedAnimation, 10, 1, source, 'CARRY', 'putdwn') -- setTimer(setPedAnimation, 1000, 1, source) setElementData(source, "getwood", false) setTimer(toggleControl, 1500, 1, source, "sprint", true) setTimer(toggleControl, 1500, 1, source, "jump", true) toggleControl(source, "fire", true ) giveWeapon(source, 9) setElementFrozen(source, false) if i == #woods then i = i + 3 zW = zW + 0.5 yW = yW - 2.4 else yW = yW + 1.2 end if i - j == 15 then zW = oldZ xW = xW + 2 j = i end if i == j then local wood = createObject(1463, xW, yW, zW) table.insert(woods, wood) else local wood = createObject(1463, xW, yW, zW) table.insert(woods, wood) end end end Shared woodJobPickup = createPickup(-529.8564453125, -80.2939453125, 62.62984085083, 3, 1275, 0) woodMarker = {{-617.02716, -94.44028, 64.95531}, {-626.70172, -106.32458, 65.56329}, {-632.42773, -86.30462, 64.97336}, {-642.29059, -105.41351, 63.60108}, } woods = {} xW, yW, zW = -547.6201171875, -76.923828125, 62.38 oldZ = zW colrec1 = createColRectangle(-581.52441, -103.12855, 28, 6.5) colrec2 = createColRectangle(-585.52490, -119.83871, 28, 14.5) colrec3 = createColRectangle(-578.76282, -69.81663, 28, 14.5) colrec4 = createColRectangle(-575.37988, -52.70491, 28, 6.5) colrec5 = createColRectangle(-503.365234375, -99.92578125, 16, 29) colrec6 = createColRectangle(-485.3544921875, -99.0732421875, 15, 29) colrec7 = createColRectangle(-501.85546875, -112.2431640625, 30, 7) colrec8 = createColRectangle(-491.478515625, -121.9234375, 30, 9) colrec9 = createColRectangle(-491.20703125, -129.0595703125, 30, 7) colrec10 = createColRectangle(-494.6416015625, -166.755859375, 30, 14) colrec11 = createColRectangle(-556.4951171875, -172.0068359375, 30, 8) colrec12 = createColRectangle(-548.1435546875, -159.056640625, 30, 8) colrec13 = createColRectangle(-536.49609375, -207.3017578125, 29, 15)
  6. Хочу сделать локальный чат, но мне выдаёт ошибку, что выдано boolean и resource data function localMessage(theMessage, thePlayer) local x, y, z = getElementPosition(thePlayer) local nearbyPlayers = getElementsWithinRange(x, y, z, 10, "player") outputChatBox(theMessage, nearbyPlayers) end addEventHandler("onChatMessage", root, localMessage)
  7. Спасибо. А ты не мог бы мне тут подсказать?
  8. I'm a beginner and I don't know how to make my bot always work, that is, it doesn't matter if there are players nearby or not. Without a player, the bot stops working. Server function bot_move(ped, point) if (isElement(ped)) then if (getElementData(ped, "serverbot") == true) then local point = getElementData(ped, "point") local px, py, pz = getElementPosition(ped) if not isElement(pickup) then local random = math.random(1,#point) tx,ty,tz = point[random][1],point[random][2],point[random][3] pickup = createMarker ( tx, ty, tz, "cylinder", 1.5, 255, 255, 0, 170, ped ) end local fdist = (getDistanceBetweenPoints3D(px, py, pz, tx, ty, tz)) if fdist > 2 then local angle = (360 - math.deg(math.atan2((tx - px), (ty - py)))) % 360 setPedRotation(ped, angle) triggerClientEvent("bot_Forwards", ped) setTimer(bot_move, 10, 1, ped, point) else triggerClientEvent("bot_animFarm", ped) destroyElement(pickup) setElementData(ped, "point", nil) setElementData(ped, "point", point) setTimer(bot_start_move, 100, 1, ped) end end end end function bot_start_move(ped) local point = getElementData(ped, "point") setTimer(bot_move, 200, 1, ped, point) end function createBot(x, y, z, skin, point) local bot = createPed(tonumber(skin), tonumber(x), tonumber(y), tonumber(z)) if not point then point = nil end if (bot ~= nil) then setElementData(bot, "serverbot", true) setElementData(bot, "fire", boolFire) setElementData(bot, "point", point) return bot end end a = createBot(-376.03802, -1434.80457, 25.72656, 110, m) bot_start_move(a) Client addEvent("bot_Forwards", true) function Bforward() if (isElement(source)) then setPedControlState(source, "forwards", true) end end addEventHandler("bot_Forwards", getRootElement(), Bforward) addEvent("bot_animFarm", true) function Banimation() if (isElement(source)) then setTimer(setPedAnimation, 1, 1, source, 'CARRY','liftup') setTimer(setPedAnimation, 1000, 1, source, 'CARRY', 'crry_prtial') end end addEventHandler("bot_animFarm", getRootElement(), Banimation)
  9. How can I make the bot not attack anyone in the Slothbot resource?
  10. Мне нужно проверить если пед наступил на пикап, как я могу это сделать?
×
×
  • Create New...