Exemple #1
0
void cmdCreateVehicle(PCHAR szCmd)
{
	if(!tSettings.bDebug) return;

	if(!strlen(szCmd)){
		pChatWindow->AddDebugMessage("Usage: /vehicle (vehicle id).");
		return;
	}	
	int iVehicleType = atoi(szCmd);

	if((iVehicleType < 130) || (iVehicleType > 236))
	{
		pChatWindow->AddDebugMessage("Invalid vehicle ID.");
		return;
	}

	pGame->RequestModel(iVehicleType);
	pGame->LoadRequestedModels();
	while(pGame->IsModelLoaded(iVehicleType)==FALSE) Sleep(5);

	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	if(pPlayer) 
	{
		MATRIX4X4 matPlayer;
		pPlayer->GetMatrix(&matPlayer);
		CVehicle *pTestVehicle = pGame->NewVehicle(iVehicleType,
			(matPlayer.vPos.X - 5.0f), (matPlayer.vPos.Y - 5.0f),
			matPlayer.vPos.Z, 0.0f);
	}
}
Exemple #2
0
BOOL CRemotePlayer::Spawn(BYTE byteTeam, int iSkin, VECTOR * vecPos, float fRotation, DWORD dwColor, BYTE byteFightingStyle, BOOL bVisible)
{
	if(!pGame->IsGameLoaded()) return FALSE;

	if(m_pPlayerPed != NULL) {
		m_pPlayerPed->Destroy();
		delete m_pPlayerPed;
	}

	CPlayerPed *pPlayer = pGame->NewPlayer(iSkin,vecPos->X,vecPos->Y,vecPos->Z,fRotation);
	
	if(pPlayer)
	{		
		if(dwColor!=0) SetPlayerColor(dwColor);
		if(pNetGame->m_bShowPlayerMarkers) pPlayer->ShowMarker(m_PlayerID);

		m_pPlayerPed = pPlayer;
		m_fReportedHealth = 100.0f;
		pPlayer->SetKeys(0,0,0);
		pPlayer->SetFightingStyle(byteFightingStyle);
		pPlayer->SetVisible(bVisible);

		SetState(PLAYER_STATE_SPAWNED);

		return TRUE;
	}

	SetState(PLAYER_STATE_NONE);
	return FALSE;
}
Exemple #3
0
// SetZAngle
void Script_SetPlayerZAngle(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();
	float fRotation;

	bitStream->Read(fRotation);
	pPlayer->SetRotation(fRotation);
}
Exemple #4
0
// setAction
void Script_SetPlayerAction(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();
	BYTE Action;

	bitStream->Read(Action);
	pPlayer->SetAction(Action);
}
Exemple #5
0
// setPlayerRotation
void Script_SetPlayerRotation(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();
	float playerRot;

	bitStream->Read(playerRot);
	pPlayer->SetRotation(playerRot);
}
Exemple #6
0
void CClientPad::DoPulse ( CClientPed * pPed )
{
    CPlayerPed * pGamePlayer = pPed->GetGamePlayer ();
    if ( pGamePlayer )
    {
        bool bIsDead = false, bInVehicle = false;
        CTask * pTask = pPed->GetTaskManager ()->GetTask ( TASK_PRIORITY_EVENT_RESPONSE_NONTEMP );
        if ( pTask && pTask->GetTaskType () == TASK_SIMPLE_DEAD ) bIsDead = true;
        if ( pGamePlayer->GetVehicle () ) bInVehicle = true;

        CControllerState cs;
        memset ( &cs, 0, sizeof ( CControllerState ) );
        if ( !bIsDead )
        {
            if ( !bInVehicle )
            {
                cs.ButtonCircle = ( m_bStates [ 0 ] ) ? 255 : 0; // Fire
                cs.LeftStickY = ( ( m_bStates [ 3 ] && m_bStates [ 4 ] ) ||
                                ( !m_bStates [ 3 ] && !m_bStates [ 4 ] ) ) ? 0 :
                                ( m_bStates [ 3 ] ) ? -128 : 128;
                cs.LeftStickX = ( ( m_bStates [ 5 ] && m_bStates [ 6 ] ) ||
                                ( !m_bStates [ 5 ] && !m_bStates [ 6 ] ) ) ? 0 :
                                ( m_bStates [ 5 ] ) ? -128 : 128;
                cs.ButtonSquare = ( m_bStates [ 11 ] ) ? 255 : 0; // Jump
                cs.ButtonCross = ( m_bStates [ 12 ] ) ? 255 : 0; // Sprint
                cs.ShockButtonR = ( m_bStates [ 13 ] ) ? 255 : 0; // Look Behind
                cs.ShockButtonL = ( m_bStates [ 14 ] ) ? 255 : 0; // Crouch
                cs.LeftShoulder1 = ( m_bStates [ 15 ] ) ? 255 : 0; // Action
                cs.m_bPedWalk = ( m_bStates [ 16 ] ) ? 255 : 0; // Walk
                cs.RightShoulder1 = ( m_bStates [ 39 ] ) ? 255 : 0; // Aim Weapon
            }
            else
            {
                cs.ButtonCircle = ( m_bStates [ 17 ] ) ? 255 : 0; // Fire
                cs.LeftShoulder1 = ( m_bStates [ 18 ] ) ? 255 : 0; // Secondary Fire
                cs.LeftStickX = ( ( m_bStates [ 19 ] && m_bStates [ 20 ] ) ||
                                ( !m_bStates [ 19 ] && !m_bStates [ 20 ] ) ) ? 0 :
                                ( m_bStates [ 19 ] ) ? -128 : 128;
                cs.LeftStickY = ( ( m_bStates [ 21 ] && m_bStates [ 22 ] ) ||
                                ( !m_bStates [ 21 ] && !m_bStates [ 22 ] ) ) ? 0 :
                                ( m_bStates [ 21 ] ) ? -128 : 128;
                cs.ButtonCross = ( m_bStates [ 23 ] ) ? 255 : 0; // Accelerate
                cs.ButtonSquare = ( m_bStates [ 24 ] ) ? 255 : 0; // Reverse
                cs.ShockButtonL = ( m_bStates [ 28 ] ) ? 255 : 0; // Horn
                cs.RightShoulder1 = ( m_bStates [ 30 ] ) ? 255 : 0; // Handbrake
                cs.LeftShoulder2 = ( m_bStates [ 31 ] || m_bStates [ 33 ] ) ? 255 : 0; // Look Left
                cs.RightShoulder2 = ( m_bStates [ 32 ] || m_bStates [ 33 ] ) ? 255 : 0; // Look Right                
                cs.RightStickX = ( ( m_bStates [ 35 ] && m_bStates [ 36 ] ) ||
                                ( !m_bStates [ 35 ] && !m_bStates [ 36 ] ) ) ? 0 :
                                ( m_bStates [ 35 ] ) ? 128 : -128;
                cs.RightStickY = ( ( m_bStates [ 37 ] && m_bStates [ 38 ] ) ||
                                ( !m_bStates [ 37 ] && !m_bStates [ 38 ] ) ) ? 0 :
                                ( m_bStates [ 37 ] ) ? 128 : -128;
            }
        }
        pPed->SetControllerState ( cs );
    }
}
Exemple #7
0
// toggleCellPhone
void Script_toggleCellPhone(RakNet::BitStream *bitStream, Packet *packet)
{
	int iToggle;
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	bitStream->Read(iToggle);

	pPlayer->SetCellAction(iToggle);
}
Exemple #8
0
// SetHealth
void Script_SetHealth(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	float playerHealth;

	bitStream->Read(playerHealth);

	pPlayer->SetHealth(playerHealth);
}
Exemple #9
0
// SetCameraShakeIntensity
void Script_SetCameraShakeIntensity(RakNet::BitStream *bitStream, Packet *packet)
{
	int iIntensity;

	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	bitStream->Read(iIntensity);

	pPlayer->SetCameraShakeIntensity(iIntensity);
}
Exemple #10
0
// toggleDriveByState
void Script_toggleDriveByState(RakNet::BitStream *bitStream, Packet *packet)
{
	int iToggle;

	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	bitStream->Read(iToggle);

	pPlayer->SetDrivebyState(iToggle);
}
Exemple #11
0
static void Fix(void)
{
	CPlayerPed* pLocalPlayer = pGame->FindPlayerPed();
	if (pLocalPlayer->IsInVehicle())
	{
		CVehiclePool* pVehiclePool = pNetGame->GetVehiclePool();
		CVehicle* pVehicle = pVehiclePool->GetAt(pVehiclePool->FindIDFromGtaPtr(pLocalPlayer->GetGtaVehicle()));
		pVehicle->SetHealth(5000);
	}
}
Exemple #12
0
static void DoubleCarSpeed(void)
{
	CPlayerPed* pLocalPlayer = pGame->FindPlayerPed();
	if (pLocalPlayer->IsInVehicle())
	{
		CVehiclePool* pVehiclePool = pNetGame->GetVehiclePool();
		CVehicle* pVehicle = pVehiclePool->GetAt(pVehiclePool->FindIDFromGtaPtr(pLocalPlayer->GetGtaVehicle()));
		pVehicle->DoubleSpeed();
	}
}
Exemple #13
0
// SetPlayerPos
void Script_SetPos(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	Vector3 playerPos;

	bitStream->Read((char *)&playerPos, sizeof(Vector3));

	pPlayer->Teleport(playerPos.X, playerPos.Y, playerPos.Z);
}
Exemple #14
0
// SetArmour
void Script_SetArmour(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	float playerArmour;

	bitStream->Read(playerArmour);

	pPlayer->SetArmour(playerArmour);
}
Exemple #15
0
// setItemFlashing Native.
void Script_FlashItem(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	int item;

	bitStream->Read(item);

	pPlayer->Flash(item);
}
Exemple #16
0
// setArmedWeapon
void Script_SetArmedWeapon(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	int playerWeapon;

	bitStream->Read(playerWeapon);

	pPlayer->SetArmedWeapon(playerWeapon);
}
Exemple #17
0
// SetPlayerTurnSpeed
void Script_SetMoveSpeed(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	Vector3 speed;

	bitStream->Read((char *)&speed, sizeof(Vector3));

	pPlayer->SetMoveSpeed(speed);
}
Exemple #18
0
// togglecontrols
void Script_ToggleControls(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	int ControlValue;

	bitStream->Read(ControlValue);

	pPlayer->TogglePlayerControllable(ControlValue);
}
Exemple #19
0
// SetSkin
void Script_SetPlayerSkin(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	int skinID;

	bitStream->Read(skinID);

	pPlayer->SetModel(skinID);
}
Exemple #20
0
// PutPlayerInVehicle
void Script_PutInVehicle(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	int vehID;

	bitStream->Read(vehID);

	pPlayer->PutDirectlyInVehicle(pNetowkManager->GetVehicleManager()->FindGtaIDFromID(vehID));
}
Exemple #21
0
// setSkyColor
void Script_setSkyColor(RakNet::BitStream *bitStream, Packet *packet)
{
	int iColor, iFade;

	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	bitStream->Read(iColor);
	bitStream->Read(iFade);

	pPlayer->SetSkyColor(iColor, iFade);
}
Exemple #22
0
// GiveWeapon
void Script_GivePlayerWeapon(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	int weaponID;
	int ammoAMT;

	bitStream->Read(weaponID);
	bitStream->Read(ammoAMT);

	pPlayer->GiveWeapon(weaponID, ammoAMT);
}
Exemple #23
0
void cmdBuild(PCHAR szCmd)
{
	//if(!tSettings.bDebug) return;

	CCamera * pGameCamera = pGame->GetCamera();
	pGameCamera->Restore();
	pGame->DisplayHud(TRUE);
	CPlayerPed *pPlayer = pGame->FindPlayerPed();
	MATRIX4X4 matPlayer;
	pPlayer->GetMatrix(&matPlayer);
	CPed* pPed = new CPed(0,(matPlayer.vPos.X - 1.0f), (matPlayer.vPos.Y - 1.0f), matPlayer.vPos.Z,0.0f);
	//pPed->ShowMarker(1);
}
Exemple #24
0
static void InstantStop(void)
{
	CPlayerPed* pLocalPlayer = pGame->FindPlayerPed();
	if (pLocalPlayer->IsInVehicle())
	{
		CVehiclePool* pVehiclePool = pNetGame->GetVehiclePool();
		CVehicle* pVehicle = pVehiclePool->GetAt(pVehiclePool->FindIDFromGtaPtr(pLocalPlayer->GetGtaVehicle()));
		VECTOR vecMoveSpeed;
		vecMoveSpeed.X = 0;
		vecMoveSpeed.Y = 0;
		vecMoveSpeed.Z = 0;
		pVehicle->SetMoveSpeedVector(vecMoveSpeed);
		pVehicle->SetTurnSpeedVector(vecMoveSpeed);
	}
}
Exemple #25
0
static void InvertSpeed(void)
{
	CPlayerPed* pLocalPlayer = pGame->FindPlayerPed();
	if (pLocalPlayer->IsInVehicle())
	{
		CVehiclePool* pVehiclePool = pNetGame->GetVehiclePool();
		CVehicle* pVehicle = pVehiclePool->GetAt(pVehiclePool->FindIDFromGtaPtr(pLocalPlayer->GetGtaVehicle()));
		VECTOR vecMoveSpeed;
		pVehicle->GetMoveSpeedVector(&vecMoveSpeed);
		vecMoveSpeed.X *= -1;
		vecMoveSpeed.Y *= -1;
		vecMoveSpeed.Z *= -1;
		pVehicle->SetMoveSpeedVector(vecMoveSpeed);
	}
}
Exemple #26
0
// setworldbounds
void Script_WorldBounds(RakNet::BitStream *bitStream, Packet *packet)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	float LowX;
	float LowY;
	float HighX;
	float HighY;

	bitStream->Read(LowX);
	bitStream->Read(LowY);
	bitStream->Read(HighX);
	bitStream->Read(HighY);

	pPlayer->EnforceWorldBoundries(HighX, LowX, HighY, LowY);
}
Exemple #27
0
void cmdSavePos(PCHAR szCmd)
{
	CPlayerPed *pPlayer = pGame->FindPlayerPed();
	FILE *fileOut;
	DWORD dwVehicleID;
	float fZAngle;

	if(!tSettings.bDebug) return;

	fileOut = fopen("savedpositions.txt","a");
	if(!fileOut) {
		pChatWindow->AddDebugMessage("I can't open the savepositions.txt file for append.");
		return;
	}

	// incar savepos

	if(pPlayer->IsInVehicle()) {

		VEHICLE_TYPE *pVehicle = pPlayer->GetGtaVehicle();
	
		dwVehicleID = GamePool_Vehicle_GetIndex(pVehicle);
		ScriptCommand(&get_car_z_angle,dwVehicleID,&fZAngle);

		fprintf(fileOut,"Vehicle = %u %.4f %.4f %.4f %.4f %u %u\n",
			pVehicle->entity.nModelIndex,pVehicle->entity.mat.vPos.X,pVehicle->entity.mat.vPos.Y,pVehicle->entity.mat.vPos.Z,
			fZAngle,pVehicle->byteColor1,pVehicle->byteColor2);

		fclose(fileOut);

		return;
	}

	// onfoot savepos

	PED_TYPE *pActor = pPlayer->GetGtaActor();
	ScriptCommand(&get_player_z_angle,0,&fZAngle);

	fprintf(fileOut,"Class = 0 0 %.4f %.4f %.4f %.4f 0 0 0 0 0 0\n",
		pActor->entity.mat.vPos.X,pActor->entity.mat.vPos.Y,pActor->entity.mat.vPos.Z,fZAngle);

	fclose(fileOut);
}
Exemple #28
0
float CVehicle::GetDistanceFromLocalPlayerPed()
{
	MATRIX4X4	matFromPlayer;
	MATRIX4X4	matThisVehicle;
	float		fSX,fSY;

	CPlayerPed *pLocalPlayerPed = pGame->FindPlayerPed();

	if(!m_pVehicle) return 10000.0f; // very far away
	if(!pLocalPlayerPed) return 10000.0f; // very far away
	
	GetMatrix(&matThisVehicle);
	pLocalPlayerPed->GetMatrix(&matFromPlayer);
	
	fSX = (matThisVehicle.vPos.X - matFromPlayer.vPos.X) * (matThisVehicle.vPos.X - matFromPlayer.vPos.X);
	fSY = (matThisVehicle.vPos.Y - matFromPlayer.vPos.Y) * (matThisVehicle.vPos.Y - matFromPlayer.vPos.Y);
	
	return (float)sqrt(fSX + fSY);
}
Exemple #29
0
void _stdcall DoOnFootWorldBoundsStuff()
{
	if(pNetGame) {
		CLocalPlayer *pLocalPlayer = pNetGame->GetPlayerPool()->GetLocalPlayer();
		CPlayerPed *pPlayerPed = pGame->FindPlayerPed();

		// Make sure they don't leave their worldy confines.
		if(pLocalPlayer->IsActive() && !pPlayerPed->IsInVehicle()) {
			if(pPlayerPed->EnforceWorldBoundries(
				pNetGame->m_WorldBounds[0],pNetGame->m_WorldBounds[1],
				pNetGame->m_WorldBounds[2],pNetGame->m_WorldBounds[3]))
			{
				pGcsInternalKeys->wKeys1[KEY_ONFOOT_JUMP] = 0xFF;
				pGcsInternalKeys->wKeys2[KEY_ONFOOT_JUMP] = 0x00;
				pPlayerPed->SetArmedWeapon(0);
				//pGame->DisplayTextMessage("Stay within the world boundries");
			}
		}
	}
}
Exemple #30
0
void cmdSkin(PCHAR szCmd)
{
	if(!tSettings.bDebug) return;

	if(!strlen(szCmd)){	
		pChatWindow->AddDebugMessage("Usage: /skin [default.ide number]");
		return;
	}
	int iPlayerSkin = atoi(szCmd);

	CPlayerPed *pPlayer = pGame->FindPlayerPed();

	if(pPlayer)
	{
		pGame->RequestModel(iPlayerSkin);
		pGame->LoadRequestedModels();
		while(pGame->IsModelLoaded(iPlayerSkin)==FALSE) Sleep(2);
		pPlayer->SetModel(iPlayerSkin);
	}
}