Add PracticeBot alias detection in search() and detect()
parent
ca0ff013d4
commit
0fddd79501
|
@ -809,16 +809,30 @@ bool runSearch(CBotVar* var, Math::Vector pos, int& exception, std::function<boo
|
|||
{
|
||||
while ( array != nullptr )
|
||||
{
|
||||
if (array->GetValInt() == OBJECT_MOBILEpr)
|
||||
{
|
||||
type_v.push_back(OBJECT_MOBILEwt);
|
||||
type_v.push_back(OBJECT_MOBILEtt);
|
||||
type_v.push_back(OBJECT_MOBILEft);
|
||||
type_v.push_back(OBJECT_MOBILEit);
|
||||
}
|
||||
type_v.push_back(static_cast<ObjectType>(array->GetValInt()));
|
||||
array = array->GetNext();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (type != OBJECT_NULL)
|
||||
if (type != OBJECT_NULL && type != OBJECT_MOBILEpr)
|
||||
{
|
||||
type_v.push_back(static_cast<ObjectType>(type));
|
||||
}
|
||||
else if (type == OBJECT_MOBILEpr)
|
||||
{
|
||||
type_v.push_back(OBJECT_MOBILEwt);
|
||||
type_v.push_back(OBJECT_MOBILEtt);
|
||||
type_v.push_back(OBJECT_MOBILEft);
|
||||
type_v.push_back(OBJECT_MOBILEit);
|
||||
}
|
||||
}
|
||||
|
||||
return code(type_v, pos, minDist, maxDist, sens < 0, filter);
|
||||
|
@ -1169,16 +1183,30 @@ bool CScriptFunctions::rDetect(CBotVar* var, CBotVar* result, int& exception, vo
|
|||
{
|
||||
while ( array != nullptr )
|
||||
{
|
||||
if (array->GetValInt() == OBJECT_MOBILEpr)
|
||||
{
|
||||
type_v.push_back(OBJECT_MOBILEwt);
|
||||
type_v.push_back(OBJECT_MOBILEtt);
|
||||
type_v.push_back(OBJECT_MOBILEft);
|
||||
type_v.push_back(OBJECT_MOBILEit);
|
||||
}
|
||||
type_v.push_back(static_cast<ObjectType>(array->GetValInt()));
|
||||
array = array->GetNext();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (type != OBJECT_NULL)
|
||||
if (type != OBJECT_NULL && type != OBJECT_MOBILEpr)
|
||||
{
|
||||
type_v.push_back(static_cast<ObjectType>(type));
|
||||
}
|
||||
else if (type == OBJECT_MOBILEpr)
|
||||
{
|
||||
type_v.push_back(OBJECT_MOBILEwt);
|
||||
type_v.push_back(OBJECT_MOBILEtt);
|
||||
type_v.push_back(OBJECT_MOBILEft);
|
||||
type_v.push_back(OBJECT_MOBILEit);
|
||||
}
|
||||
}
|
||||
|
||||
pBest = CObjectManager::GetInstancePointer()->Radar(pThis, type_v, 0.0f, 45.0f*Math::PI/180.0f, 0.0f, 20.0f, false, FILTER_NONE, true);
|
||||
|
|
Loading…
Reference in New Issue