GTAMulti.com - Türkiye'nin Türkçe GTA Sitesi
03 Şubat 2026, 15:49:24

İstek-Spawn

Başlatan Tyusuf, 29 Kasım 2017, 21:49:20

« önceki - sonraki »

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Tyusuf

Merhaba arkadaşlar bu forumda yeniyim ve kendimi geliştirmeye çalısıyorum elimden geldiğince diyelimki sunucuya giriş yaparken doğum tarihi vs doldurduktan skinini seçtikten sonra önlerine bi seçenek gelmesini istiyorum lasventuras ve los santos insanlar los santosu seçtiklerinde los santosta oyuna başlasın lasventurası seçtiğinde lasventurasta başlasın bunu nasıl yapabilirim veyatta yapıp bana yardımcı olacak arkadaşlar varmı şimdiden hepinize teşekkür ederim iyi akşamlar.


Baran

Island FreeRoam Başlangıctaki gibimi istiyorsun Deathmach/FreeRoam/Minigames benzeri?


Tyusuf

Alıntı yapılan: Baran - 29 Kasım 2017, 21:55:12

Island FreeRoam Başlangıctaki gibimi istiyorsun Deathmach/FreeRoam/Minigames benzeri?


ya roleplay sunucusu üzerinde çalısıyorum oyuncu oyuna kayıt oluyor ya doğum tarihi skin seçimi diye en sonundada oyuna nerde başlaması sorulcak lasventurası seçerse lasventurastaki spawn alanında doğucak los santosu seçerse los santostaki spawn alanında oyuna başlıcak


Baran

Alıntı yapılan: Tyusuf - 29 Kasım 2017, 21:57:54

Alıntı yapılan: Baran - 29 Kasım 2017, 21:55:12

Island FreeRoam Başlangıctaki gibimi istiyorsun Deathmach/FreeRoam/Minigames benzeri?


ya roleplay sunucusu üzerinde çalısıyorum oyuncu oyuna kayıt oluyor ya doğum tarihi skin seçimi diye en sonundada oyuna nerde başlaması sorulcak lasventurası seçerse lasventurastaki spawn alanında doğucak los santosu seçerse los santostaki spawn alanında oyuna başlıcak


Sana Önerim Biraz Daha Basit aşamalardan başla, anladığım kadarıyla bu genel olarak kodlanması zor olan birşey. heleki resimle falan istiyorsan iş iyice zorlaşır, ama umudunu kesme illaki yapan olucaktır, ingilizce bilgin var ise ingiliz forumlarından bilgi al. onlar genel olarak bilirler.


Tyusuf

Umarım biri yardımcı olur


NexoR

Önce #define kodlarımızı tanıtalım.

//=============================
#define DOGUM_LV (0) // Eğer oyuncunun değeri buna eşitse
#define DOGUM_LS (1) // ""
//=============================
#define SPAWN_D (10) // Bu Dialogumuz ve ID'si
//=============================


Şimdi bir değişken tanımlayalım.

new DogusYeri[MAX_PLAYERS] = 0;

Oyuncunun kayıtlarını tamamladığı kısma gelip bu kodu yapıştırın.

ShowPlayerDialog(playerid, SPAWN_D, DIALOG_STYLE_LIST, "Nerede Doğmak İstersiniz ?", "Las Venturas\nLos Santos\n", "Doğ", "");

Daha sonra OnDialogResponse kısma gelip bu kodu yapıştırın.

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case SPAWN_D:
{
// if(!response) -> Nedir ?: Eğer oyuncu ESC basarsa tekrardan doğmak istediği yeri soracak
if(!response) return ShowPlayerDialog(playerid, SPAWN_D, DIALOG_STYLE_LIST, "Nerede Doğmak İstersiniz ?", "Las Venturas\nLos Santos\n", "Doğ", "");
if(response) // Oyuncu Enter veya Fare ile Sol Tıklama yaptı
{
switch(listitem) // nereye doğmak istediğini çekiyoruz
{
case 0: // Las Venturas
{
DogusYeri[playerid] = DOGUM_LV; // Oyuncunun doğum yerini Las Venturas olarak ayarlıyoruz.
SendClientMessage(playerid, -1, "Doğum yeri Las Venturas olarak ayarlandı."); // Oyuncuya mesaj gönderiyoruz.
}
case 1: // Los Santos
{
DogusYeri[playerid] = DOGUM_LS; // Oyuncunun doğum yerini Los Santos olarak ayarlıyoruz.
SendClientMessage(playerid, -1, "Doğum yeri Los Santos olarak ayarlandı."); // Oyuncuya mesaj gönderiyoruz.
}
}
}
}
}
return 1;
}


