Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local function DrawMiniMap()
- // Draw Border
- draw.RoundedBox(4,18,ScrH()-202,254,164,Color(0,0,0,255))
- local MiniMap = {}
- -- rot = LocalPlayer():GetAngle()
- MiniMap.angles = Angle(90,0,0)
- MiniMap.origin = LocalPlayer():GetPos() + Vector(0, 0, Bo.mapMaxZoom)
- MiniMap.x = MapPosX
- MiniMap.y = MapPosY
- MiniMap.w = MapSizeW
- MiniMap.h = MapSizeH
- MiniMap.fov = 90
- local wep_color = LocalPlayer():GetWeaponColor()
- for _, npc in pairs( ents.FindByClass( "npc_*" ) ) do
- npc:SetNoDraw(true)
- end
- for _, props in pairs( ents.FindByClass( "prop_physics" ) ) do
- props:SetNoDraw(true)
- end
- for _,v in pairs(player.GetAll()) do
- v:SetNoDraw(true)
- end
- LocalPlayer():GetViewModel():SetNoDraw(true)
- LocalPlayer():SetWeaponColor(Vector(0,0,0))
- render.RenderView( MiniMap )
- for _,v in pairs(player.GetAll()) do
- v:SetNoDraw(false)
- end
- LocalPlayer():GetViewModel():SetNoDraw(false)
- LocalPlayer():SetWeaponColor(wep_color)
- for _, npc in pairs( ents.FindByClass( "npc_*" ) ) do
- npc:SetNoDraw(false)
- end
- for _, props in pairs( ents.FindByClass( "prop_physics" ) ) do
- props:SetNoDraw(false)
- end
- // Draw the Player Icon
- for _,v in pairs(ents.GetAll()) do
- if IsValid(v) then
- v = LocalPlayer()
- if v:IsPlayer() then
- icon = player_icon
- end
- if v:InVehicle() then
- icon = none_icon
- end
- if v:IsPlayer() then
- local Distance = localplayer:GetPos() - v:GetPos()
- Distance:Rotate( Angle(0,180,0) )
- local MapY = Distance.x * (MapSizeW / ((1000 * 1.5) + (Distance.z * 1.5)))
- local MapX = Distance.y * (MapSizeH / ((1000 * 1.5) + (Distance.z * 1.5)))
- if MapX < (MapSizeH / 1.3) && MapX > (-MapSizeH / 1.3) && MapY < (MapSizeW / 3.3) && MapY > (-MapSizeW / 3.3) then
- surface.SetDrawColor(255, 255, 255, 255)
- surface.SetMaterial(icon)
- surface.DrawTexturedRectRotated((MapPosX + (MapSizeW / 2) - (IconSize / 2)) - MapX,(MapPosY + (MapSizeH / 2 - (IconSize / 2))) - MapY, IconSize, IconSize,v:GetAngles().y)
- end
- end
- end
- end
- // Draw the NPC Icon
- for _,v in pairs(ents.GetAll()) do
- if IsValid(v) then
- if v:IsNPC() then
- icon = npc_icon
- end
- if v:IsNPC() then
- local Distance = localplayer:GetPos() - v:GetPos()
- Distance:Rotate( Angle(0,180,0) )
- local MapY = Distance.x * (MapSizeW / ((1000 * 1.5) + (Distance.z * 1.5)))
- local MapX = Distance.y * (MapSizeH / ((1000 * 1.5) + (Distance.z * 1.5)))
- if MapX < (MapSizeH / 1.3) && MapX > (-MapSizeH / 1.3) && MapY < (MapSizeW / 3.3) && MapY > (-MapSizeW / 3.3) then
- surface.SetDrawColor(255, 255, 255, 255)
- surface.SetMaterial(icon)
- surface.DrawTexturedRectRotated((MapPosX + (MapSizeW / 2) - (IconSize / 2)) - MapX,(MapPosY + (MapSizeH / 2 - (IconSize / 2))) - MapY, IconSize, IconSize,v:GetAngles().y)
- end
- end
- end
- end
- // Draw Cop Icon
- for _,v in pairs(player.GetAll()) do
- if IsValid(v) then
- if v:Team() == TEAM_POLICE or v:Team() == TEAM_CHIEF then
- icon = cop_icon
- end
- if v == LocalPlayer() then
- icon = none_icon
- end
- if v:IsPlayer() and v:Team() == TEAM_POLICE or v:Team() == TEAM_CHIEF then
- local Distance = localplayer:GetPos() - v:GetPos()
- Distance:Rotate( Angle(0,180,0) )
- local MapY = Distance.x * (MapSizeW / ((1000 * 1.5) + (Distance.z * 1.5)))
- local MapX = Distance.y * (MapSizeH / ((1000 * 1.5) + (Distance.z * 1.5)))
- if MapX < (MapSizeH / 1.3) && MapX > (-MapSizeH / 1.3) && MapY < (MapSizeW / 3.3) && MapY > (-MapSizeW / 3.3) then
- surface.SetDrawColor(255, 255, 255, 255)
- surface.SetMaterial(icon)
- surface.DrawTexturedRectRotated((MapPosX + (MapSizeW / 2) - (IconSize / 2)) - MapX,(MapPosY + (MapSizeH / 2 - (IconSize / 2))) - MapY, IconSize, IconSize,v:GetAngles().y)
- end
- end
- end
- end
- // Low Health Effect
- if LocalPlayer():Health() < 30 and LocalPlayer():Health() > 15 then
- draw.RoundedBox(0,20,ScrH()-200,250,160,Color(150,0,0,math.sin(CurTime()*2)*100))
- end
- if LocalPlayer():Health() < 15 and LocalPlayer():Health() > 0 then
- draw.RoundedBox(0,20,ScrH()-200,250,160,Color(255,0,0,math.sin(CurTime()*5)*50))
- end
- if LocalPlayer():isWanted() then
- if not blue then
- draw.RoundedBox(0,20,ScrH()-200,250,160,Color(0,0,255,math.sin(CurTime()*4)*120))
- else
- draw.RoundedBox(0,20,ScrH()-200,250,160,Color(0,0,255,math.sin(CurTime()*5)*130))
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement