sync with upstream

This commit is contained in:
Nikolay Korolev
2020-05-07 16:59:40 +03:00
38 changed files with 638 additions and 479 deletions

View File

@ -317,8 +317,8 @@ int32
CPhysical::ProcessEntityCollision(CEntity *ent, CColPoint *colpoints)
{
int32 numSpheres = CCollision::ProcessColModels(
GetMatrix(), *CModelInfo::GetModelInfo(GetModelIndex())->GetColModel(),
ent->GetMatrix(), *CModelInfo::GetModelInfo(ent->GetModelIndex())->GetColModel(),
GetMatrix(), *GetColModel(),
ent->GetMatrix(), *ent->GetColModel(),
colpoints,
nil, nil); // No Lines allowed!
if(numSpheres > 0){
@ -1528,7 +1528,8 @@ CPhysical::ProcessCollisionSectorList(CPtrList *lists)
if(A->GetModelIndex() == MI_RCBANDIT)
adhesion *= 0.2f;
else if(IsBoatModel(A->GetModelIndex())){
// TODO(MIAMI): check this
else if(A->IsVehicle() && ((CVehicle*)A)->IsBoat()){
if(aColPoints[i].normal.z > 0.6f){
if(CSurfaceTable::GetAdhesionGroup(aColPoints[i].surfaceB) == ADHESIVE_LOOSE)
adhesion *= 3.0f;