Şimdi OnPlayerSpawn kısma gelip bu kodu yapıştırın.

public OnPlayerSpawn(playerid)
{
switch(DogusYeri[playerid]) // Doğuş değerimizi arıyoruz...
{
case DOGUM_LV: // doğuş değerimiz buraya eşitse olacaklar:
{
// Doğum pozisyonları, SetPlayerPos gibi vs..
}
case DOGUM_LS: // doğuş değerimiz buraya eşitse olacaklar:
{
// Doğum pozisyonları, SetPlayerPos gibi vs..
}
default:
{
// Eğer değerlerimiz yukarıdakilere uymuyorsa.
}
}
return 1;
}


Elimden geldiğince detaylı anlatmaya çalıştım. Umarım anlamışsındır.


Tyusuf

Alıntı yapılan: NexoR - 29 Kasım 2017, 22:48:05

Önce #define kodlarımızı tanıtalım.

//=============================
#define DOGUM_LV (0) // Eğer oyuncunun değeri buna eşitse
#define DOGUM_LS (1) // ""
//=============================
#define SPAWN_D (10) // Bu Dialogumuz ve ID'si
//=============================


Şimdi bir değişken tanımlayalım.

new DogusYeri[MAX_PLAYERS] = 0;

Oyuncunun kayıtlarını tamamladığı kısma gelip bu kodu yapıştırın.

ShowPlayerDialog(playerid, SPAWN_D, DIALOG_STYLE_LIST, "Nerede Doğmak İstersiniz ?", "Las Venturas\nLos Santos\n", "Doğ", "");

Daha sonra OnDialogResponse kısma gelip bu kodu yapıştırın.

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case SPAWN_D:
{
// if(!response) -> Nedir ?: Eğer oyuncu ESC basarsa tekrardan doğmak istediği yeri soracak
if(!response) return ShowPlayerDialog(playerid, SPAWN_D, DIALOG_STYLE_LIST, "Nerede Doğmak İstersiniz ?", "Las Venturas\nLos Santos\n", "Doğ", "");
if(response) // Oyuncu Enter veya Fare ile Sol Tıklama yaptı
{
switch(listitem) // nereye doğmak istediğini çekiyoruz
{
case 0: // Las Venturas
{
DogusYeri[playerid] = DOGUM_LV; // Oyuncunun doğum yerini Las Venturas olarak ayarlıyoruz.
SendClientMessage(playerid, -1, "Doğum yeri Las Venturas olarak ayarlandı."); // Oyuncuya mesaj gönderiyoruz.
}
case 1: // Los Santos
{
DogusYeri[playerid] = DOGUM_LS; // Oyuncunun doğum yerini Los Santos olarak ayarlıyoruz.
SendClientMessage(playerid, -1, "Doğum yeri Los Santos olarak ayarlandı."); // Oyuncuya mesaj gönderiyoruz.
}
}
}
}
}
return 1;
}


Şimdi OnPlayerSpawn kısma gelip bu kodu yapıştırın.

public OnPlayerSpawn(playerid)
{
switch(DogusYeri[playerid]) // Doğuş değerimizi arıyoruz...
{
case DOGUM_LV: // doğuş değerimiz buraya eşitse olacaklar:
{
// Doğum pozisyonları, SetPlayerPos gibi vs..
}
case DOGUM_LS: // doğuş değerimiz buraya eşitse olacaklar:
{
// Doğum pozisyonları, SetPlayerPos gibi vs..
}
default:
{
// Eğer değerlerimiz yukarıdakilere uymuyorsa.
}
}
return 1;
}


Elimden geldiğince detaylı anlatmaya çalıştım. Umarım anlamışsındır.


Zaman ayırıp ilgilendiğiniz için çok teşekkür ederim şuan deniyorum bir sorun olursa buradan yazacağım tekrardan teşekkürler.