//------------------------------------------------------------------------ int CScriptBind_Vehicle::DisableEngine(IFunctionHandler *pH, bool disable) { if (CVehicle* pVehicle = GetVehicle(pH)) { if (pVehicle->GetMovement()) pVehicle->GetMovement()->DisableEngine(disable); } return pH->EndFunction(); }
//----------------------------------------------------------------------------- // Purpose: // Input : pPlayer - //----------------------------------------------------------------------------- void CChoreoGenericServerVehicle::ItemPostFrame( CBasePlayer *player ) { Assert( player == GetDriver() ); GetDrivableVehicle()->ItemPostFrame( player ); if (( player->m_afButtonPressed & IN_USE ) || GetVehicle()->ShouldForceExit() ) { GetVehicle()->ClearForcedExit(); if ( GetDrivableVehicle()->CanExitVehicle(player) ) { // Let the vehicle try to play the exit animation if ( !HandlePassengerExit( player ) && ( player != NULL ) ) { player->PlayUseDenySound(); } } } }
//------------------------------------------------------------------------ int CScriptBind_Vehicle::EnableMovement(IFunctionHandler *pH, bool enable) { if (CVehicle* pVehicle = GetVehicle(pH)) { if (pVehicle->GetMovement()) pVehicle->GetMovement()->EnableMovementProcessing(enable); } return pH->EndFunction(); }
float CIVVehicle::GetSteeringAngle() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return pVehicle->m_fSteering; return 0.0f; }
//------------------------------------------------------------------------ int CScriptBind_Vehicle::AddSeat(IFunctionHandler* pH, SmartScriptTable paramsTable) { IVehicle *pVehicle = GetVehicle(pH); if (pVehicle) { pVehicle->AddSeat(paramsTable); } return pH->EndFunction(); }
//------------------------------------------------------------------------ int CScriptBind_Vehicle::HasHelper(IFunctionHandler* pH, const char* name) { if (IVehicle *pVehicle = GetVehicle(pH)) { IVehicleHelper* pHelper = pVehicle->GetHelper(name); return pH->EndFunction(pHelper != NULL); } return pH->EndFunction(false); }
float CIVVehicle::GetDirtLevel() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return pVehicle->m_fDirtLevel; return 0.0f; }
bool CIVVehicle::GetEngineStatus() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(IS_BIT_SET(pVehicle->m_byteFlags1, 8)) return true; return false; }
BYTE CIVVehicle::GetTextureVariationCount() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return g_pCore->GetGame()->GetModelInfo(pVehicle->m_wModelIndex)->GetModelInfo()->byteTextureVariationCount; return 255; }
float CIVVehicle::GetPetrolTankHealth() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return pVehicle->m_fPetrolTankHealth; return 0.0f; }
DWORD CIVVehicle::GetDoorLockState() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return pVehicle->m_dwDoorLockState; return 0; }
float CIVVehicle::GetBrakePedal() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return pVehicle->m_fBrakePedal; return 0.0f; }
float CIVVehicle::GetEngineHealth() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return pVehicle->m_fEngineHealth; return 0.0f; }
BYTE CIVVehicle::GetMaxPasssengers() { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) return pVehicle->m_byteMaxPassengers; return 0; }
Creature* ObjectAccessor::GetCreatureOrPetOrVehicle(WorldObject const &u, uint64 guid) { if(Creature *unit = GetPet(guid)) return unit; if(Creature *unit = GetVehicle(guid)) return unit; return GetCreature(u, guid); }
void CIVVehicle::SetBrakePedal(float fBrakePedal) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_fBrakePedal = fBrakePedal; }
void CIVVehicle::SetDirtLevel(float fDirtLevel) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_fDirtLevel = fDirtLevel; }
//------------------------------------------------------------------------ int CScriptBind_Vehicle::Destroy(IFunctionHandler* pH) { CVehicle* pVehicle = GetVehicle(pH); if (!pVehicle) return pH->EndFunction(); pVehicle->Destroy(); return pH->EndFunction(); }
void CIVVehicle::SetDriver(IVPed * pPed) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_pDriver = pPed; }
void CIVVehicle::SetAlarmDuration(WORD wDuration) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_wAlarm = wDuration; }
void CIVVehicle::SetDoorLockState(DWORD dwDoorLockState) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_dwDoorLockState = dwDoorLockState; }
void CIVVehicle::SetPetrolTankHealth(float fPetrolTankHealth) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_fPetrolTankHealth = fPetrolTankHealth; }
//------------------------------------------------------------------------ int CScriptBind_Vehicle::ChangeSeat(IFunctionHandler* pH, ScriptHandle actorHandle, int seatId, bool isAnimationEnabled) { CVehicle* pVehicle = GetVehicle(pH); if (!pVehicle || !actorHandle.n) return pH->EndFunction(0); bool ret = true; pVehicle->ChangeSeat((EntityId)actorHandle.n, seatId, 0 ); return pH->EndFunction(ret); }
//------------------------------------------------------------------------ int CScriptBind_Vehicle::OnSpawnComplete(IFunctionHandler* pH) { CVehicle* pVehicle = GetVehicle(pH); if (!pVehicle) return pH->EndFunction(); pVehicle->OnSpawnComplete(); return pH->EndFunction(); }
void CIVVehicle::SetSteeringAngle(float fSteeringAngle) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_fSteering = fSteeringAngle; }
void CIVVehicle::SetPassenger(BYTE bytePassengerSeatId, IVPed * pPassenger) { // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) { if(bytePassengerSeatId < 8) pVehicle->m_pPassengers[bytePassengerSeatId] = pPassenger; } }
void CIVVehicle::SetMaxPassengers(BYTE byteMaxPassengers) { #ifdef EXT_LOG CLogFile::Printf(__FUNCSIG__); #endif // Do we have a valid vehicle pointer? IVVehicle * pVehicle = GetVehicle(); if(pVehicle) pVehicle->m_byteMaxPassengers = byteMaxPassengers; }
void CIVVehicle::SetCarCanBurstTyres(bool bState) { IVVehicle *pVehicle = GetVehicle(); if(pVehicle) { if(bState) *(BYTE *)(pVehicle + 0xF67) &= 0xEFu; else *(BYTE *)(pVehicle + 0xF67) |= 0x10u; } }
void CIVVehicle::RemoveCarWindow(int iWindow) { IVVehicle * pVehicle = GetVehicle(); if(pVehicle) { DWORD dwFunctionAddress = COffsets::FUNC_CVehicle__RemoveVehicleWindow; _asm push iWindow; _asm mov ecx, pVehicle; _asm call COffsets::FUNC_CVehicle__RemoveVehicleWindow; } }
void CIVVehicle::SetCarCanBeDamaged(bool bDamage) { IVVehicle * pVehicle = GetVehicle(); if(pVehicle) { DWORD byteFlagDamage = *(DWORD *)(pVehicle + 0x118); // 280 (flag?) if(bDamage) *(DWORD *)byteFlagDamage &= 0x400u; else *(DWORD *)byteFlagDamage |= 0xFFFFFBFFu; } }