GTAMulti - GTA Türkiye

San Andreas Multiplayer => Yardım Talepleri => PAWN Kodlama => Kilitli Konular => Konuyu başlatan: Rosen - 07 Temmuz 2021, 22:03:50

Başlık: Spec çalışmıyor
Gönderen: Rosen - 07 Temmuz 2021, 22:03:50
Merhabalar, sıfırdan yazdığımız modda spec sistemini defalarca değiştirdik, başka modlardaki spec sistemlerini denedik ancak hiç biri çalışmadı.
PlayerSpectatePlayer çağırılıyor ancak komutu uygulayan kişinin statesi PLAYER_STATE_SPECTATE olmuyor. Bu konuda yardımcı olursanız sevinirim.
Başlık: Ynt: Spec çalışmıyor
Gönderen: TAKTAK26 - 07 Temmuz 2021, 22:58:14
Modunuzda 0 indeks üzerinde bir şey var mı?

Örnek;

PAWN Kodu: Seç
Degisken[playerid] = 0;
ya da şöyle bir şey var mı?

PAWN Kodu: Seç
TogglePlayerSpectating(playerid, 0);
Başlık: Ynt: Spec çalışmıyor
Gönderen: Rodeiun - 07 Temmuz 2021, 23:53:58
Alıntı yapılan: TAKTAK26 - 07 Temmuz 2021, 22:58:14
Modunuzda 0 indeks üzerinde bir şey var mı?

Örnek;

PAWN Kodu: Seç
Degisken[playerid] = 0;
ya da şöyle bir şey var mı?

PAWN Kodu: Seç
TogglePlayerSpectating(playerid, 0);

PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
if(IsPlayerInAnyVehicle(userid)) PlayerSpectateVehicle(playerid, GetPlayerVehicleID(userid));
if(!IsPlayerInAnyVehicle(userid)) PlayerSpectatePlayer(playerid, userid);
Başlık: Ynt: Spec çalışmıyor
Gönderen: Kjen - 10 Temmuz 2021, 23:01:03
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
if(IsPlayerInAnyVehicle(id))
{
    PlayerSpectateVehicle(playerid, GetPlayerVehicleID(id));
}
else
{
    PlayerSpectatePlayer(playerid, id);
}
İlk if tanımınız doğru ancak ikinci tanımınız yanlış birde bunu deneyin.
Başlık: Ynt: Spec çalışmıyor
Gönderen: Rodeiun - 11 Temmuz 2021, 11:40:31
Alıntı yapılan: Kjen - 10 Temmuz 2021, 23:01:03
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
if(IsPlayerInAnyVehicle(id))
{
    PlayerSpectateVehicle(playerid, GetPlayerVehicleID(id));
}
else
{
    PlayerSpectatePlayer(playerid, id);
}
İlk if tanımınız doğru ancak ikinci tanımınız yanlış birde bunu deneyin.

Bununla bir alakası olacağını sanmıyorum çünki direkt olarak:
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, userid);
şeklinde denemiştim.
Başlık: Ynt: Spec çalışmıyor
Gönderen: Kjen - 11 Temmuz 2021, 16:03:37
Alıntı yapılan: AloneWarrioR - 11 Temmuz 2021, 11:40:31
Alıntı yapılan: Kjen - 10 Temmuz 2021, 23:01:03
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
if(IsPlayerInAnyVehicle(id))
{
    PlayerSpectateVehicle(playerid, GetPlayerVehicleID(id));
}
else
{
    PlayerSpectatePlayer(playerid, id);
}
İlk if tanımınız doğru ancak ikinci tanımınız yanlış birde bunu deneyin.

Bununla bir alakası olacağını sanmıyorum çünki direkt olarak:
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, userid);
şeklinde denemiştim.
Yani kişi araçtayken bile aracı değil kişiyi specletmeye çalıştınız öylemi?  :kahkaha2:
Başlık: Ynt: Spec çalışmıyor
Gönderen: Kjen - 11 Temmuz 2021, 16:26:11
PAWN Kodu: Seç
CMD:getplayerstate(playerid, params[])
{
    new id;
    if(sscanf(params, "u", id)) return SendClientMessage(playerid, "/getplayerstate [ID]");
    if(GetPlayerState(id) != PLAYER_STATE_NONE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_NONE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ONFOOT)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ONFOOT");
    }
else if(GetPlayerState(id) != PLAYER_STATE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_PASSENGER");
    }
