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

Basit bir WASTED yapalım mı ?

Başlatan ByHgGlryz, 09 Mart 2017, 18:45:26

« önceki - sonraki »

0 Üye ve 5 Ziyaretçi konuyu incelemekte.

ByHgGlryz

SA:MP Wasted Ölüm TextDraw Sistemi



Merhaba arkadaşlar,

Bu textdrawı 0.3c sürümünde ki sunucuma ekledim, bu konuda sizlere SA:MP sunucularınızda kullanabileceğiniz basit ama hoş görünümlü bir ölüm TextDraw sistemi paylaşacağım.

Oyuncu öldüğünde ekranda GTA tarzı WASTED yazısı belirir. Oyuncu yeniden doğduğunda yani spawn olduğunda bu TextDraw otomatik olarak gizlenir.



Sistem Ne İşe Yarar?

Bu sistem sayesinde:
  • Oyuncu öldüğünde ekranda Wasted yazısı çıkar.
  • Arka plana koyu bir efekt verir.
  • Ortada kırmızı Wasted yazısı gösterir.
  • Alt kısımda kısa bir açıklama yazısı gösterir.
  • Oyuncu spawn olduğunda TextDraw otomatik olarak kapanır.



Kurulum Anlatımı

Kurulum oldukça basittir. Kodları doğru bölümlere eklemeniz yeterlidir.



1. TextDraw Tanımlarını Ekleyin

Öncelikle modunuzun en üst kısmına, yani global değişkenlerin bulunduğu bölüme aşağıdaki kodları ekleyin.

PAWN Kodu: Seç
new Text:Wasted0;
new Text:Wasted1;
new Text:Wasted2;
new Text:Wasted3;
new Text:Wasted4;
new Text:Wasted5;
new Text:Wasted6;
new Text:Wasted7;

Açıklama:

Bu kısımda kullanacağımız TextDraw değişkenlerini oluşturuyoruz. Sistem toplamda 8 farklı TextDraw parçasından oluşmaktadır.



2. TextDrawları Oluşturun

Aşağıdaki kodları public OnGameModeInit() içerisine ekleyin.

PAWN Kodu: Seç
Wasted0 = TextDrawCreate(600.000000, 140.000000, "server ismi");
TextDrawLetterSize(Wasted0, 0.400000, 1.600000);
TextDrawAlignment(Wasted0, 3);
TextDrawColor(Wasted0, -1);
TextDrawSetShadow(Wasted0, 0);
TextDrawSetOutline(Wasted0, 0);
TextDrawBackgroundColor(Wasted0, 255);
TextDrawFont(Wasted0, 2);
TextDrawSetProportional(Wasted0, 1);
TextDrawSetShadow(Wasted0, 0);

Wasted1 = TextDrawCreate(-25.000064, 1.000000, ".");
TextDrawLetterSize(Wasted1, 0.500000, 49.499992);
TextDrawTextSize(Wasted1, 655.000000, 0.000000);
TextDrawAlignment(Wasted1, 1);
TextDrawColor(Wasted1, -1);
TextDrawUseBox(Wasted1, 1);
TextDrawBoxColor(Wasted1, 150);
TextDrawSetShadow(Wasted1, 0);
TextDrawSetOutline(Wasted1, 0);
TextDrawBackgroundColor(Wasted1, 255);
TextDrawFont(Wasted1, 1);
TextDrawSetProportional(Wasted1, 1);
TextDrawSetShadow(Wasted1, 0);

Wasted2 = TextDrawCreate(-10.000012, 165.039276, ".");
TextDrawLetterSize(Wasted2, 0.180000, 11.579979);
TextDrawTextSize(Wasted2, 658.005615, -3.000000);
TextDrawAlignment(Wasted2, 1);
TextDrawColor(Wasted2, -1);
TextDrawUseBox(Wasted2, 1);
TextDrawBoxColor(Wasted2, 120);
TextDrawSetShadow(Wasted2, 0);
TextDrawSetOutline(Wasted2, 0);
TextDrawBackgroundColor(Wasted2, 255);
TextDrawFont(Wasted2, 1);
TextDrawSetProportional(Wasted2, 1);
TextDrawSetShadow(Wasted2, 0);

Wasted3 = TextDrawCreate(269.198883, 179.352722, "~r~wasted");
TextDrawLetterSize(Wasted3, 0.789999, 3.999998);
TextDrawAlignment(Wasted3, 1);
TextDrawColor(Wasted3, -16776961);
TextDrawSetShadow(Wasted3, 0);
TextDrawSetOutline(Wasted3, 0);
TextDrawBackgroundColor(Wasted3, 255);
TextDrawFont(Wasted3, 3);
TextDrawSetProportional(Wasted3, 1);
TextDrawSetShadow(Wasted3, 0);

