GTAMulti - GTA Türkiye

San Andreas Multiplayer => Yardım Talepleri => PAWN Kodlama => Kilitli Konular => Konuyu başlatan: Castroll - 22 Ağustos 2017, 01:42:28

Başlık: Araçtan Taktiksel alma.
Gönderen: Castroll - 22 Ağustos 2017, 01:42:28
Merhabalar,

Enforcer'dan /enforcer komutu ile ekipman, swat kıyafeti sis bombası vs alabileceğimiz bir komut yapabilir misiniz?
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Lé Spîke - 22 Ağustos 2017, 01:45:57
PAWN Kodu: Seç
CMD:enforcer(playerid, params[])
{
if(IsPlayerAnyVehicle)
GivePlayerWeapon(playerid, 24, 25); // deagle verir
SetPlayerSkin(playerid, 285); // swat skini verir
return 1;
}


Temeli boyle

Eğer sadece enforcerda olsun diyorsan

PAWN Kodu: Seç
CMD:enforcer(playerid, params[])
{
if(IsPlayerAnyVehicle == 427)
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 22 Ağustos 2017, 01:56:54
Alıntı yapılan: DeliOqlan - 22 Ağustos 2017, 01:45:57

PAWN Kodu: Seç
CMD:enforcer(playerid, params[])
{
if(IsPlayerAnyVehicle)
GivePlayerWeapon(playerid, 24, 25); // deagle verir
SetPlayerSkin(playerid, 285); // swat skini verir
return 1;
}


Temeli boyle

Eğer sadece enforcerda olsun diyorsan

PAWN Kodu: Seç
CMD:enforcer(playerid, params[])
{
if(IsPlayerAnyVehicle == 427)
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}



Aynen fakat her araçtan alınıyor bu.
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Lé Spîke - 22 Ağustos 2017, 01:57:43
Alıntı yapılan: Castroll - 22 Ağustos 2017, 01:56:54

Alıntı yapılan: DeliOqlan - 22 Ağustos 2017, 01:45:57

PAWN Kodu: Seç
CMD:enforcer(playerid, params[])
{
if(IsPlayerAnyVehicle)
GivePlayerWeapon(playerid, 24, 25); // deagle verir
SetPlayerSkin(playerid, 285); // swat skini verir
return 1;
}


Temeli boyle

Eğer sadece enforcerda olsun diyorsan

PAWN Kodu: Seç
CMD:enforcer(playerid, params[])
{
if(GetPlayerVehicleID == 427)
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}



Aynen fakat her araçtan alınıyor bu.


Alttaki komutta sadece enforcerda alınıyor
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: FrankTR - 22 Ağustos 2017, 10:33:27
Şöyle olması gerekmez mi?


CMD:enforcer(playerid, params[])
{
if(GetPlayerVehicleID(playerid) == 427)
{
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
}
return 1;
}


Edit: Pardon satırlarda yanlışlık varmış.

Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Lé Spîke - 22 Ağustos 2017, 10:34:31
Alıntı yapılan: FrankTR - 22 Ağustos 2017, 10:33:27

Şöyle olması gerekmez mi?


CMD:enforcer(playerid, params[])
{
if(GetPlayerVehicleID(playerid) == 427)
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}



Haklısın Düzeldiyorum
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: FrankTR - 22 Ağustos 2017, 10:40:27
Alıntı yapılan: DeliOqlan - 22 Ağustos 2017, 10:34:31

Alıntı yapılan: FrankTR - 22 Ağustos 2017, 10:33:27

Şöyle olması gerekmez mi?


CMD:enforcer(playerid, params[])
{
if(GetPlayerVehicleID(playerid) == 427)
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}



Haklısın Düzeldiyorum




veya şu şekilde yapabiliriz.



CMD:enforcer(playerid, params[]){
if(GetPlayerVehicleID(playerid) == 427) return SendClientMessage(playerid,-1,"Enforcer Araçta Olman Gerek!");
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}

Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Lé Spîke - 22 Ağustos 2017, 10:43:53
Alıntı yapılan: FrankTR - 22 Ağustos 2017, 10:40:27

Alıntı yapılan: DeliOqlan - 22 Ağustos 2017, 10:34:31

Alıntı yapılan: FrankTR - 22 Ağustos 2017, 10:33:27

Şöyle olması gerekmez mi?


CMD:enforcer(playerid, params[])
{
if(GetPlayerVehicleID(playerid) == 427)
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}



Haklısın Düzeldiyorum




veya şu şekilde yapabiliriz.



CMD:enforcer(playerid, params[]){
if(GetPlayerVehicleID(playerid) == 427) return SendClientMessage(playerid,-1,"Enforcer Araçta Olman Gerek!");
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}




Aynen Aslında O Daha Mantıklı Ama Sistemini Gosterirsek Gerisini Arkadaş Halleder ;) Teşekkürler @FrankTR
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Kronos - 22 Ağustos 2017, 11:11:58
Mantıklıı :)
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Backup - 22 Ağustos 2017, 13:00:02
GetPlayerVehicleID , aracın vehicle ID'sini çeker. Şöyle diyelim sunucuda maximum 2000 tane araç olabilir GetPlayerVehicleID ile oyuncunun bulunduğu aracın idsi çekilir. Siz burada GetVehicleModel kullanacaksınız.

