HeK
Members-
Posts
185 -
Joined
-
Last visited
Everything posted by HeK
-
Big difference from an image file to a script ._. i gotta pay more attention.
-
These are the errors: spawn\c_main.lua:28: addEventHandler: 'onClientRender' with this function is already handled. -- Made By XX3, from scratch with MS Notepad. Purpose: To make a new exotic compact HUD. -- You may edit this resource, but please credit me if you wanted to post an edited / extended version. -- PS: I was in MTA SA to show what Indonesia is really made of! -- Weapon tables for ammo. resourceroot = getResourceRootElement(getThisResource()) local noreloadweapons = {} --Weapons that doesn't reload (including the flamethrower, minigun, which doesn't have reload anim). noreloadweapons[16] = true noreloadweapons[17] = true noreloadweapons[18] = true noreloadweapons[19] = true noreloadweapons[25] = true noreloadweapons[33] = true noreloadweapons[34] = true noreloadweapons[35] = true noreloadweapons[36] = true noreloadweapons[37] = true noreloadweapons[38] = true noreloadweapons[39] = true noreloadweapons[41] = true noreloadweapons[42] = true noreloadweapons[43] = true local meleespecialweapons = {} --Weapons that don't shoot, and special weapons. meleespecialweapons[0] = true meleespecialweapons[1] = true meleespecialweapons[2] = true meleespecialweapons[3] = true meleespecialweapons[4] = true meleespecialweapons[5] = true meleespecialweapons[6] = true meleespecialweapons[7] = true meleespecialweapons[8] = true meleespecialweapons[9] = true meleespecialweapons[10] = true meleespecialweapons[11] = true meleespecialweapons[12] = true meleespecialweapons[13] = true meleespecialweapons[14] = true meleespecialweapons[15] = true meleespecialweapons[40] = true meleespecialweapons[44] = true meleespecialweapons[45] = true meleespecialweapons[46] = true function DXdraw() --Variables sWidth, sHeight = guiGetScreenSize() -- Getting the screen size health = getElementHealth( getLocalPlayer() ) lineLength1 = 114 * ( health / 100 ) -- Health bar armor = getPedArmor( getLocalPlayer() ) lineLength2 = 114 * ( armor / 100 ) -- Armor bar ammoinclip = getPedAmmoInClip (getLocalPlayer()) -- The ammo inside the clip totalammo = getPedTotalAmmo(getLocalPlayer())-getPedAmmoInClip(getLocalPlayer()) -- The total ammo minus ammo inside clip totalammo2 = getPedTotalAmmo(getLocalPlayer()) showammo1 = ammoinclip showammo2 = totalammo showammo3 = totalammo2 moneycount=getPlayerMoney(getLocalPlayer()) money= '$' ..moneycount -- Money local hour, mins = getTime () time = hour .. ":" .. (((mins < 10) and "0"..mins) or mins) -- Time. This one makes the minutes always show by 2 digits (3:05 instead of 3:5) local wantedlevel = getPlayerWantedLevel (getLocalPlayer()) --Getting the player's wanted level. -------- Dynamic health colour thanks to 50p ---------- tick = getTickCount () -- For active health bar local maxHealth = 100; -- get max health stat local colourPercent = ( health / maxHealth ) * 200; local red, green; -- we don't need blue because we don't use it, it'll be 0 if health < ( maxHealth / 2 ) then red = 200; green = ( health / 50 ) * ( colourPercent * 2 ); else green = 200; red = 200 - ( ( health - 50 ) / 50 ) * 200; end -- For inactive health bar local maxHealth = 75; -- get max health stat local colourPercent1 = ( health / maxHealth ) * 75; local red1, green1; -- we don't need blue because we don't use it, it'll be 0 if health < ( maxHealth / 2 ) then red1 = 75; green1 = ( health / 50 ) * ( colourPercent1 * 2 ); else green1 = 75; red1 = 75 - ( ( health - 50 ) / 50 ) * 75; end local color1 = tocolor( red1, green1, 0, 150 ) local color2 = tocolor( red, green, 0, 200 ) -- For the health bar if getTickCount () %1500 < 500 and health <= 20 and armor <=0 then -- If health is less than 20%, armor is 0%, the health bar will blink by hiding the health bar every 1.5 seconds. else dxDrawRectangle(sWidth-206,sHeight-29,114.0,14.0,color1, false) -- Health inactive bar dxDrawRectangle(sWidth-206,sHeight-29,lineLength1,14.0,color2,false) --Health active bar end if armor <= 0 then else dxDrawRectangle(sWidth-206,sHeight-43,lineLength2,14.0,tocolor(200,200,200,200),false) -- Armor active bar dxDrawRectangle(sWidth-206,sHeight-43,114.0,14.0,tocolor(50,50,50,150),false) -- Armor inactive bar end ------ DX drawing that are visible at all times dxDrawRectangle(sWidth-84,sHeight-48,78.0,33.0,tocolor(0,0,0,150),false) -- GTA Time DX Rectangle dxDrawText(tostring (money),sWidth-200,sHeight-78,sWidth-5,sHeight-54,tocolor(0,0,0,200),1.0,"pricedown","right","top",false,false,false) -- Money DX text (shadow) dxDrawText(tostring (money),sWidth-202,sHeight-81,sWidth-7,sHeight-57,tocolor(0,100,0,220),1.0,"pricedown","right","top",false,false,false) -- Money DX text dxDrawText(tostring (time),sWidth-81,sHeight-46,sWidth-10,sHeight-16,tocolor(250,250,250,200),1.0,"diploma","center","top",false,false,false) -- GTA Time DX text ------- Weapon icons & Ammo DX drawings local weaponID = getPedWeapon (getLocalPlayer()); -- Get weapon ID dxDrawImage(sWidth-266,sHeight-60,48.0,52.0,"icons/".. tostring( weaponID ) .. ".png",0.0,0.0,0.0,tocolor(255,255,255,200),false) -- Weapon icons image. Check the icons file if you want to take and replace weapon icons. -- now decide if the optional stuff should be drawn if noreloadweapons [getPedWeapon(getLocalPlayer())] then dxDrawText(tostring (showammo3),sWidth-400,sHeight-47,sWidth-288,sHeight-12,tocolor(0,255,255,200),1.0,"bankgothic","right","top",false,false,false) -- No reload weapons (for shotgun, grenades, etc) elseif meleespecialweapons [getPedWeapon(getLocalPlayer())] then -- Draw Nothing for melee and special weapons. else --Weapons that reloads. dxDrawText(tostring (showammo2),sWidth-414,sHeight-47,sWidth-369,sHeight-18,tocolor(0,255,255,200),1.0,"bankgothic","right","top",false,false,false) dxDrawText("|",sWidth-361,sHeight-48,sWidth-385,sHeight-8,tocolor(255,200,0,200),1.0,"bankgothic","left","top",false,false,false) dxDrawText(tostring (showammo1),sWidth-345,sHeight-47,sWidth-272,sHeight-12,tocolor(0,255,255,200),1.0,"bankgothic","left","top",false,false,false) end if wantedlevel == 0 then -- Draw nothing (Wanted level 0) elseif wantedlevel == 1 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 1 elseif wantedlevel == 2 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 2 dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) elseif wantedlevel == 3 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 3 dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) elseif wantedlevel == 4 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 4 dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) elseif wantedlevel == 5 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 5 dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) else dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 6 dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) end end -- End of the DX Drawing function -------- HUD toogle command functions. function hudChanger () addEventHandler("onClientRender", getRootElement(), DXdraw) showPlayerHudComponent ( "armour", false ) showPlayerHudComponent ( "health", false ) showPlayerHudComponent ( "money", false ) showPlayerHudComponent ( "clock", false ) showPlayerHudComponent ( "weapon", false ) showPlayerHudComponent ("ammo", false) showPlayerHudComponent ( "money", false ) showPlayerHudComponent ( "wanted", false ) end addCommandHandler ( "showhud", hudChanger ) -- Shows the Alternate HUD addCommandHandler ( "hidegtahud", hudChanger ) -- Hides the GTA HUD addEventHandler( "onClientResourceStart", resourceroot, hudChanger ) addEventHandler( "onPlayerJoin", resourceroot, hudChanger ) -- The same, but also on player join. function hudChanger2 () removeEventHandler("onClientRender", getRootElement(), DXdraw) showPlayerHudComponent ( "armour", true ) showPlayerHudComponent ( "health", true ) showPlayerHudComponent ( "money", true ) showPlayerHudComponent ( "clock", true ) showPlayerHudComponent ( "weapon", true ) showPlayerHudComponent ("ammo", true) showPlayerHudComponent ( "money", true) showPlayerHudComponent ( "wanted", true ) end addCommandHandler ( "hidehud", hudChanger2) -- Removes the HUD, and shows the GTA HUD. addCommandHandler ( "showgtahud", hudChanger2) addEventHandler("onClientResourceStop", resourceroot, hudChanger2) -- When you stop the resource, executes. function hudChanger3 () removeEventHandler("onClientRender", getRootElement(), DXdraw) showPlayerHudComponent ("all", false) end addCommandHandler ( "hideall", hudChanger3 ) -- Shows the Alternate HUD function radarcommand1 () showPlayerHudComponent ("radar", true) end addCommandHandler( "showradar", radarcommand1 ) function radarcommand2 () showPlayerHudComponent ("radar", false) end addCommandHandler( "hideradar", radarcommand2 ) WARNING: [scripts]\spawn\s_main.lua:25: Bad 'team' pointer' @ 'countPlayersInTeam'(1) g_root = getRootElement( ); classGroups = { }; addEvent( "spawn_clientRequestSpawn", true ); addEventHandler( "spawn_clientRequestSpawn", g_root, function( categoryIndex, classIndex, skinIndex ) if skinIndex then local class = classGroups[ categoryIndex ].classes[ classIndex ]; local skin = class.skinMngr.skins[ skinIndex ]; local spawn = true; local spawned; --[[if not classGroups[ cetegoryIndex ].owner then -- if there is NO owner of the clan/gang spawn player spawn = true; else -- if there IS owner of the clan/gang then check if he's member of the clan/gang end]] if spawn then if not class.team then class.team = createTeam( class.name, class.color.red, class.color.green, class.color.blue ); end local plrTeam = getPlayerTeam( client ); if ( ( plrTeam ) and ( plrTeam == class.team ) and ( countPlayersInTeam( plrTeam ) == 1 ) ) then destroyElement( plrTeam ); end spawned = spawnPlayer( client, skin.spawnLoc.x, skin.spawnLoc.y, skin.spawnLoc.z, skin.spawnLoc.rot, skin.modelId, 0, 0, class.team ); end if spawned then setElementData( client, "team", class.name ) fadeCamera( client, true ); setCameraTarget( client, client ); setTimer( setCameraTarget, 200, 1, client, client ); triggerClientEvent( client, "spawn_SpawnedSuccessfully", client ); --setPlayerMoney( client, 500 ); for _, weapon in ipairs( class.weaponMngr.weapons ) do giveWeapon( client, weapon.id, weapon.ammo, false ); end createBlipAttachedTo( client, 0, 2, class.color.red, class.color.green, class.color.blue ) else triggerClientEvent( client, "spawn_FailedToSpawn", client ); if countPlayersInTeam( class.team ) == 0 then class.team = nil; end end end end ); addEventHandler( "onPlayerSpawn", g_root, function ( ) end ); addEventHandler( "onPlayerWasted", g_root, function( ) fadeCamera( source, false, 4 ); setTimer( requestMenu, 5000, 1, source ); deleteAllPlayerBlips( source ) end ); function requestMenu( player ) callClientFunc( player, "showSpawnMenu", true, true ); callClientFunc( player, "classSelected" ); end addCommandHandler( "kill", function( plr ) killPed( plr ); end ) function preloadClassesInfo( ) local groups = getElementsByType( "category" ); for _, group in ipairs( groups ) do table.insert( classGroups, Group:New( group ) ); end end addEventHandler( "onResourceStart", getResourceRootElement(), preloadClassesInfo ) function deleteAllPlayerBlips(player) if (not player) then return end local elements = getAttachedElements(player) if (elements) then for i, element in ipairs(elements) do if (element and getElementType(element) == "blip") then destroyElement(element) end end end end addEventHandler( "onPlayerQuit", g_root, function() deleteAllPlayerBlips(source) end ); ------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------ function callClientFunc( player, funcName, ... ) if #{ ... } ~= 0 then triggerClientEvent( player, "_clientCallFunction", root, funcName, ... ) else triggerClientEvent( player, "_clientCallFunction", root, funcName ) end end addEvent( "_serverCallFunction", true ) addEventHandler( "_serverCallFunction", root, function( funcName, ... ) _G[ funcName ](...) end )
-
No warnings or errors about Alternate_hud.
-
Im using "Alternate_Hud" and everytime i log in my server both normal and alternate huds are on. Anyway to fix this? -- Made By XX3, from scratch with MS Notepad. Purpose: To make a new exotic compact HUD. -- You may edit this resource, but please credit me if you wanted to post an edited / extended version. -- PS: I was in MTA SA to show what Indonesia is really made of! -- Weapon tables for ammo. resourceroot = getResourceRootElement(getThisResource()) local noreloadweapons = {} --Weapons that doesn't reload (including the flamethrower, minigun, which doesn't have reload anim). noreloadweapons[16] = true noreloadweapons[17] = true noreloadweapons[18] = true noreloadweapons[19] = true noreloadweapons[25] = true noreloadweapons[33] = true noreloadweapons[34] = true noreloadweapons[35] = true noreloadweapons[36] = true noreloadweapons[37] = true noreloadweapons[38] = true noreloadweapons[39] = true noreloadweapons[41] = true noreloadweapons[42] = true noreloadweapons[43] = true local meleespecialweapons = {} --Weapons that don't shoot, and special weapons. meleespecialweapons[0] = true meleespecialweapons[1] = true meleespecialweapons[2] = true meleespecialweapons[3] = true meleespecialweapons[4] = true meleespecialweapons[5] = true meleespecialweapons[6] = true meleespecialweapons[7] = true meleespecialweapons[8] = true meleespecialweapons[9] = true meleespecialweapons[10] = true meleespecialweapons[11] = true meleespecialweapons[12] = true meleespecialweapons[13] = true meleespecialweapons[14] = true meleespecialweapons[15] = true meleespecialweapons[40] = true meleespecialweapons[44] = true meleespecialweapons[45] = true meleespecialweapons[46] = true function DXdraw() --Variables sWidth, sHeight = guiGetScreenSize() -- Getting the screen size health = getElementHealth( getLocalPlayer() ) lineLength1 = 114 * ( health / 100 ) -- Health bar armor = getPedArmor( getLocalPlayer() ) lineLength2 = 114 * ( armor / 100 ) -- Armor bar ammoinclip = getPedAmmoInClip (getLocalPlayer()) -- The ammo inside the clip totalammo = getPedTotalAmmo(getLocalPlayer())-getPedAmmoInClip(getLocalPlayer()) -- The total ammo minus ammo inside clip totalammo2 = getPedTotalAmmo(getLocalPlayer()) showammo1 = ammoinclip showammo2 = totalammo showammo3 = totalammo2 moneycount=getPlayerMoney(getLocalPlayer()) money= '$' ..moneycount -- Money local hour, mins = getTime () time = hour .. ":" .. (((mins < 10) and "0"..mins) or mins) -- Time. This one makes the minutes always show by 2 digits (3:05 instead of 3:5) local wantedlevel = getPlayerWantedLevel (getLocalPlayer()) --Getting the player's wanted level. -------- Dynamic health colour thanks to 50p ---------- tick = getTickCount () -- For active health bar local maxHealth = 100; -- get max health stat local colourPercent = ( health / maxHealth ) * 200; local red, green; -- we don't need blue because we don't use it, it'll be 0 if health < ( maxHealth / 2 ) then red = 200; green = ( health / 50 ) * ( colourPercent * 2 ); else green = 200; red = 200 - ( ( health - 50 ) / 50 ) * 200; end -- For inactive health bar local maxHealth = 75; -- get max health stat local colourPercent1 = ( health / maxHealth ) * 75; local red1, green1; -- we don't need blue because we don't use it, it'll be 0 if health < ( maxHealth / 2 ) then red1 = 75; green1 = ( health / 50 ) * ( colourPercent1 * 2 ); else green1 = 75; red1 = 75 - ( ( health - 50 ) / 50 ) * 75; end local color1 = tocolor( red1, green1, 0, 150 ) local color2 = tocolor( red, green, 0, 200 ) -- For the health bar if getTickCount () %1500 < 500 and health <= 20 and armor <=0 then -- If health is less than 20%, armor is 0%, the health bar will blink by hiding the health bar every 1.5 seconds. else dxDrawRectangle(sWidth-206,sHeight-29,114.0,14.0,color1, false) -- Health inactive bar dxDrawRectangle(sWidth-206,sHeight-29,lineLength1,14.0,color2,false) --Health active bar end if armor <= 0 then else dxDrawRectangle(sWidth-206,sHeight-43,lineLength2,14.0,tocolor(200,200,200,200),false) -- Armor active bar dxDrawRectangle(sWidth-206,sHeight-43,114.0,14.0,tocolor(50,50,50,150),false) -- Armor inactive bar end ------ DX drawing that are visible at all times dxDrawRectangle(sWidth-84,sHeight-48,78.0,33.0,tocolor(0,0,0,150),false) -- GTA Time DX Rectangle dxDrawText(tostring (money),sWidth-200,sHeight-78,sWidth-5,sHeight-54,tocolor(0,0,0,200),1.0,"pricedown","right","top",false,false,false) -- Money DX text (shadow) dxDrawText(tostring (money),sWidth-202,sHeight-81,sWidth-7,sHeight-57,tocolor(0,100,0,220),1.0,"pricedown","right","top",false,false,false) -- Money DX text dxDrawText(tostring (time),sWidth-81,sHeight-46,sWidth-10,sHeight-16,tocolor(250,250,250,200),1.0,"diploma","center","top",false,false,false) -- GTA Time DX text ------- Weapon icons & Ammo DX drawings local weaponID = getPedWeapon (getLocalPlayer()); -- Get weapon ID dxDrawImage(sWidth-266,sHeight-60,48.0,52.0,"icons/".. tostring( weaponID ) .. ".png",0.0,0.0,0.0,tocolor(255,255,255,200),false) -- Weapon icons image. Check the icons file if you want to take and replace weapon icons. -- now decide if the optional stuff should be drawn if noreloadweapons [getPedWeapon(getLocalPlayer())] then dxDrawText(tostring (showammo3),sWidth-400,sHeight-47,sWidth-288,sHeight-12,tocolor(0,255,255,200),1.0,"bankgothic","right","top",false,false,false) -- No reload weapons (for shotgun, grenades, etc) elseif meleespecialweapons [getPedWeapon(getLocalPlayer())] then -- Draw Nothing for melee and special weapons. else --Weapons that reloads. dxDrawText(tostring (showammo2),sWidth-414,sHeight-47,sWidth-369,sHeight-18,tocolor(0,255,255,200),1.0,"bankgothic","right","top",false,false,false) dxDrawText("|",sWidth-361,sHeight-48,sWidth-385,sHeight-8,tocolor(255,200,0,200),1.0,"bankgothic","left","top",false,false,false) dxDrawText(tostring (showammo1),sWidth-345,sHeight-47,sWidth-272,sHeight-12,tocolor(0,255,255,200),1.0,"bankgothic","left","top",false,false,false) end if wantedlevel == 0 then -- Draw nothing (Wanted level 0) elseif wantedlevel == 1 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 1 elseif wantedlevel == 2 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 2 dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) elseif wantedlevel == 3 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 3 dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) elseif wantedlevel == 4 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 4 dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) elseif wantedlevel == 5 then dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(0,0,0,100),false) dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 5 dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) else dxDrawImage(sWidth-21,sHeight-212,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) -- Wanted level 6 dxDrawImage(sWidth-21,sHeight-190,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-168,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-148,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-126,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) dxDrawImage(sWidth-21,sHeight-105,16.0,19.0,"images/star.png",0.0,0.0,0.0,tocolor(255,255,255,255),false) end end -- End of the DX Drawing function -------- HUD toogle command functions. function hudChanger () addEventHandler("onClientRender", getRootElement(), DXdraw) showPlayerHudComponent ( "armour", false ) showPlayerHudComponent ( "health", false ) showPlayerHudComponent ( "money", false ) showPlayerHudComponent ( "clock", false ) showPlayerHudComponent ( "weapon", false ) showPlayerHudComponent ("ammo", false) showPlayerHudComponent ( "money", false ) showPlayerHudComponent ( "wanted", false ) end addCommandHandler ( "showhud", hudChanger ) -- Shows the Alternate HUD addCommandHandler ( "hidegtahud", hudChanger ) -- Hides the GTA HUD addEventHandler( "onClientResourceStart", resourceroot, hudChanger ) addEventHandler( "onPlayerJoin", resourceroot, hudChanger ) -- The same, but also on player join. function hudChanger2 () removeEventHandler("onClientRender", getRootElement(), DXdraw) showPlayerHudComponent ( "armour", true ) showPlayerHudComponent ( "health", true ) showPlayerHudComponent ( "money", true ) showPlayerHudComponent ( "clock", true ) showPlayerHudComponent ( "weapon", true ) showPlayerHudComponent ("ammo", true) showPlayerHudComponent ( "money", true) showPlayerHudComponent ( "wanted", true ) end addCommandHandler ( "hidehud", hudChanger2) -- Removes the HUD, and shows the GTA HUD. addCommandHandler ( "showgtahud", hudChanger2) addEventHandler("onClientResourceStop", resourceroot, hudChanger2) -- When you stop the resource, executes. function hudChanger3 () removeEventHandler("onClientRender", getRootElement(), DXdraw) showPlayerHudComponent ("all", false) end addCommandHandler ( "hideall", hudChanger3 ) -- Shows the Alternate HUD function radarcommand1 () showPlayerHudComponent ("radar", true) end addCommandHandler( "showradar", radarcommand1 ) function radarcommand2 () showPlayerHudComponent ("radar", false) end addCommandHandler( "hideradar", radarcommand2 )
-
<script src="icon.png" /> Oh im so stupid. Yeah i found it. I put script instead of file. Thanks.
-
Im using the "CustomBlips" resource, but it has some errors, i placed the "icon.png" in the meta and made this lua. addEventHandler ( "onClientResourceStart", getResourceRootElement(getThisResource()), function() exports.customblips:createCustomBlip ( 2236.345703125,2458.1728515625, 20, 20, "icon.png" ) end ) The ERRORS: ERROR: customblips\imagelib.lua:144: dxDrawImage can't load file WARNING: Loading script failed: [scripts]\customblips\icon.png:1: unexpected symbol near 'ô'
-
Thanks so much Castillo it worked.
-
Edited, that's the last .lua i have on this resource.
-
Hello guys, i have a script made by Stanley Sathler a great friend, and in this script you hit the marker a gui pops up and you choose a vehicle, the problem is, i want each player to have a Max of 1 vehicle, or they will spawn the area with vehicles. -- -------------------------------------------------------- -- [x] Author: Stanley Sathler -- [x] Function: Spawn vehicle on map -- [X] Group: |MS-13| Mara Salvatrucha -- -------------------------------------------------------- function SpawnTheVehicle(model) Vehicle = createVehicle(tonumber(model), 1597, -1705, 5) setVehicleColor(Vehicle, 0) warpPedIntoVehicle(source, Vehicle) end addEvent("SpawnVehicleOnMap", true) addEventHandler("SpawnVehicleOnMap", getRootElement(), SpawnTheVehicle)
-
Ok then, i'll work on it. Thanks
-
Thanks you so much! Can i use it for killmessages too?
-
What i wanna do is to make it show the player HEX Color that he has. I have tried many things and messed the code. I got this script from the Community = "race_nametag" Can anyone help me or give me a hint on how to do it?[/b] g_Root = getRootElement() g_ResRoot = getResourceRootElement(getThisResource()) g_Players = getElementsByType('player') g_Me = getLocalPlayer() nametag = {} local nametags = {} local g_screenX,g_screenY = guiGetScreenSize() local bHideNametags = false local NAMETAG_SCALE = 0.3 --Overall adjustment of the nametag, use this to resize but constrain proportions local NAMETAG_ALPHA_DISTANCE = 50 --Distance to start fading out local NAMETAG_DISTANCE = 120 --Distance until we're gone local NAMETAG_ALPHA = 120 --The overall alpha level of the nametag --The following arent actual pixel measurements, they're just proportional constraints local NAMETAG_TEXT_BAR_SPACE = 2 local NAMETAG_WIDTH = 50 local NAMETAG_HEIGHT = 5 local NAMETAG_TEXTSIZE = 0.3 local NAMETAG_OUTLINE_THICKNESS = 1.2 -- local NAMETAG_ALPHA_DIFF = NAMETAG_DISTANCE - NAMETAG_ALPHA_DISTANCE NAMETAG_SCALE = 1/NAMETAG_SCALE * 800 / g_screenY -- Ensure the name tag doesn't get too big local maxScaleCurve = { {0, 0}, {3, 3}, {13, 5} } -- Ensure the text doesn't get too small/unreadable local textScaleCurve = { {0, 0.8}, {0.8, 1.2}, {99, 99} } -- Make the text a bit brighter and fade more gradually local textAlphaCurve = { {0, 0}, {25, 100}, {120, 190}, {255, 190} } function nametag.create ( player ) nametags[player] = true end function nametag.destroy ( player ) nametags[player] = nil end addEventHandler ( "onClientRender", g_Root, function() -- Hideous quick fix -- for i,player in ipairs(g_Players) do if isElement(player) then if player ~= g_Me then setPlayerNametagShowing ( player, false ) if not nametags[player] then nametag.create ( player ) end end end end if bHideNametags then return end local x,y,z = getCameraMatrix() for player in pairs(nametags) do while true do if not isElement(player) then break end if getElementDimension(player) ~= getElementDimension(g_Me) then break end local px,py,pz = getElementPosition ( player ) if processLineOfSight(x, y, z, px, py, pz, true, false, false, true, false, true) then break end local pdistance = getDistanceBetweenPoints3D ( x,y,z,px,py,pz ) if pdistance <= NAMETAG_DISTANCE then --Get screenposition local sx,sy = getScreenFromWorldPosition ( px, py, pz+0.95, 0.06 ) if not sx or not sy then break end --Calculate our components local scale = 1/(NAMETAG_SCALE * (pdistance / NAMETAG_DISTANCE)) local alpha = ((pdistance - NAMETAG_ALPHA_DISTANCE) / NAMETAG_ALPHA_DIFF) alpha = (alpha < 0) and NAMETAG_ALPHA or NAMETAG_ALPHA-(alpha*NAMETAG_ALPHA) scale = math.evalCurve(maxScaleCurve,scale) local textscale = math.evalCurve(textScaleCurve,scale) local textalpha = math.evalCurve(textAlphaCurve,alpha) local outlineThickness = NAMETAG_OUTLINE_THICKNESS*(scale) --Draw our text local r,g,b = getPlayerNametagColor(player) local offset = (scale) * NAMETAG_TEXT_BAR_SPACE/2 dxDrawText ( getPlayerName(player), sx, sy - offset, sx, sy - offset, tocolor(0,0,0,255), textscale*NAMETAG_TEXTSIZE, "pricedown", "center", "bottom", false, false, false ) dxDrawText ( getPlayerName(player), sx, sy - offset, sx, sy - offset, tocolor(r,g,b,textalpha), textscale*NAMETAG_TEXTSIZE, "pricedown", "center", "bottom", false, false, false ) --We draw three parts to make the healthbar. First the outline/background local drawX = sx - NAMETAG_WIDTH*scale/2 drawY = sy + offset local width,height = NAMETAG_WIDTH*scale, NAMETAG_HEIGHT*scale dxDrawRectangle ( drawX, drawY, width, height, tocolor(0,0,0,alpha) ) --Next the inner background local health local p local r,g health = getElementHealth ( player ) health = math.max(health, 0)/100 p = -510*(health^2) r,g = math.max(math.min(p + 255*health + 255, 255), 0), math.max(math.min(p + 765*health, 255), 0) if health > 1.0 then health = 1.0 end dxDrawRectangle ( drawX + outlineThickness, drawY + outlineThickness, width - outlineThickness*2, height - outlineThickness*2, tocolor(r,g,0,0.4*alpha) ) --Finally, the actual health dxDrawRectangle ( drawX + outlineThickness, drawY + outlineThickness, health*(width - outlineThickness*2), height - outlineThickness*2, tocolor(r,g,0,alpha) ) end break end end end ) ---------------THE FOLLOWING IS THE MANAGEMENT OF NAMETAGS----------------- addEventHandler('onClientResourceStart', g_ResRoot, function() for i,player in ipairs(getElementsByType"player") do if player ~= g_Me then nametag.create ( player ) end end end ) addEventHandler ( "onClientPlayerJoin", g_Root, function() if source == g_Me then return end setPlayerNametagShowing ( source, false ) nametag.create ( source ) end ) addEventHandler ( "onClientPlayerQuit", g_Root, function() nametag.destroy ( source ) end ) -- Math functions function math.lerp(from,to,alpha) return from + (to-from) * alpha end -- curve is { {x1, y1}, {x2, y2}, {x3, y3} ... } function math.evalCurve( curve, input ) -- First value if input[1][1] then return curve[1][2] end -- Interp value for idx=2,#curve do if input[idx][1] then local x1 = curve[idx-1][1] local y1 = curve[idx-1][2] local x2 = curve[idx][1] local y2 = curve[idx][2] -- Find pos between input points local alpha = (input - x1)/(x2 - x1); -- Map to output points return math.lerp(y1,y2,alpha) end end -- Last value return curve[#curve][2] end
-
Nope they are not, they still spawning at the same time. I'll try to change for 10 seconds or something.
-
Thanks !! But they still spawn really fast. I want some delay on them. Can you do that or tell me what do do .. Im trying to learn and stop asking on the forum.
-
Now it's weird, for example i have max zombies 3, then it spawns 3 zombies with the same skin and after 1 second it spawns more 3 zombies and on and on.. They all have the same skin or about 2 skins...
-
WARNING: [cripts]\zombies\zombie_server.lua:461: Bad argument @ 'setElementData' [Expected element at argument 1, got nil]
-
It's all broken!! Some lines need "(" or "FOR" .. Im confused.
-
WARNING: Loading script failed: [scripts]\zombies\zombie_server.lua:4: '=' expected near 'function' What's wrong? I tried placing "createZombie function = 2" but nope.. didn't work.
-
I did the lua thing but it doesnt show the script i had to do code=text, hope you understand it: ZombieLimit = get("zombies.MaxZombies")-- HOW MANY ZOMBIES SHOULD EXIST AT MAXIMUM? ZombieStreaming = get("zombies.StreamMethod") -- 1 to constantly stream zombies, 0 to only allow zombies to spawn via createZombie function, 2 to only allow spawning at set spawnpoints ZombiePedSkins = {13,22,56,67,68,70,92,97,105,108,126,127,152,162,167,188,195,206,209,212,229,230,258} --ALTERNATE SKIN LISTS FOR ZOMBIES (SHORTER LIST IS TEXTURED ZOMBIES ONLY) --ZombiePedSkins = {7,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,43,44,45,36,37,38,49,50,51, 52,53,54,55,56,57,58,59,60,61,62,63,64,66,67,68,70,71,72,73,75,76,77,78,79,80,81,82,83,85,87,88,89,90,91,92,93,94,95,96,97,98,9 9,100,101,102,103,104,105,106,108,109,110,112,113,114,115,116,117,118,120,121,122,123,124,125,126,127,129,130,131,132,133, 134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,150,151,152,153,154,155,156,157,158,159,161,162,163,164,165,1 66,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,193,194,195,196,19 7,198,199,200,201,202,203,204,205,206,207,209,210,211,212,213,214,215,216,217,218,219,229,230,231,232,233,234,235,236,237, 238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,275,276,279,281,2 82,283,284,285,286,288 } ZombieSpeed = get("zombies.Speed") if ZombieSpeed == 0 then --super slow zombies (goofy looking) chaseanim = "WALK_drunk" checkspeed = 2000 elseif ZombieSpeed == 1 then -- normal speed chaseanim = "run_old" checkspeed = 1000 elseif ZombieSpeed == 2 then -- rocket zombies (possibly stressful on server) chaseanim = "Run_Wuzi" checkspeed = 680 else -- defaults back to normal chaseanim = "run_old" checkspeed = 1000 end resourceRoot = getResourceRootElement() moancount =0 moanlimit = 10 everyZombie = { } --IDLE BEHAVIOUR OF A ZOMBIE function Zomb_Idle (ped) if isElement(ped) then if ( getElementData ( ped, "status" ) == "idle" ) and ( isPedDead ( ped ) == false ) and (getElementData (ped, "zombie") == true) then local action = math.random( 1, 6 ) if action < 4 then -- walk a random direction local rdmangle = math.random( 1, 359 ) setPedRotation( ped, rdmangle ) setPedAnimation ( ped, "PED", "Player_Sneak", -1, true, true, true) setTimer ( Zomb_Idle, 7000, 1, ped ) elseif action == 4 then -- get on the ground setPedAnimation ( ped, "MEDIC", "cpr", -1, false, true, true) setTimer ( Zomb_Idle, 4000, 1, ped ) elseif action == 5 then -- stand still doing nothing setPedAnimation ( ped ) setTimer ( Zomb_Idle, 4000, 1, ped ) end end end end --BEHAVIOUR WHILE CHASING PLAYERS function Zomb_chase (ped, Zx, Zy, Zz ) if isElement(ped) then if (getElementData ( ped, "status" ) == "chasing") and (getElementData (ped, "zombie") == true) then local x, y, z = getElementPosition( ped ) if (getElementData ( ped, "target" ) == nil) and getElementData ( ped, "Tx" ) ~= false then local Px = getElementData ( ped, "Tx" ) local Py = getElementData ( ped, "Ty" ) local Pz = getElementData ( ped, "Tz" ) local Pdistance = (getDistanceBetweenPoints3D( Px, Py, Pz, x, y, z )) if (Pdistance < 1.5 ) then setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 2000, 1, ped ) end end local distance = (getDistanceBetweenPoints3D( x, y, z, Zx, Zy, Zz )) if (distance < 1 ) then -- IF THE PED HASNT MOVED if (getElementData ( ped, "target" ) == nil) then local giveup = math.random( 1, 15 ) if giveup == 1 then setElementData ( ped, "status", "idle" ) else local action = math.random( 1, 2 ) if action == 1 then setPedAnimation ( ped ) triggerClientEvent ( "Zomb_Punch", getRootElement(), ped ) setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped ) setTimer ( Zomb_chase, 2000, 1, ped, x, y, z ) elseif action == 2 then setPedAnimation ( ped ) triggerClientEvent ( "Zomb_Jump", getRootElement(), ped ) setTimer ( Zomb_chase, 3500, 1, ped, x, y, z ) end end else local Ptarget = (getElementData ( ped, "target" )) if isElement(Ptarget) then local Px, Py, Pz = getElementPosition( Ptarget ) local Pdistance = (getDistanceBetweenPoints3D( Px, Py, Pz, Zx, Zy, Zz )) if (Pdistance < 1.2 ) then -- ATTACK A PLAYER IF THEY ARE CLOSE if ( isPedDead ( Ptarget ) ) then --EAT A DEAD PLAYER setPedAnimation ( ped ) setPedAnimation ( ped, "MEDIC", "cpr", -1, false, true, false) setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 10000, 1, ped ) setTimer ( function (ped) if ( isElement ( ped ) ) then setPedRotation ( ped, getPedRotation(ped)-180) end end, 10000, 1, ped ) zmoan(ped) else local action = math.random( 1, 6 ) if action == 1 then setPedAnimation ( ped) triggerClientEvent ( "Zomb_Jump", getRootElement(), ped ) setTimer ( Zomb_chase, 2000, 1, ped, x, y, z ) else setPedAnimation ( ped) triggerClientEvent ( "Zomb_Punch", getRootElement(), ped ) setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped ) setTimer ( Zomb_chase, 2000, 1, ped, x, y, z ) end end else if ( isPedDead (Ptarget) ) then setTimer ( function (ped) if ( isElement ( ped ) ) then setElementData ( ped, "status", "idle" ) end end, 2000, 1, ped ) setTimer ( function (ped) if ( isElement ( ped ) ) then setPedRotation ( ped, getPedRotation(ped)-180) end end, 1800, 1, ped ) else local action = math.random( 1, 2 ) if action == 1 then setPedAnimation ( ped) triggerClientEvent ( "Zomb_Punch", getRootElement(), ped ) setTimer ( function (ped) if ( isElement ( ped ) ) then setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true ) end end, 800, 1, ped ) setTimer ( Zomb_chase, 2000, 1, ped, x, y, z ) elseif action == 2 then setPedAnimation ( ped) triggerClientEvent ( "Zomb_Jump", getRootElement(), ped ) setTimer ( Zomb_chase, 2000, 1, ped, x, y, z ) end end end else setElementData ( ped, "status", "idle" ) end end else setPedAnimation ( ped, "ped", chaseanim, -1, true, true, true) --KEEP WALKING setTimer ( Zomb_chase, checkspeed, 1, ped, x, y, z ) --CHECK AGAIN end end end end --SET THE DIRECTION OF THE ZOMBIE function setangle () for theKey,ped in ipairs(everyZombie) do if isElement(ped) then if ( getElementData ( ped, "status" ) == "chasing" ) then local x local y local z local px local py local pz if ( getElementData ( ped, "target" ) ~= nil ) then local ptarget = getElementData ( ped, "target" ) if isElement(ptarget) then x, y, z = getElementPosition( ptarget ) px, py, pz = getElementPosition( ped ) else setElementData ( ped, "status", "idle" ) x, y, z = getElementPosition( ped ) px, py, pz = getElementPosition( ped ) end zombangle = ( 360 - math.deg ( math.atan2 ( ( x - px ), ( y - py ) ) ) ) % 360 -- MAGIC SPELL TO MAKE PEDS LOOK AT YOU setPedRotation( ped, zombangle ) elseif ( getElementData ( ped, "target" ) == nil ) and (getElementData ( ped, "Tx" ) ~= false) then --IF THE PED IS AFTER THE PLAYERS LAST KNOWN WHEREABOUTS x = getElementData ( ped, "Tx" ) y = getElementData ( ped, "Ty" ) z = getElementData ( ped, "Tz" ) px, py, pz = getElementPosition( ped ) zombangle = ( 360 - math.deg ( math.atan2 ( ( x - px ), ( y - py ) ) ) ) % 360 -- MAGIC SPELL TO MAKE PEDS LOOK AT YOU setPedRotation( ped, zombangle ) end end end end end --SETS THE ZOMBIE ACTIVITY WHEN STATUS CHANGES addEventHandler ( "onElementDataChange", getRootElement(), function ( dataName ) if getElementType ( source ) == "ped" and dataName == "status" then if (getElementData (source, "zombie") == true) then if ( isPedDead ( source ) == false ) then if (getElementData ( source, "status" ) == "chasing" ) then local Zx, Zy, Zz = getElementPosition( source ) setTimer ( Zomb_chase, 1000, 1, source, Zx, Zy, Zz ) local newtarget = (getElementData ( source, "target" )) if isElement (newtarget) then if getElementType ( newtarget ) == "player" then setElementSyncer ( source, newtarget ) end
-
Heres the error in the console: WARNING: [scripts]\zombies\zombie_server.lua:375: Bad argument @ 'setElementData' [Expected element at argument 1, got lua-timer]
-
Sorry for double posting, and no they don't spawn after 5 seconds.
-
Oh another problem, the are not spawning. you think 5000ms is too much?
