Yükleme URL'si

Convar **sv\_loadingurl**, bir sunucu sahibinin, sunucuya katılan oyunculara sunucu yükleme ekranında bir web sayfasını göstermelerini sağlar.

## Sunucunuzun yükleme URL'sini ayarlamak

Eğer convar'ı konsoldan ayarlıyorsanız, URL etrafına tırnak işareti koymayı unutmayınız. Ayrıca başlangıca bir + işareti eklenmelidir. Komutunuz şu şekilde olmalıdır:

```
+sv_loadingurl "http://wiki.garrysmod.com/"

```

Eğer bunu, autoexec.cfg ayar dosyanıza yerleştiriyorsanız, +'yı şu biçimde sildiğinizden emin olunuz:

```
sv_loadingurl "http://wiki.garrysmod.com/"

```

İsterseniz, %s ya da %m' yi URL'nizde (daha çok GET değişkeni içinde) kullanarak, steam id ve harita ismini ayrı ayrı geçebilirsiniz. Örnek olarak:

```
sv_loadingurl "http://wiki.garrysmod.com/?mapname=%m&steamid=%s"

```

Bunlar daha sonra basit bir PHP koduyla elde edilebilir.

## Özel yükleme sayfaları

Bu kısım sayfanızı oluşturmanız hakkında detaylı bilgi sunmamaktadır ve bir tanesini tasarladığınızı varsaymaktadır.

### Javascript fonksiyonları

Garry's Mod tarafından doğrudan çağrılan birkaç Javascript fonksiyonu mevcuttur. Bunları kullanmak için, basitçe sayfanızın adında - olayla ilişki gerçekleştiğinde çağırılacak bir fonksiyon yaratınız.

```
/*
	Yukleme ekrani tum varliklari yuklemeyi bitirirken, basta cagrilir.

	serverName- Sunucu'nun adi.
		Convar: hostname
		Ornegin: "Garry's Mod Server"
	serverURL- Yukleme ekrani URL'si.
		Convar: sv_loadingurl
		Ornegin: "http://mywebsite.com/myloadingscreen.html"
 	mapName- Sunucuda oynanan haritanin ismi.
 		Ornegin: "cs_office"
 	maxPlayers- Sunucu icin tavan oyuncu sayisi.
 		Convar: maxplayers
 	steamID- Katilan istemcinin 64-bit, numerik Steam topluluk ID'si.
 		Ornegin: 76561198012345678
 	gamemode- Sunucudaki su anda oynanan oyun modu.
 		Convar: gamemode
 		Ornegin: "deathrun"
 */
 function GameDetails( servername, serverurl, mapname, maxplayers, steamid, gamemode ) {}

```

```
/*
	Baslangicta cagrilir

	total- Istemci tarafindan indırılmesi gereken toplam dosya sayisi.
*/
  function SetFilesTotal( total ) {}

```

```
/*
	Sunucu bir dosyayi indirmeye basladiginda cagrilir.

	fileName- Istemcinin indirdigi dosyanin tam yolu ve ismidir.
		Bu yol, dosyanin sunucu ustundeki yerinden cok, kaynagin yerini belirtir.
		Ornegin, "garrysmod/addons/myAddon/materials/models/bobsModels/car.mdl" dosyası:
			"materials/models/bobsModels/car.mdl" olacaktir.
*/
  function DownloadingFile( fileName ) {}

```

```
/*
	Istemcinin katilim durumu degistiginde cagrilir.

	status- Guncel katilim durumu.
		Ornegin: "Istemci bilgisi gonderiliyor..."
*/
  function SetStatusChanged( status ) {}

```

```
/*
	Istemcinin indirmesi gereken dosya sayisi degistiginde cagrilir.

	needed- Istemcinin indirmesi gereken kalan dosya sayisidir.*/
  function SetFilesNeeded( needed ) {}

```

### PHP GET parametreleri

**%m** ve **%s** sunucunun güncel haritası ve oyuncunun 64-bit steam topluluk ID'sinin yerine geçecektir. Bu, PHP'nin $\_GET superglobal'ini kullanarak elde edebileceğiniz anlamına gelmektedir.

Harita bir yazı değeridir, bu yüzden kullanımında herhangi bir problem yaşamayacaksınızdır. Ancak, steam topluluk ID'si genelde oyun içinde görülen, kısaltılmış steam ID'si değildir. Aşağıda bir dönüştürme yöntemi (PHP'nin bcmath ve bcsub'ları kullanılarak) gösterilmiştir.

```
<?php
$authserver = bcsub( $communityid, '76561197960265728' ) & 1;
//Get the third number of the steamid
$authid = ( bcsub( $communityid, '76561197960265728' ) - $authserver ) / 2;
//Concatenate the STEAM_ prefix and the first number, which is always 0, as well as colons with the other two numbers
$steamid = "STEAM_0:$authserver:$authid";
?>

```

# Örnekler

## Örnek

Eğer basit bir resmi yükleme ekranı olarak kullanmak istiyorsanız fakat bir webhost'unuz yoksa, aşağıdaki kodu, *sv\_loadingurl* değeriniz olarak kullanabilirsiniz. *URL-GOES-HERE* kısmını kullanmak istediğiniz resmin linki ile değiştirdiğinizden emin olunuz. Bu, Data URI'larının HTML'i URL için yazılmasında kullanılır.

```
data:text/html, <style>html, body{ padding:0;margin:0;background:#000 }</style><img src="URL-GOES-HERE" width="100%" height="100%">

```

## Yükleme Tohumu

Bir yükleme ekranı yapılandırmak için bir uygulama iskeletidir. Tasarımınızı çabucak oluşturmaya başlamak için kullanabilirsiniz. Başlamadan önce okunması gereken dosyayı okumayı unutmayınız. https://github.com/glua/load-seed