Fix sightlines and broken Menu entries
This commit is contained in:
parent
0ad17e5a9b
commit
fed65faaf8
@ -7,7 +7,7 @@
|
||||
<AutoVariable width="fill" target="lightesp.enable" label="Enable light ESP" tooltip="Show a red and green dot on the heads of enemies."/>
|
||||
</List>
|
||||
</Box>
|
||||
<Box padding="12 6 6 6" width="content" height="content" name="Targets" y="81">
|
||||
<Box padding="12 6 6 6" width="content" height="content" name="Targets" y="65">
|
||||
<List width="150">
|
||||
<AutoVariable width="fill" target="esp.show.teammates" label="Teammate ESP" tooltip="Shows ESP on teammates."/>
|
||||
<AutoVariable width="fill" target="esp.show.local" label="ESP on local player" tooltip="Shows ESP on yourself."/>
|
||||
@ -71,7 +71,13 @@
|
||||
<AutoVariable width="fill" target="esp.box.corner-size" label="Corner size"/>
|
||||
<AutoVariable width="fill" target="esp.bones" label="Bone ESP"/>
|
||||
<AutoVariable width="fill" target="esp.bones.color" label="Bone color" tooltip="Colors bones according to player state."/>
|
||||
<AutoVariable width="fill" target="esp.sightlines" label="Sightlines"/>
|
||||
<LabeledObject width="fill" label="Sightlines">
|
||||
<Select target="esp.sightlines">
|
||||
<Option name="Off" value="0"/>
|
||||
<Option name="Snipers only" value="1"/>
|
||||
<Option name="All" value="2"/>
|
||||
</Select>
|
||||
</LabeledObject>
|
||||
<AutoVariable width="fill" target="esp.expand" label="Expand" tooltip="Make ESP larger or smaller."/>
|
||||
<LabeledObject width="fill" label="Text position">
|
||||
<Select target="esp.text-position">
|
||||
@ -91,13 +97,6 @@
|
||||
<Option name="Corners" value="2"/>
|
||||
</Select>
|
||||
</LabeledObject>
|
||||
<LabeledObject width="fill" label="Tracer mode">
|
||||
<Select target="esp.tracers-mode">
|
||||
<Option name="Off" value="0"/>
|
||||
<Option name="Center" value="1"/>
|
||||
<Option name="Bottom" value="2"/>
|
||||
</Select>
|
||||
</LabeledObject>
|
||||
<LabeledObject width="fill" label="Health mode" tooltip="Sets the healthbar mode.">
|
||||
<Select target="esp.health-bar">
|
||||
<Option name="None" value="0"/>
|
||||
@ -109,7 +108,7 @@
|
||||
<AutoVariable width="fill" target="esp.hide-invis" label="Hide invisible"/>
|
||||
</List>
|
||||
</Box>
|
||||
<Box padding="12 6 6 6" width="content" height="content" name="Player Info" x="170" y="300">
|
||||
<Box padding="12 6 6 6" width="content" height="content" name="Player Info" x="170" y="270">
|
||||
<List width="150">
|
||||
<AutoVariable width="fill" target="misc.playerinfo.draw-kda" label="Draw K/D over head"/>
|
||||
<AutoVariable width="fill" target="misc.playerinfo.draw-level" label="That's how Mafia works"/>
|
||||
@ -131,21 +130,7 @@
|
||||
<AutoVariable width="fill" target="esp.online.software" label="Online: software"/>
|
||||
</List>
|
||||
</Box>
|
||||
<Box padding="12 6 6 6" width="content" height="content" name="Emoji" x="340" y="155">
|
||||
<List width="150">
|
||||
<LabeledObject width="fill" label="Mode" tooltip="Shows an emoji on the heads of ESP targets.">
|
||||
<Select target="esp.emoji.mode">
|
||||
<Option name="None" value="0"/>
|
||||
<Option name="Joy" value="1"/>
|
||||
<Option name="Thinking" value="2"/>
|
||||
</Select>
|
||||
</LabeledObject>
|
||||
<AutoVariable width="fill" target="esp.emoji.min-size" label="Min size"/>
|
||||
<AutoVariable width="fill" target="esp.emoji.scaling" label="Scaling"/>
|
||||
<AutoVariable width="fill" target="esp.emoji.size" label="Size"/>
|
||||
</List>
|
||||
</Box>
|
||||
<Box padding="12 6 6 6" width="content" height="content" name="Dominatemark" x="340" y="240">
|
||||
<Box padding="12 6 6 6" width="content" height="content" name="Dominatemark" x="340" y="155">
|
||||
<List width="150">
|
||||
<AutoVariable width="fill" target="dominatemark.enable" label="Enable" tooltip="Enables a mark on people you are dominating, similar to the one shown if someone is dominating you."/>
|
||||
<AutoVariable width="fill" target="dominatemark.min-size" label="Draw min size"/>
|
||||
|
@ -475,20 +475,10 @@ void _FASTCALL ProcessEntityPT(CachedEntity *ent)
|
||||
auto position = ent->m_vecDormantOrigin();
|
||||
if (!position)
|
||||
return;
|
||||
static Vector screen;
|
||||
if (!draw::EntityCenterToScreen(ent, screen))
|
||||
return;
|
||||
|
||||
// Reset the collide cache
|
||||
ent_data.has_collide = false;
|
||||
|
||||
// Get if ent should be transparent
|
||||
bool transparent = vischeck && ent_data.transparent;
|
||||
|
||||
// Sightline esp
|
||||
if (sightlines && type == ENTITY_PLAYER)
|
||||
{
|
||||
|
||||
// Logic for using the enum to sort out snipers
|
||||
if ((int) sightlines == 2 || ((int) sightlines == 1 && CE_INT(ent, netvar.iClass) == tf_sniper))
|
||||
{
|
||||
@ -527,8 +517,8 @@ void _FASTCALL ProcessEntityPT(CachedEntity *ent)
|
||||
// Get the end distance from the trace
|
||||
float end_distance = trace.endpos.DistTo(eye_position);
|
||||
|
||||
// Loop and look back untill we have a vector on screen
|
||||
for (int i = 1; i > 400; i++)
|
||||
// Loop and look back until we have a vector on screen
|
||||
for (int i = 1; i < 500; i++)
|
||||
{
|
||||
// Subtract 40 multiplyed by the tick from the end distance
|
||||
// and use that as our length to check
|
||||
@ -555,9 +545,9 @@ void _FASTCALL ProcessEntityPT(CachedEntity *ent)
|
||||
found_scn1 = false;
|
||||
|
||||
// Loop and look back untill we have a vector on screen
|
||||
for (int i = 1; i > 400; i++)
|
||||
for (int i = 1; i < 500; i++)
|
||||
{
|
||||
// Multiply starting distance by 40, multiplyed by the
|
||||
// Multiply starting distance by 15, multiplyed by the
|
||||
// loop tick
|
||||
Vector start_vector = forward_t * (10 * i) + eye_position;
|
||||
// We dont want it to go too far
|
||||
@ -580,6 +570,17 @@ void _FASTCALL ProcessEntityPT(CachedEntity *ent)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static Vector screen;
|
||||
if (!draw::EntityCenterToScreen(ent, screen))
|
||||
return;
|
||||
|
||||
// Reset the collide cache
|
||||
ent_data.has_collide = false;
|
||||
|
||||
// Get if ent should be transparent
|
||||
bool transparent = vischeck && ent_data.transparent;
|
||||
|
||||
// Box esp
|
||||
if (box_esp || box_3d_player || box_3d_building)
|
||||
{
|
||||
@ -725,7 +726,6 @@ void _FASTCALL ProcessEntityPT(CachedEntity *ent)
|
||||
{
|
||||
draw::RectangleOutlined(min_x, min_y - 6, max_x - min_x + 1, 7, border, 0.5f);
|
||||
draw::Rectangle(min_x + hbw, min_y - 5, -hbw, 5, hp);
|
||||
|
||||
}
|
||||
// Bottom horizontal health bar
|
||||
else if (*healthbar == 2)
|
||||
@ -910,7 +910,7 @@ void _FASTCALL ProcessEntity(CachedEntity *ent)
|
||||
{
|
||||
// We don't actually care about this vector at all. It just exists so WorldToScreen can function normally
|
||||
static Vector origin_screen;
|
||||
if (!draw::WorldToScreen(*origin, origin_screen))
|
||||
if (!sightlines && ent->m_Type() != ENTITY_PLAYER && !draw::WorldToScreen(*origin, origin_screen))
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1348,7 +1348,6 @@ void _FASTCALL ProcessEntity(CachedEntity *ent)
|
||||
}
|
||||
else if (ent->m_Type() == ENTITY_PLAYER && ent->m_bAlivePlayer())
|
||||
{
|
||||
|
||||
// Local player handling
|
||||
if (!(local_esp && g_IInput->CAM_IsThirdPerson()) && ent->m_IDX == g_IEngine->GetLocalPlayer())
|
||||
return;
|
||||
@ -1675,7 +1674,7 @@ void _FASTCALL DrawBox(CachedEntity *ent, const rgba_t &clr)
|
||||
// Function to draw box corners, Used by DrawBox
|
||||
void BoxCorners(int minx, int miny, int maxx, int maxy, const rgba_t &color, bool transparent)
|
||||
{
|
||||
const rgba_t &black = transparent ? colors::Transparent(colors::black) : colors::black;
|
||||
const rgba_t &black = transparent ? colors::Transparent(colors::black) : colors::black;
|
||||
const float heightSize = ((float) *box_corner_size_height / 100) * (maxy - miny - 3);
|
||||
const float widthSize = ((float) *box_corner_size_width / 100) * (maxx - minx - 2);
|
||||
|
||||
|
Reference in New Issue
Block a user