else if(GetPlayerState(id) != PLAYER_STATE_EXIT_VEHICLE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_EXIT_VEHICLE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_PASSENGER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_WASTED)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_WASTED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPAWNED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_SPECTATING)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPECTATING");
    }
    return 1;
}
Üstte verdiğim spec'i ekleyip ardından bu komutu ekledikten sonra spece geçip test ediniz ve gerçekten SPECTATING durumuna geçmiyorsa...
Başlık: Ynt: Spec çalışmıyor
Gönderen: Hata - 12 Temmuz 2021, 10:53:07
Alıntı yapılan: Kjen - 11 Temmuz 2021, 16:26:11
PAWN Kodu: Seç
CMD:getplayerstate(playerid, params[])
{
    new id;
    if(sscanf(params, "u", id)) return SendClientMessage(playerid, "/getplayerstate [ID]");
    if(GetPlayerState(id) != PLAYER_STATE_NONE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_NONE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ONFOOT)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ONFOOT");
    }
else if(GetPlayerState(id) != PLAYER_STATE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_PASSENGER");
    }
else if(GetPlayerState(id) != PLAYER_STATE_EXIT_VEHICLE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_EXIT_VEHICLE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_PASSENGER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_WASTED)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_WASTED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPAWNED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_SPECTATING)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPECTATING");
    }
    return 1;
}
Üstte verdiğim spec'i ekleyip ardından bu komutu ekledikten sonra spece geçip test ediniz ve gerçekten SPECTATING durumuna geçmiyorsa...
if(GetPlayerState(id) != PLAYER_STATE_NONE) yaparsan eşit değil ise olur, if(GetPlayerState(id) == PLAYER_STATE_NONE) gibi olmalı
Başlık: Ynt: Spec çalışmıyor
Gönderen: Rodeiun - 12 Temmuz 2021, 12:12:26
Alıntı yapılan: Kjen - 11 Temmuz 2021, 16:03:37
Alıntı yapılan: AloneWarrioR - 11 Temmuz 2021, 11:40:31
Alıntı yapılan: Kjen - 10 Temmuz 2021, 23:01:03
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
if(IsPlayerInAnyVehicle(id))
{
    PlayerSpectateVehicle(playerid, GetPlayerVehicleID(id));
}
else
{
    PlayerSpectatePlayer(playerid, id);
}
İlk if tanımınız doğru ancak ikinci tanımınız yanlış birde bunu deneyin.

Bununla bir alakası olacağını sanmıyorum çünki direkt olarak:
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, userid);
şeklinde denemiştim.
Yani kişi araçtayken bile aracı değil kişiyi specletmeye çalıştınız öylemi?  :kahkaha2:

Hayır, test amaçlı onfoot olan birine denediğimde olmuyordu.

Alıntı yapılan: Kjen - 11 Temmuz 2021, 16:26:11
PAWN Kodu: Seç
CMD:getplayerstate(playerid, params[])
{
    new id;
    if(sscanf(params, "u", id)) return SendClientMessage(playerid, "/getplayerstate [ID]");
    if(GetPlayerState(id) != PLAYER_STATE_NONE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_NONE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ONFOOT)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ONFOOT");
    }
else if(GetPlayerState(id) != PLAYER_STATE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_PASSENGER");
    }
else if(GetPlayerState(id) != PLAYER_STATE_EXIT_VEHICLE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_EXIT_VEHICLE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_PASSENGER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_WASTED)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_WASTED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPAWNED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_SPECTATING)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPECTATING");
    }
    return 1;
}
Üstte verdiğim spec'i ekleyip ardından bu komutu ekledikten sonra spece geçip test ediniz ve gerçekten SPECTATING durumuna geçmiyorsa...

Bunu zaten debug olarak denemiştim, PLAYER_STATE_SPECTATİNGE GEÇMİYOR
Başlık: Ynt: Spec çalışmıyor
Gönderen: SpawN1 - 12 Temmuz 2021, 13:57:18
Alıntı yapılan: AloneWarrioR - 12 Temmuz 2021, 12:12:26
Alıntı yapılan: Kjen - 11 Temmuz 2021, 16:03:37
Alıntı yapılan: AloneWarrioR - 11 Temmuz 2021, 11:40:31
Alıntı yapılan: Kjen - 10 Temmuz 2021, 23:01:03
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
if(IsPlayerInAnyVehicle(id))
{
    PlayerSpectateVehicle(playerid, GetPlayerVehicleID(id));
}
else
{
    PlayerSpectatePlayer(playerid, id);
}
İlk if tanımınız doğru ancak ikinci tanımınız yanlış birde bunu deneyin.

