GTAMulti.com - Türkiye'nin Türkçe GTA Sitesi

Sorun Çözüldi K/K

Başlatan Captian, 25 Kasım 2023, 18:06:06

« önceki - sonraki »

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Captian

Sorun Çözüldi K/K
Son düzenlenme: 30 Kasım 2023, 20:25:07 Captian

benHüseyin

PAWN Kodu: Seç
forward OnVehicleUpdate(vehicleid);

public OnVehicleUpdate(vehicleid)
{
    new Float:roll, Float:pitch, Float:yaw;
    GetVehicleRotation(vehicleid, roll, pitch, yaw);

    // Eğer araç ters döndüyse, onu düzelt
    if (pitch > 80.0 || pitch < -80.0)
    {
        SetVehicleHealth(vehicleid, 1000.0);
        SetVehicleVelocity(vehicleid, 0.0, 0.0, 0.0);
        SetVehicleRotation(vehicleid, roll, 0.0, yaw);
    }

    return 1;
}

Merhaba dünyaa!

Captian


benHüseyin

Eğer oyun modunuzda get set vehincle rotasyon infoları yoksa olmaz şöyle hata problem çözümleri.
// Bu fonksiyon, bir vektörü belirli bir derece (açı) kadar döndürür.



PAWN Kodu: Seç
forward Float:Float:vector_rotate(Float:Float:x, Float:y, Float:Float:z, Float:Float:angle);

// Araç rotasyonunu ayarlamak için kullanılır.
forward SetVehicleFacingAngle(vehicleid, Float:Float:angle);

// Oyuncunun aracının rotasyonunu almak için kullanılır.
forward GetPlayerVehicleRotation(playerid, &Float:Float:rotX, &Float:rotY, &Float:rotZ);

// Oyuncunun aracının rotasyonunu ayarlamak için kullanılır.
forward SetPlayerVehicleRotation(playerid, Float:Float:rotX, Float:rotY, Float:rotZ);

// Yardımcı fonksiyon: Bir vektörü belirli bir derece (açı) kadar döndürür.
Float:Float:vector_rotate(Float:Float:x, Float:y, Float:Float:z, Float:Float:angle)
{
    Float:Float:rad = angle * (M_PI / 180.0);
    Float:Float:cs = cos(rad);
    Float:Float:sn = sin(rad);
   
    Float:Float:newX = x * cs - y * sn;
    Float:Float:newY = x * sn + y * cs;
   
    return Float:Float: new newX, newY, z;
}

// Araç rotasyonunu belirli bir dereceye ayarlar.
SetVehicleFacingAngle(vehicleid, Float:Float:angle)
{
    new Float:Float:rotX, Float:rotY, Float:rotZ;
    GetVehicleRotation(vehicleid, rotX, rotY, rotZ);
   
    // Yeni rotasyon hesaplanır.
    new Float:Float:newRotX, Float:newRotY, Float:newRotZ;
    vector_rotate(rotX, rotY, rotZ, angle, newRotX, newRotY, newRotZ);
   
    // Araç rotasyonu ayarlanır.
    SetVehicleRotation(vehicleid, newRotX, newRotY, newRotZ);
}

// Oyuncunun aracının rotasyonunu alır.
GetPlayerVehicleRotation(playerid, &Float:Float:rotX, &Float:rotY, &Float:rotZ)
{
    new vehicleid = GetPlayerVehicleID(playerid);
    GetVehicleRotation(vehicleid, rotX, rotY, rotZ);
}

// Oyuncunun aracının rotasyonunu ayarlar.
SetPlayerVehicleRotation(playerid, Float:Float:rotX, Float:rotY, Float:rotZ)
{
    new vehicleid = GetPlayerVehicleID(playerid);
    SetVehicleRotation(vehicleid, rotX, rotY, rotZ);
}

Merhaba dünyaa!

marcie

Alıntı yapılan: benHüseyin - 25 Kasım 2023, 21:08:40
Eğer oyun modunuzda get set vehincle rotasyon infoları yoksa olmaz şöyle hata problem çözümleri.
// Bu fonksiyon, bir vektörü belirli bir derece (açı) kadar döndürür.



PAWN Kodu: Seç
forward Float:Float:vector_rotate(Float:Float:x, Float:y, Float:Float:z, Float:Float:angle);

// Araç rotasyonunu ayarlamak için kullanılır.
forward SetVehicleFacingAngle(vehicleid, Float:Float:angle);

// Oyuncunun aracının rotasyonunu almak için kullanılır.
forward GetPlayerVehicleRotation(playerid, &Float:Float:rotX, &Float:rotY, &Float:rotZ);

// Oyuncunun aracının rotasyonunu ayarlamak için kullanılır.
forward SetPlayerVehicleRotation(playerid, Float:Float:rotX, Float:rotY, Float:rotZ);

// Yardımcı fonksiyon: Bir vektörü belirli bir derece (açı) kadar döndürür.
Float:Float:vector_rotate(Float:Float:x, Float:y, Float:Float:z, Float:Float:angle)
{
    Float:Float:rad = angle * (M_PI / 180.0);
    Float:Float:cs = cos(rad);
    Float:Float:sn = sin(rad);
   
    Float:Float:newX = x * cs - y * sn;
    Float:Float:newY = x * sn + y * cs;
   
    return Float:Float: new newX, newY, z;
}

// Araç rotasyonunu belirli bir dereceye ayarlar.
SetVehicleFacingAngle(vehicleid, Float:Float:angle)
{
    new Float:Float:rotX, Float:rotY, Float:rotZ;
    GetVehicleRotation(vehicleid, rotX, rotY, rotZ);
   
    // Yeni rotasyon hesaplanır.
    new Float:Float:newRotX, Float:newRotY, Float:newRotZ;
    vector_rotate(rotX, rotY, rotZ, angle, newRotX, newRotY, newRotZ);
   
    // Araç rotasyonu ayarlanır.
    SetVehicleRotation(vehicleid, newRotX, newRotY, newRotZ);
}

// Oyuncunun aracının rotasyonunu alır.
GetPlayerVehicleRotation(playerid, &Float:Float:rotX, &Float:rotY, &Float:rotZ)
{
    new vehicleid = GetPlayerVehicleID(playerid);
    GetVehicleRotation(vehicleid, rotX, rotY, rotZ);
}

// Oyuncunun aracının rotasyonunu ayarlar.
SetPlayerVehicleRotation(playerid, Float:Float:rotX, Float:rotY, Float:rotZ)
{
    new vehicleid = GetPlayerVehicleID(playerid);
    SetVehicleRotation(vehicleid, rotX, rotY, rotZ);
}

chatgpt coding, başarılı.