Wasted4 = TextDrawCreate(272.000976, 236.999755, "~w~(~g~~h~geberdin~w~)");
TextDrawLetterSize(Wasted4, 0.559997, 1.799998);
TextDrawAlignment(Wasted4, 1);
TextDrawColor(Wasted4, -1);
TextDrawSetShadow(Wasted4, 0);
TextDrawSetOutline(Wasted4, 0);
TextDrawBackgroundColor(Wasted4, 255);
TextDrawFont(Wasted4, 3);
TextDrawSetProportional(Wasted4, 1);
TextDrawSetShadow(Wasted4, 0);

Wasted5 = TextDrawCreate(-10.000012, 165.039276, ".");
TextDrawLetterSize(Wasted5, 0.180000, 0.109810);
TextDrawTextSize(Wasted5, 658.005615, -3.000000);
TextDrawAlignment(Wasted5, 1);
TextDrawColor(Wasted5, -1);
TextDrawUseBox(Wasted5, 1);
TextDrawBoxColor(Wasted5, 8388863);
TextDrawSetShadow(Wasted5, 0);
TextDrawSetOutline(Wasted5, 0);
TextDrawBackgroundColor(Wasted5, 255);
TextDrawFont(Wasted5, 2);
TextDrawSetProportional(Wasted5, 1);
TextDrawSetShadow(Wasted5, 0);

Wasted6 = TextDrawCreate(-10.000012, 267.845550, ".");
TextDrawLetterSize(Wasted6, 0.180000, 0.109810);
TextDrawTextSize(Wasted6, 658.005615, -3.000000);
TextDrawAlignment(Wasted6, 1);
TextDrawColor(Wasted6, -1);
TextDrawUseBox(Wasted6, 1);
TextDrawBoxColor(Wasted6, 41215);
TextDrawSetShadow(Wasted6, 0);
TextDrawSetOutline(Wasted6, 0);
TextDrawBackgroundColor(Wasted6, 255);
TextDrawFont(Wasted6, 1);
TextDrawSetProportional(Wasted6, 1);
TextDrawSetShadow(Wasted6, 0);

Wasted7 = TextDrawCreate(266.800140, 218.233489, "-");
TextDrawLetterSize(Wasted7, 7.643217, 1.030000);
TextDrawAlignment(Wasted7, 1);
TextDrawColor(Wasted7, -1);
TextDrawSetShadow(Wasted7, 0);
TextDrawSetOutline(Wasted7, 0);
TextDrawBackgroundColor(Wasted7, 255);
TextDrawFont(Wasted7, 1);
TextDrawSetProportional(Wasted7, 1);
TextDrawSetShadow(Wasted7, 0);

Not:

PAWN Kodu: Seç
"server ismi"

yazan kısmı kendi sunucu adınızla değiştirebilirsiniz.

Örnek:

PAWN Kodu: Seç
Wasted0 = TextDrawCreate(600.000000, 140.000000, "My Server Name");



3. Oyuncu Spawn Olunca TextDrawları Gizleyin

Aşağıdaki kodları public OnPlayerSpawn(playerid) içerisine ekleyin.

PAWN Kodu: Seç
TextDrawHideForPlayer(playerid, Wasted0);
TextDrawHideForPlayer(playerid, Wasted1);
TextDrawHideForPlayer(playerid, Wasted2);
TextDrawHideForPlayer(playerid, Wasted3);
TextDrawHideForPlayer(playerid, Wasted4);
TextDrawHideForPlayer(playerid, Wasted5);
TextDrawHideForPlayer(playerid, Wasted6);
TextDrawHideForPlayer(playerid, Wasted7);

Açıklama:

Oyuncu öldükten sonra TextDraw ekranda görünür. Oyuncu tekrar spawn olduğunda bu kodlar sayesinde TextDraw kapanır.

Eğer bu kısmı eklemezseniz, oyuncu spawn olduktan sonra bile Wasted yazısı ekranda kalabilir.



4. Oyuncu Ölünce TextDrawları Gösterin

Aşağıdaki kodları public OnPlayerDeath(playerid, killerid, reason) içerisine ekleyin.

PAWN Kodu: Seç
TextDrawShowForPlayer(playerid, Wasted0);
TextDrawShowForPlayer(playerid, Wasted1);
TextDrawShowForPlayer(playerid, Wasted2);
TextDrawShowForPlayer(playerid, Wasted3);
TextDrawShowForPlayer(playerid, Wasted4);
TextDrawShowForPlayer(playerid, Wasted5);
TextDrawShowForPlayer(playerid, Wasted6);
TextDrawShowForPlayer(playerid, Wasted7);