CMD:enforcer(playerid, params[])
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 427)
{
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}
return 1;
}
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: FrankTR - 22 Ağustos 2017, 13:05:28
Alıntı yapılan: _Backup - 22 Ağustos 2017, 13:00:02

GetPlayerVehicleID , aracın vehicle ID'sini çeker. Şöyle diyelim sunucuda maximum 2000 tane araç olabilir GetPlayerVehicleID ile oyuncunun bulunduğu aracın idsi çekilir. Siz burada GetVehicleModel kullanacaksınız.

CMD:enforcer(playerid, params[])
{
if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 427)
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}



Haklısın, yanlış düşünmüşüm.
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 22 Ağustos 2017, 18:07:38
Peki araç içinde değilde, araçtan inip aracın yanında olmamız gereken bir şekilde yapılabilir mi?
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Lé Spîke - 22 Ağustos 2017, 19:46:57
http://forum.sa-mp.com/showthread.php?t=275728

Alıntı yapılan: Castroll - 22 Ağustos 2017, 18:07:38

Peki araç içinde değilde, araçtan inip aracın yanında olmamız gereken bir şekilde yapılabilir mi?
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Backup - 22 Ağustos 2017, 20:37:04
CMD:enforcer(playerid, params[])
{
if(IsPlayerNearVehicle(playerid,427,5.0)) // playerid oyuncu idsini , 427 enforcerin model idsini ve 5.0 etki alanını temsil eder.
{
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}
else
{
SendClientMessage(playerid,-1,"Enforcer model araca yeterince yakın değilsiniz.");
return 1;
}
return true;
}
stock IsPlayerNearVehicle(playerid,vehiclemodel,Float:size)
{
if(vehiclemodel < 400 || vehiclemodel > 611) return 0;
new Float:x, Float:y, Float:z;
for(new i = 0, j = GetVehiclePoolSize(); i <= j; i++)
{
GetVehiclePos(i,x,y,z);
if(GetVehicleModel(i) == vehiclemodel && IsPlayerInRangeOfPoint(playerid,size,x,y,z))
{
return true;
}
}
return false;
}


Böyle kullanabilirsiniz veya alternatif olarak http://wiki.sa-mp.com/wiki/GetVehicleDistanceFromPoint bunu da kullanabilirsiniz.
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Lé Spîke - 22 Ağustos 2017, 20:54:15
Alıntı yapılan: _Backup - 22 Ağustos 2017, 20:37:04

CMD:enforcer(playerid, params[])
{
if(IsPlayerNearVehicle(playerid,427,5.0)) // playerid oyuncu idsini , 427 enforcerin model idsini ve 5.0 etki alanını temsil eder.
{
SetPlayerSkin (playerid, 285);
GivePlayerWeapon (playerid, 24, 25);
return 1;
}
else
{
SendClientMessage(playerid,-1,"Enforcer model araca yeterince yakın değilsiniz.");
return 1;
}
return true;
}
stock IsPlayerNearVehicle(playerid,vehiclemodel,Float:size)
{
if(vehiclemodel < 400 || vehiclemodel > 611) return 0;
new Float:x, Float:y, Float:z;
for(new i = 0, j = GetVehiclePoolSize(); i <= j; i++)
{
GetVehiclePos(i,x,y,z);
if(GetVehicleModel(i) == vehiclemodel && IsPlayerInRangeOfPoint(playerid,size,x,y,z))
{
return true;
}
}
return false;
}


Böyle kullanabilirsiniz veya alternatif olarak http://wiki.sa-mp.com/wiki/GetVehicleDistanceFromPoint bunu da kullanabilirsiniz.


Çok teşekkür ederim  bende  bilgilenmis oldum  :helal:
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 29 Ağustos 2017, 02:31:02
error 017: undefined symbol "GetVehiclePoolSize"
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Backup - 29 Ağustos 2017, 02:31:52
Alıntı yapılan: Castroll - 29 Ağustos 2017, 02:31:02

error 017: undefined symbol "GetVehiclePoolSize"