Bununla bir alakası olacağını sanmıyorum çünki direkt olarak:
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, userid);
şeklinde denemiştim.
Yani kişi araçtayken bile aracı değil kişiyi specletmeye çalıştınız öylemi?  :kahkaha2:

Hayır, test amaçlı onfoot olan birine denediğimde olmuyordu.

Alıntı yapılan: Kjen - 11 Temmuz 2021, 16:26:11
PAWN Kodu: Seç
CMD:getplayerstate(playerid, params[])
{
    new id;
    if(sscanf(params, "u", id)) return SendClientMessage(playerid, "/getplayerstate [ID]");
    if(GetPlayerState(id) != PLAYER_STATE_NONE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_NONE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ONFOOT)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ONFOOT");
    }
else if(GetPlayerState(id) != PLAYER_STATE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_PASSENGER");
    }
else if(GetPlayerState(id) != PLAYER_STATE_EXIT_VEHICLE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_EXIT_VEHICLE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_PASSENGER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_WASTED)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_WASTED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPAWNED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_SPECTATING)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPECTATING");
    }
    return 1;
}
Üstte verdiğim spec'i ekleyip ardından bu komutu ekledikten sonra spece geçip test ediniz ve gerçekten SPECTATING durumuna geçmiyorsa...

Bunu zaten debug olarak denemiştim, PLAYER_STATE_SPECTATİNGE GEÇMİYOR
Pawn.Raknet kütüphanesini kullanıyor musunuz?
Başlık: Ynt: Spec çalışmıyor
Gönderen: Rodeiun - 12 Temmuz 2021, 14:16:59
Alıntı yapılan: SpawN1 - 12 Temmuz 2021, 13:57:18
Alıntı yapılan: AloneWarrioR - 12 Temmuz 2021, 12:12:26
Alıntı yapılan: Kjen - 11 Temmuz 2021, 16:03:37
Alıntı yapılan: AloneWarrioR - 11 Temmuz 2021, 11:40:31
Alıntı yapılan: Kjen - 10 Temmuz 2021, 23:01:03
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
if(IsPlayerInAnyVehicle(id))
{
    PlayerSpectateVehicle(playerid, GetPlayerVehicleID(id));
}
else
{
    PlayerSpectatePlayer(playerid, id);
}
İlk if tanımınız doğru ancak ikinci tanımınız yanlış birde bunu deneyin.

Bununla bir alakası olacağını sanmıyorum çünki direkt olarak:
PAWN Kodu: Seç
PlayerData[playerid][pSpec] = userid;
InteriorDuzenle(playerid, GetPlayerInterior(userid));
VWDuzenle(playerid, GetPlayerVirtualWorld(userid));
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, userid);
şeklinde denemiştim.
Yani kişi araçtayken bile aracı değil kişiyi specletmeye çalıştınız öylemi?  :kahkaha2:

Hayır, test amaçlı onfoot olan birine denediğimde olmuyordu.

Alıntı yapılan: Kjen - 11 Temmuz 2021, 16:26:11
PAWN Kodu: Seç
CMD:getplayerstate(playerid, params[])
{
    new id;
    if(sscanf(params, "u", id)) return SendClientMessage(playerid, "/getplayerstate [ID]");
    if(GetPlayerState(id) != PLAYER_STATE_NONE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_NONE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ONFOOT)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ONFOOT");
    }
else if(GetPlayerState(id) != PLAYER_STATE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_PASSENGER");
    }
else if(GetPlayerState(id) != PLAYER_STATE_EXIT_VEHICLE)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_EXIT_VEHICLE");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_DRIVER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_DRIVER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_ENTER_VEHICLE_PASSENGER)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_ENTER_VEHICLE_PASSENGER");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_WASTED)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_WASTED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPAWNED");
    }
    else if(GetPlayerState(id) != PLAYER_STATE_SPECTATING)
    {
        SendClientMessage(playerid, "Kişinin durumu PLAYER_STATE_SPECTATING");
    }
    return 1;
}
Üstte verdiğim spec'i ekleyip ardından bu komutu ekledikten sonra spece geçip test ediniz ve gerçekten SPECTATING durumuna geçmiyorsa...

Bunu zaten debug olarak denemiştim, PLAYER_STATE_SPECTATİNGE GEÇMİYOR
Pawn.Raknet kütüphanesini kullanıyor musunuz?