Açıklama:

Bu kısım oyuncu öldüğü anda çalışır. Oyuncu öldüğünde ekranda arka plan efekti, renkli çizgiler ve Wasted yazısı gösterilir.



Daha Düzenli Kullanım İçin Stock Örneği

Kodları daha düzenli kullanmak isterseniz aşağıdaki gibi iki adet stock oluşturabilirsiniz.

PAWN Kodu: Seç
stock ShowWastedTextDraw(playerid)
{
    TextDrawShowForPlayer(playerid, Wasted0);
    TextDrawShowForPlayer(playerid, Wasted1);
    TextDrawShowForPlayer(playerid, Wasted2);
    TextDrawShowForPlayer(playerid, Wasted3);
    TextDrawShowForPlayer(playerid, Wasted4);
    TextDrawShowForPlayer(playerid, Wasted5);
    TextDrawShowForPlayer(playerid, Wasted6);
    TextDrawShowForPlayer(playerid, Wasted7);
    return 1;
}

stock HideWastedTextDraw(playerid)
{
    TextDrawHideForPlayer(playerid, Wasted0);
    TextDrawHideForPlayer(playerid, Wasted1);
    TextDrawHideForPlayer(playerid, Wasted2);
    TextDrawHideForPlayer(playerid, Wasted3);
    TextDrawHideForPlayer(playerid, Wasted4);
    TextDrawHideForPlayer(playerid, Wasted5);
    TextDrawHideForPlayer(playerid, Wasted6);
    TextDrawHideForPlayer(playerid, Wasted7);
    return 1;
}

Daha sonra callbacklerde şu şekilde kullanabilirsiniz:

PAWN Kodu: Seç
public OnPlayerDeath(playerid, killerid, reason)
{
    ShowWastedTextDraw(playerid);
    return 1;
}

public OnPlayerSpawn(playerid)
{
    HideWastedTextDraw(playerid);
    return 1;
}

Bu yöntem, kodunuzu daha temiz ve okunabilir hale getirir.



İsteğe Bağlı: GameMode Kapanırken TextDrawları Silme

Mod kapanırken TextDrawları temizlemek isterseniz public OnGameModeExit() içine aşağıdaki kodları ekleyebilirsiniz.

PAWN Kodu: Seç
TextDrawDestroy(Wasted0);
TextDrawDestroy(Wasted1);
TextDrawDestroy(Wasted2);
TextDrawDestroy(Wasted3);
TextDrawDestroy(Wasted4);
TextDrawDestroy(Wasted5);
TextDrawDestroy(Wasted6);
TextDrawDestroy(Wasted7);

Bu zorunlu değildir fakat temiz kullanım açısından önerilir.



Özelleştirme

Bu TextDraw sistemini kendinize göre düzenleyebilirsiniz.

Sunucu adını değiştirmek için:

PAWN Kodu: Seç
Wasted0 = TextDrawCreate(600.000000, 140.000000, "server ismi");

Bu satırdaki server ismi yazısını kendi sunucu adınızla değiştirin.

Wasted yazısını değiştirmek için:

PAWN Kodu: Seç
Wasted3 = TextDrawCreate(269.198883, 179.352722, "~r~wasted");

Buradaki wasted yazısını farklı bir yazı ile değiştirebilirsiniz.

Örnek:

PAWN Kodu: Seç
Wasted3 = TextDrawCreate(269.198883, 179.352722, "~r~oldun");

Alt açıklama yazısını değiştirmek için:

PAWN Kodu: Seç
Wasted4 = TextDrawCreate(272.000976, 236.999755, "~w~(~g~~h~geberdin~w~)");

Bu satırdaki yazıyı istediğiniz şekilde düzenleyebilirsiniz.



Renk Kodları Hakkında

SA:MP TextDraw renk kodlarında bazı özel işaretler kullanılabilir.

  • ~r~ kırmızı renk verir.
  • ~g~ yeşil renk verir.
  • ~w~ beyaz renk verir.
  • ~h~ rengi daha parlak yapar.

Örnek:

PAWN Kodu: Seç
~r~wasted

Bu kullanım yazıyı kırmızı yapar.



Olası Sorunlar ve Çözümleri

Sorun: TextDraw ekranda sürekli kalıyor.

Çözüm: OnPlayerSpawn içerisine TextDrawHideForPlayer kodlarını eklediğinizden emin olun.



Sorun: TextDraw hiç görünmüyor.

Çözüm: TextDraw oluşturma kodlarının OnGameModeInit içerisinde olduğundan emin olun. Ayrıca OnPlayerDeath içerisine TextDrawShowForPlayer kodlarını eklemeyi unutmayın.