sunucu dosyalarınızı 0.3.7 ye güncelleyin
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 29 Ağustos 2017, 02:40:46
Alıntı yapılan: _Backup - 29 Ağustos 2017, 02:31:52

Alıntı yapılan: Castroll - 29 Ağustos 2017, 02:31:02

error 017: undefined symbol "GetVehiclePoolSize"

sunucu dosyalarınızı 0.3.7 ye güncelleyin

sampserver announce ve npc güncel zaten, başka ne yapmam gerekiyor?
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 29 Ağustos 2017, 02:54:32
   return true;  bu satırda bu hata/uyarı geliyor:

warning 225: unreachable code
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 29 Ağustos 2017, 03:10:24
Yardımcı olur musunuz? :helal:
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 29 Ağustos 2017, 04:19:56
Sorunu çözdüm fakat,
CMD:enforcer(playerid, params[])
{
     if(PlayerInfo[playerid][pFaction] == 1 && PlayerInfo[playerid][pDivision] == 5)
     return SendClientMessage(playerid, COLOR_GREY, "SWAT Biriminden değilsin.");
     
if(IsPlayerNearVehicle(playerid,427,5.0)) // playerid oyuncu idsini , 427 enforcerin model idsini ve 5.0 etki alanını temsil eder.
{
     ShowPlayerDialogEx(playerid, enfdolap, DIALOG_STYLE_LIST, "Taktiksel Dolabı", "İlkyardım Çantası\nZırh\nSilahlar\nTaktiksel Kıyafet", "Sec", "Iptal");
return 1;
}
else
{
SendClientMessage(playerid,-1,"Enforcer model araca yeterince yakın değilsiniz.");
return 1;
}


Komutu LSPD'nin 5.birimine (SWAT)'e göre yapamıyorum, çalışmıyor. Herkes alabiliyor.
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Backup - 29 Ağustos 2017, 12:30:51
Alıntı yapılan: Castroll - 29 Ağustos 2017, 03:10:24

Yardımcı olur musunuz? :helal:

includeleride güncelleyin.
Alıntı yapılan: Castroll - 29 Ağustos 2017, 04:19:56

Sorunu çözdüm fakat,
CMD:enforcer(playerid, params[])
{
     if(PlayerInfo[playerid][pFaction] == 1 && PlayerInfo[playerid][pDivision] == 5)
     return SendClientMessage(playerid, COLOR_GREY, "SWAT Biriminden değilsin.");
     
if(IsPlayerNearVehicle(playerid,427,5.0)) // playerid oyuncu idsini , 427 enforcerin model idsini ve 5.0 etki alanını temsil eder.
{
     ShowPlayerDialogEx(playerid, enfdolap, DIALOG_STYLE_LIST, "Taktiksel Dolabı", "İlkyardım Çantası\nZırh\nSilahlar\nTaktiksel Kıyafet", "Sec", "Iptal");
return 1;
}
else
{
SendClientMessage(playerid,-1,"Enforcer model araca yeterince yakın değilsiniz.");
return 1;
}


Komutu LSPD'nin 5.birimine (SWAT)'e göre yapamıyorum, çalışmıyor. Herkes alabiliyor.

pFaction ile pDivision değerinin ikiside 1 ve 5 olduğunda hata verir. == yerine != yapın.
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Jawié - 29 Ağustos 2017, 16:48:37
Alıntı yapılan: Castroll - 29 Ağustos 2017, 04:19:56
Komutu LSPD'nin 5.birimine (SWAT)'e göre yapamıyorum, çalışmıyor. Herkes alabiliyor.


if(PlayerInfo[playerid][pFaction] != 1 && PlayerInfo[playerid][pDivision] != 5) return SendClientMessage(playerid, COLOR_GREY, "SWAT Biriminden değilsin.");

Senin yaptığın faction 1 ve division 5 ise kullanamaz. Benim yaptığım faction 1 ve division 5 değilse kullanamaz.
Başlık: Ynt: Araçtan Taktiksel alma.
Gönderen: Castroll - 29 Ağustos 2017, 21:10:31
Alıntı yapılan: Jawié - 29 Ağustos 2017, 16:48:37

Alıntı yapılan: Castroll - 29 Ağustos 2017, 04:19:56
Komutu LSPD'nin 5.birimine (SWAT)'e göre yapamıyorum, çalışmıyor. Herkes alabiliyor.


if(PlayerInfo[playerid][pFaction] != 1 && PlayerInfo[playerid][pDivision] != 5) return SendClientMessage(playerid, COLOR_GREY, "SWAT Biriminden değilsin.");

Senin yaptığın faction 1 ve division 5 ise kullanamaz. Benim yaptığım faction 1 ve division 5 değilse kullanamaz.

Ben sadece faciton 1 deki 5.divison kullanmasını istiyorum