-
Posts
2,753 -
Joined
-
Last visited
-
Days Won
18
Everything posted by Captain Cody
-
Walid check again - I just realized my mistake
-
Awesome 8 year bump veigac4tm
-
For peds -- SkinIDs = {0, 1, 2, 7, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 33, 34, 35, 36, 37, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 57, 58, 59, 60, 61, 62, 66, 67, 68, 70, 71, 72, 73, 78, 79, 80, 81, 82, 83, 84, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 120, 121, 122, 123, 124, 125, 126, 127, 128, 132, 133, 134, 135, 136, 137, 142, 143, 144, 146, 147, 153, 154, 155, 156, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 170, 171, 173, 174, 175, 176, 177, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 200, 202, 203, 204, 206, 209, 210, 212, 213, 217, 220, 221, 222, 223, 227, 228, 229, 230, 234, 235, 236, 239, 240, 241, 242, 247, 248, 249, 250, 252, 253, 254, 255, 258, 259, 260, 261, 262, 264, 265, 266, 267, 268, 269, 270, 271, 272, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 290, 291, 292, 293, 294, 295, 296, 297, 299, 300, 301, 302, 303, 305, 306, 307, 308, 309, 310, 311, 312,9, 10, 11, 12, 13, 31, 38, 39, 40, 41, 53, 54, 55, 56, 63, 64, 69, 75, 76, 77, 85, 87, 88, 89, 90, 91, 92, 93, 129, 130, 131, 138, 139, 140, 141, 145, 148, 150, 151, 152, 157, 169, 172, 178, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 201, 205, 207, 211, 214, 215, 216, 218, 219, 224, 225, 226, 231, 232, 233, 237, 238, 243, 244, 245, 246, 251, 256, 257, 263, 298, 304} function getSkinWithTexture(texture) local theTable = {} for _,v in pairs(SkinIDs) do for _, va in pairs(engineGetModelTextureNames(v)) do if texture == va then table.insert(theTable,v) end end end return theTable end for vehicles -- vehicleIDS = { 602, 545, 496, 517, 401, 410, 518, 600, 527, 436, 589, 580, 419, 439, 533, 549, 526, 491, 474, 445, 467, 604, 426, 507, 547, 585, 405, 587, 409, 466, 550, 492, 566, 546, 540, 551, 421, 516, 529, 592, 553, 577, 488, 511, 497, 548, 563, 512, 476, 593, 447, 425, 519, 520, 460, 417, 469, 487, 513, 581, 510, 509, 522, 481, 461, 462, 448, 521, 468, 463, 586, 472, 473, 493, 595, 484, 430, 453, 452, 446, 454, 485, 552, 431, 438, 437, 574, 420, 525, 408, 416, 596, 433, 597, 427, 599, 490, 432, 528, 601, 407, 428, 544, 523, 470, 598, 499, 588, 609, 403, 498, 514, 524, 423, 532, 414, 578, 443, 486, 515, 406, 531, 573, 456, 455, 459, 543, 422, 583, 482, 478, 605, 554, 530, 418, 572, 582, 413, 440, 536, 575, 534, 567, 535, 576, 412, 402, 542, 603, 475, 449, 537, 538, 570, 441, 464, 501, 465, 564, 568, 557, 424, 471, 504, 495, 457, 539, 483, 508, 571, 500, 444, 556, 429, 411, 541, 559, 415, 561, 480, 560, 562, 506, 565, 451, 434, 558, 494, 555, 502, 477, 503, 579, 400, 404, 489, 505, 479, 442, 458, 606, 607, 610, 590, 569, 611, 584, 608, 435, 450, 591, 594 } function getCarsWithTexture(texture) local theTable = {} for _,v in pairs(vehicleIDS) do for _, va in pairs(engineGetModelTextureNames(v)) do if texture == va then table.insert(theTable,v) end end end return theTable end Both of those functions return a table with a list of Ids that contain that texture (May be a bit laggy) Basicly it just runs through each ID, checks if it has that texture, if so adds it to table
-
Oh sorry. Didn't ready that. Give me a bit and I'll make a new code.
-
Please note, this will not work for world models (There might be a way but I'm unsure of it.) Also, it's untested. So I'm not sure if it will actually work.. function getModelsWithTexture(texture) local theTable = {} for _,v in pairs(getElementsByType("object")) do for _, va in ipairs(engineGetModelTextureNames(v)) do if texture == va then table.insert(theTable,v) end end end return theTable end usage -- local models = getModelsWithTexture(texture) returns a table with all of the models.
-
Give me a bit and I'll have a code for you.
-
function fixVehiclea() fixVehicle(source) end addEventHandler("onVehicleDamage", getRootElement(), fixVehiclea)
-
You could use getDistanceBetweenTwoPoints and if the player is closer or equal to said distance, send the info client side of the ped. If that makes any sense.
-
Well it doesn't seam like the script itself actually works any ways, there are a few messed up bits of it.
-
I tested mine, it works just fine, unless you were holding a gun that cannot be shot in jetPack when getting the jet pack
-
function engine ( thePlayer) local account = getPlayerAccount (thePlayer) local theVehicle = getPedOccupiedVehicle ( thePlayer ) local model = getElementModel(theVehicle) local skin = getElementModel (thePlayer) local iFaction = getAccountData(account, "Faction") or 0 if model == 431 then outputChatBox ("working", thePlayer) if tonumber(iFaction) == 7 then if skin == 71 then if getVehicleEngineState(theVehicle) == false then setVehicleEngineState ( theVehicle, true ) else setVehicleEngineState ( theVehicle, false ) end end end else outputChatBox ("wrong", thePlayer) end end addCommandHandler ("engine",engine) --- Car was undefined --- Source changed to thePlayer, (You're dropping another element over a predefined element) --- You need to get the vehicles model --- There's no reason for CMD if you're not going to use it. --- If you want to output to root, just remove root, but in this case it seams you want to output to local?
-
As the person above was saying, add something below him that's invisible.
-
Something such as that will not kill your CPU and bandwidth, unless you have a thosand timers going at the same time. But yes, it is a bit more unefficient then onClientRender, but I was just thinking of the sync there.
-
Buy top 20 position in the MTA server browser for 20 days
Captain Cody replied to ccw's topic in Servers
Toady need's to improve on his gambling, $139,348 isn't it? -
How do I bind the multiplayer menu to another key?
Captain Cody replied to RedneckRandy's topic in Scripting
You will find it in the resource freeRoam. -
turn down how fast the timer goes.
-
Sorry noticed something I messed up on, here. invited = {} function Invitar (otherPlayer) local other = getPlayerFromPartialName(otherPlayer) if other then local favteam = getTeamFromName("D.S.K") if (favteam) then outputChatBox (getPlayerName(other) .. ' #00FF00Ha sido invitado a DSK', client, 255, 0, 0, true ) invited[other] = client end end end addEvent( "Invitar", true) addEventHandler( "Invitar", root, Invitar ) function Accept (player) if invited[player] then setPlayerTeam(player,getTeamFromName("D.S.K")) outputChatBox (getPlayerName(player).. ' #00FF00Se ha cambiado a DSK', invited[player], 255, 0, 0, true ) invited[player] = nil end end addCommandHandler ( "accept", Accept ) function getPlayerFromPartialName(name) local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_:find(name, 1, true) then return player end end end end
-
/accept to accept, the other one you said you were triggering from a panel correct?
-
580-590 function addPlayerStats (player,data,value) if data == "food" then local current = tonumber(getElementData(player,data)) or 0 if current + tonumber(value) > 100 then setElementData(player,data,100) elseif current + tonumber(value) < 1 then setElementData(player,data,0) setElementData(player,"blood",getElementData(player,"blood")-math.random(50,120)) else setElementData(player,data,current+tonumber(value)) end elseif data == "thirst" then local current = tonumber(getElementData(player,data)) or 0 if current + tonumber(value) > 100 then setElementData(player,data,100) elseif current + tonumber(value) < 1 then setElementData(player,data,0) setElementData(player,"blood",getElementData(player,"blood")-math.random(50,120)) else setElementData(player,data,current+tonumber(value)) end elseif data == "blood" then local current = tonumber(getElementData(player,data)) or 0 if current + tonumber(value) > 12000 then setElementData(player,data,12000) elseif current + tonumber(value) < 1 then setElementData(player,data,0) else setElementData(player,data,current+tonumber(value)) end elseif data == "temperature" then local current = tonumber(getElementData(player,data)) or 0 if current + tonumber(value) > 41 then setElementData(player,data,41) elseif current + tonumber(value) <= 31 then setElementData(player,data,31) else setElementData(player,data,current+tonumber(value)) end elseif data == "humanity" then local current = tonumber(getElementData(player,data)) or 0 if current + tonumber(value) > 5000 then setElementData(player,data,5000) else setElementData(player,data,current+tonumber(value)) end end end 580 local blood = getElementData(player,"blood") or 0 setElementData(player,"blood",blood-math.random(50,120)) 590 local blood = tonumber(getElementData(player,"blood")) or 0 setElementData(player,"blood",blood-math.random(50,120)) humanity stuff function checkHumanity() for i,player in ipairs(getElementsByType("player")) do if getElementData(player,"logged_in") then local humanity = tonumber(getElementData(player,"humanity")) or 0 if humanity < 2500 then addPlayerStats (player,"humanity",30) if humanity > 2000 then setElementData(player,"bandit",false) end end end end end setTimer(checkHumanity,60000,0) last problem same thing from above? local humanity = tonumber(getElementData(player,"humanity")) or 0 if humanity < 2500 then
-
Not tested - invited = {} function Invitar (otherPlayer) local other = getPlayerFromPartialName(otherPlayer) if other then local favteam = getTeamFromName("D.S.K") if (favteam) then outputChatBox (getPlayerName(other) .. ' #00FF00Ha sido invitado a DSK', client, 255, 0, 0, true ) invited[other] = client end end end addEvent( "Invitar", true) addEventHandler( "Invitar", root, Invitar ) function Accept (player) if invited[player] then setPlayerTeam(player,getTeamFromName("D.S.K")) outputChatBox (otherPlayer.. ' #00FF00Se ha cambiado a DSK', invited[player], 255, 0, 0, true ) invited[player] = nil end end addCommandHandler ( "accept", Accept ) function getPlayerFromPartialName(name) local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_:find(name, 1, true) then return player end end end end
-
function addPlayerStats (player,data,value) if data == "food" then local current = tonumber(getElementData(player,data)) or 0 if current + value > 100 then setElementData(player,data,100) elseif current + value < 1 then setElementData(player,data,0) setElementData(player,"blood",getElementData(player,"blood")-math.random(50,120)) else setElementData(player,data,current+value) end elseif data == "thirst" then local current = tonumber(getElementData(player,data)) or 0 if current + value > 100 then setElementData(player,data,100) elseif current + value < 1 then setElementData(player,data,0) setElementData(player,"blood",getElementData(player,"blood")-math.random(50,120)) else setElementData(player,data,current+value) end elseif data == "blood" then local current = tonumber(getElementData(player,data)) or 0 if current + value > 12000 then setElementData(player,data,12000) elseif current + value < 1 then setElementData(player,data,0) else setElementData(player,data,current+value) end elseif data == "temperature" then local current = tonumber(getElementData(player,data)) or 0 if current + value > 41 then setElementData(player,data,41) elseif current + value <= 31 then setElementData(player,data,31) else setElementData(player,data,current+value) end elseif data == "humanity" then local current = tonumber(getElementData(player,data)) or 0 if current + value > 5000 then setElementData(player,data,5000) else setElementData(player,data,current+value) end end end
-
Try this function addPlayerStats (player,data,value) if data == "food" then local current = tonumber(getElementData(player,data)) if current + value > 100 then setElementData(player,data,100) elseif current + value < 1 then setElementData(player,data,0) setElementData(player,"blood",getElementData(player,"blood")-math.random(50,120)) else setElementData(player,data,current+value) end elseif data == "thirst" then local current = tonumber(getElementData(player,data)) if current + value > 100 then setElementData(player,data,100) elseif current + value < 1 then setElementData(player,data,0) setElementData(player,"blood",getElementData(player,"blood")-math.random(50,120)) else setElementData(player,data,current+value) end elseif data == "blood" then local current = tonumber(getElementData(player,data)) if current + value > 12000 then setElementData(player,data,12000) elseif current + value < 1 then setElementData(player,data,0) else setElementData(player,data,current+value) end elseif data == "temperature" then local current = tonumber(getElementData(player,data)) if current + value > 41 then setElementData(player,data,41) elseif current + value <= 31 then setElementData(player,data,31) else setElementData(player,data,current+value) end elseif data == "humanity" then local current = tonumber(getElementData(player,data)) if current + value > 5000 then setElementData(player,data,5000) else setElementData(player,data,current+value) end end end
-
But if you want to scroll, replace E and Q with mouse_wheel_up and mouse_wheel_down
-
Here -- E to slot forward, Q to slot backwards. function NextWeapon (player) if doesPedHaveJetPack (player) then local slot = getPedWeaponSlot(player) if slot == 12 then setPedWeaponSlot (player,0) else setPedWeaponSlot (player,slot+1) end end end function PreWeapon (player) if doesPedHaveJetPack (player) then local slot = getPedWeaponSlot(player) if slot == 0 then setPedWeaponSlot (player,12) else setPedWeaponSlot (player,slot-1) end end end function BindKeys () for i,v in pairs(getElementsByType("player")) do bindKey ( v, "e", "down", NextWeapon ) bindKey ( v, "q", "down", PreWeapon ) end end addEventHandler ( "onResourceStart", resourceRoot, BindKeys ) function BindKeys2 () bindKey ( source, "e", "down", NextWeapon ) bindKey ( source, "q", "down", PreWeapon ) end addEventHandler ( "onPlayerJoin", getRootElement(),BindKeys2)