Sorun: Yazı istediğim yerde durmuyor.

Çözüm: TextDrawCreate içerisindeki X ve Y koordinatlarını değiştirmeniz gerekir.

Örnek:

PAWN Kodu: Seç
TextDrawCreate(269.198883, 179.352722, "~r~wasted");

Buradaki ilk sayı X, ikinci sayı Y koordinatıdır.



Sonuç

Bu sistem sayesinde oyuncu öldüğünde ekranda GTA tarzı bir Wasted efekti gösterebilirsiniz.

Basit, kullanışlı ve düzenlenebilir bir TextDraw sistemidir. Roleplay, freeroam, deathmatch veya farklı SA:MP modlarında rahatlıkla kullanılabilir.

İyi kullanımlar.
Son düzenlenme: 18 Mayıs 2026, 11:13:45 ByHgGlryz Sebep: Değişiklik + .GİF + Örnek eklenti

-
SA-MP:
[MAP]Çete Mekanı (Basit Map) - [ADD]Wasted (Basit Pawn Kod)
-
SA-MP Server IP:   188.165.192.24:4577

Quintel

Paylaşım için teşekkürler, sistem resimdekinin aynısımı ?


ByHgGlryz

Alıntı yapılan: Quintel - 09 Mart 2017, 19:16:25

Paylaşım için teşekkürler, sistem resimdekinin aynısımı ?


Sayılır.
Resime batığınızda gta cilar yazısı yok + credits []yu$uf
yazısı yoktur ek olarak sadece 2 küçük kutu oda Hırsız Polis için güzel bir görünüme sahipleştirdim.

Güncel resim'i çekmeye vakit bulusam güncelleyeceğim.
Son düzenlenme: 09 Mart 2017, 19:40:32 ByHgGlryz

-
SA-MP:
[MAP]Çete Mekanı (Basit Map) - [ADD]Wasted (Basit Pawn Kod)
-
SA-MP Server IP:   188.165.192.24:4577

Quintel

Alıntı yapılan: ByHgGlryz - 09 Mart 2017, 19:17:40

Alıntı yapılan: Quintel - 09 Mart 2017, 19:16:25

Paylaşım için teşekkürler, sistem resimdekinin aynısımı ?


Sayılır.
Resime batığınızda gta cilar yazısı yok + credits []yu$uf
yazısı yoktur ek olarak sadece 2 küçük kutu oda Hırsız Polis için güzel bir görünüme sahipleştirdim.

Güncel resim'i çekmeye vakit bulusam güncelleyeceğim.

Resimi güncellememen hata bu sistemin resmini at lütfen.


Excision


ByHgGlryz


-
SA-MP:
[MAP]Çete Mekanı (Basit Map) - [ADD]Wasted (Basit Pawn Kod)
-
SA-MP Server IP:   188.165.192.24:4577

Drunken

Güzel Paylaşım.Eline sağlık.



TheHunter

Güzel Paylaşım.Eline sağlık.

Ama Wasted yerine direk Gebersin yazmak daha mantıklı olurdu

Bazıları gelip krallık ilan etmiş....

Unutma sen kısa paçalı don ile gezerken, biz piyasada Tanrıydık, sen yokkende biz vardık, sen gittikten sonrada burada olacağız.

-TheVeKToRs

ByHgGlryz

Alıntı yapılan: Drunken - 21 Mart 2017, 16:48:24

Güzel Paylaşım.Eline sağlık.

Teşekkürler Yorumun için :)

Alıntı yapılan: VeKToR - 22 Mart 2017, 09:17:33

Güzel Paylaşım.Eline sağlık.

Ama Wasted yerine direk Gebersin yazmak daha mantıklı olurdu

Yorumun için teşekkürler.

Zaten var ya :) ama Wasted yazısı öncelik :) :D



-
SA-MP:
[MAP]Çete Mekanı (Basit Map) - [ADD]Wasted (Basit Pawn Kod)
-
SA-MP Server IP:   188.165.192.24:4577

Quadranill

Spawn olunca ekrandan gitmiyor yazı ?


Aytuğ


Pablo

Eline Saglık Güzel Olmuşda O Parantezleri Kaldıramazmıyız :helal:
Son düzenlenme: 06 Ocak 2018, 11:49:15 ByGold
Alıntı




Pawnotürk Üyesi 2017-2020

Jizzy



Gogh

Alıntı yapılan: ByGold - 06 Ocak 2018, 11:40:30

Eline Saglık Güzel Olmuşda O Parantezleri Kaldıramazmıyız :helal:

İstersen kaldırabilirsin