evet anticheat amaçlı kullanıyoruz
Başlık: Ynt: Spec çalışmıyor
Gönderen: Rodeiun - 12 Temmuz 2021, 14:53:26
Pawn.Raknet includesini devre dışı bırakıp denedim, sorun ortadan kalkmadı.
Başlık: Ynt: Spec çalışmıyor
Gönderen: Rodeiun - 12 Temmuz 2021, 15:23:55
Spec attığımızda spectate 9 (PLAYER_STATE_SPECTATING) gösteriyor ama spec yok. (Toggleplayerspectating de bence sorun)
Başlık: Ynt: Spec çalışmıyor
Gönderen: SpawN1 - 12 Temmuz 2021, 16:12:35
Alıntı yapılan: AloneWarrioR - 12 Temmuz 2021, 14:53:26
Pawn.Raknet includesini devre dışı bırakıp denedim, sorun ortadan kalkmadı.

Hayır öyle birşey demek istemedim, Link (https://github.com/katursis/Pawn.RakNet/wiki/SpectatingSync) Bu linkten SpectatingSync Paketine printf("Oyuncu birini izliyor."); Yazarsanız packetin çalışıp çalışmadığını öğrenebilirsiniz, kendiniz bir spec yapabilirsiniz örnek:


PAWN Kodu: Seç
CMD:spec(playerid, params[])
{
new
Float:camX,
Float:camY,
Float:camZ,
Float:vecX,
Float:vecY,
id,
Float:vecZ;

if(sscanf(params, "u", id)) return SendClientMessage(playerid, 0xFF0000FF, "/spec [ID]");
if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000FF, "İzlemek istediğin oyuncu sunucuya bağlı değil.");
if(!IsPlayerSpawned(id)) return SendClientMessage(playerid, 0xFF0000FF, "Bu oyuncu spawn olmamış.");
if(id == playerid) return SendClientMessage(playerid, 0xFF0000FF, "Kendini izleyemezsin.");

GetPlayerCameraPos(id, camX, camY, camZ);
GetPlayerCameraFrontVector(id, vecX, vecY, vecZ);

SetPlayerCameraPos(playerid, camX, camY, camZ);
SetPlayerCameraLookAt(playerid, camX+vecX, camY+vecY, camZ+vecZ);

return 1;
}

Küçük birşey yazdım OnPlayerUpdate ile geliştirip oyuncu haraket ettiğinde sizin kameranız da haraket edebilir teşekkürler.
Başlık: Ynt: Spec çalışmıyor
Gönderen: Rodeiun - 12 Temmuz 2021, 18:35:12
Alıntı yapılan: SpawN1 - 12 Temmuz 2021, 16:12:35
Alıntı yapılan: AloneWarrioR - 12 Temmuz 2021, 14:53:26
Pawn.Raknet includesini devre dışı bırakıp denedim, sorun ortadan kalkmadı.

Hayır öyle birşey demek istemedim, Link (https://github.com/katursis/Pawn.RakNet/wiki/SpectatingSync) Bu linkten SpectatingSync Paketine printf("Oyuncu birini izliyor."); Yazarsanız packetin çalışıp çalışmadığını öğrenebilirsiniz, kendiniz bir spec yapabilirsiniz örnek:


PAWN Kodu: Seç
CMD:spec(playerid, params[])
{
new
Float:camX,
Float:camY,
Float:camZ,
Float:vecX,
Float:vecY,
id,
Float:vecZ;

if(sscanf(params, "u", id)) return SendClientMessage(playerid, 0xFF0000FF, "/spec [ID]");
if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000FF, "İzlemek istediğin oyuncu sunucuya bağlı değil.");
if(!IsPlayerSpawned(id)) return SendClientMessage(playerid, 0xFF0000FF, "Bu oyuncu spawn olmamış.");
if(id == playerid) return SendClientMessage(playerid, 0xFF0000FF, "Kendini izleyemezsin.");

GetPlayerCameraPos(id, camX, camY, camZ);
GetPlayerCameraFrontVector(id, vecX, vecY, vecZ);

SetPlayerCameraPos(playerid, camX, camY, camZ);
SetPlayerCameraLookAt(playerid, camX+vecX, camY+vecY, camZ+vecZ);

return 1;
}

Küçük birşey yazdım OnPlayerUpdate ile geliştirip oyuncu haraket ettiğinde sizin kameranız da haraket edebilir teşekkürler.

bunu kullanıyorum şuanlık
Başlık: Ynt: Spec çalışmıyor
Gönderen: Anestezi - 30 Temmuz 2021, 00:27:56
Alıntı yapılan:  Bölüm kuralları
10 günü geçen konulara cevap gelmediği taktirde konu sahibi tarafından konu altına güncel yazılmazsa konu kilitlenip, kilitli konular bölümüne taşınacaktır.
K/A