İsteyen kullanılır istemeyen kullanmaz kimse kimseye çamur atamaz. :anons:
Modun başına.
#define MAX_LOJISTIK 250 // Maksimum oluşturulabilecek lojistik sayısıdır.
Modun enum yerine.
enum LojistikData
{
lojistikID,
lojistikOlustu,
lojistikIsim[32],
lojistikSahip,
lojistikTur,
lojistikTip,
lojistikKasa
}
new Lojistik[MAX_LOJISTIK][LojistikData];
pData kısmına.
pLojistikDavet,
pLojistik,
Dchak,
Discordbagladi,
Dcid[32],
Dckod[16],
Dcacik,
logTur,
logSeviye,
pIllegalTir,
pLojistikFirma
OnGameModeInıt içine.
CreateDynamicPickup(19627, 23, -2003.7554,-2415.6399, 30.6250, 0);
CreateDynamic3DTextLabel("{8D8DFF}[Angel Pine Lojistik]\n{AFAFAF}/tircilik", -1, -2003.7554, -2415.6399, 30.6250, 10.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID);
CreateDynamicPickup(19627, 23, -186.6671,-278.2627, 1.4297, 0);
CreateDynamic3DTextLabel("{8D8DFF}[Blueberry Lojistik]\n{AFAFAF}/tircilik", -1, -186.6671, -278.2627, 1.4297, 10.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID);
CreateDynamicPickup(19627, 23, 2347.8809,2727.4158, 10.8203, 0);
CreateDynamic3DTextLabel("{8D8DFF}[Las Venturas Lojistik]\n{AFAFAF}/tircilik", -1, 2347.8809, 2727.4158, 10.8203, 10.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID);
CreateDynamicPickup(19627, 23, -1726.4657,-122.0407, 3.5489, 0);
CreateDynamic3DTextLabel("{8D8DFF}[San Fierro Lojistik]\n{AFAFAF}/tircilik", -1, -1726.4657, -122.0407, 3.5489, 10.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID);
Lojistik_Yukle();
OnPlayerConnect içine.
PlayerData[playerid][pLojistikFirma] = -1;
//Sistem SpawN Tarafından kodlanmıştır////
//23.02.2020//
CMD:lojistikkur(playerid)
{
if(!OyundaDegil(playerid)) return 1;
if(PlayerData[playerid][pAdmin] < 1) return HataMesajGonder(playerid, "Üzgünüm, bu sistem geliştirme aşamasında!");
if(PlayerData[playerid][pBaygin] == 1) return HataMesajGonder(playerid, "Bunu şu an yapamazsınız.");
if(PlayerData[playerid][pLojistik] != -1) return HataMesajGonder(playerid,"Zaten bir lojistiğe dahilsiniz.");
if(PlayerData[playerid][pLevel] < 5) return HataMesajGonder(playerid,"Lojistik kurmak için en az 5 seviye olmalısınız.");
Dialog_Show(playerid,DIALOG_LOJISTIK_KUR,DIALOG_STYLE_INPUT,"Lojistik Kur","{FFFFFF}Lütfen kurmak istediğiniz birliğin ismini girin:\n\n{FF9900}NOT: {FFFFFF}Lojistik kurmak için {2ECC71}$150,000 {FFFFFF}ödemelisiniz.","Kur","Kapat");
return 1;
}
Dialog:DIALOG_LOJISTIK_KUR(playerid, response, listitem, inputtext[])
{
if(response)
{
if(strlen(inputtext) > 32) return Dialog_Show(playerid,DIALOG_LOJISTIK_KUR,DIALOG_STYLE_INPUT,"Lojistik Kur","{FF0000}Lojistik isminiz 32 karakterden büyük olamaz!\n{FFFFFF}Lütfen kurmak istediğiniz birliğin ismini girin:\n\n{FF9900}NOT: {FFFFFF}Lojistik kurmak için {2ECC71}$150,000 {FFFFFF}ödemelisiniz.","Kur","Kapat");
if(PlayerData[playerid][pCash] < 150000) return HataMesajGonder(playerid, "Yeterli paranız yok. ($150,000)");
new lojistikisim[32];
format(lojistikisim, 32, inputtext);
new lid = Lojistik_Olustur(lojistikisim);
if(lid == -1) return HataMesajGonder(playerid,"Lojistik oluşturulamadı, lütfen geliştirici ekibiyle iletişime geçin.");
ParaVer(playerid, -150000);
MesajGonder(playerid,"Başarı ile '%s' adlı lojistik oluşturuldu, /lojistik komutuyla lojistik ayarlarına erişebilirsiniz.", lojistikisim);
PlayerData[playerid][pLojistik] = lid;
Lojistik[lid][lojistikSahip] = PlayerData[playerid][pID];
Log_Write("logs/lojistiklog.txt", "%s(%d) adli oyuncu %s isimli lojistik olusturdu.",ReturnName(playerid),playerid,BirlikAdi[playerid]);
Oyuncu_Kaydet(playerid);
Lojistik_Kaydet(lid);
}
return 1;
}
CMD:lojistik(playerid)
{
if(!OyundaDegil(playerid)) return 1;
if(PlayerData[playerid][pAdmin] < 1) return HataMesajGonder(playerid, "Üzgünüm, bu sistem geliştirme aşamasında!");
Dialog_Show(playerid, DIALOG_LOJISTIK, DIALOG_STYLE_LIST, "{AE8014}Lojistik", "Kendi Ağlarım\nLojistik Şirketleri\nSaygın Şöförler\n", "Seç", "İptal");
return 1;
}
CMD:tiriptal(playerid)
{
TirBasladi[playerid] = 0;
DisablePlayerCheckpoint(playerid);
BilgiMesajGonder(playerid, "Başarıyla tırcılık seferinizi iptal ettiniz.");
return 1;
}
CMD:tircilik(playerid)
{
if(!OyundaDegil(playerid)) return 1;
if(TirBasladi[playerid]) return HataMesajGonder(playerid, "Zaten aktif seferiniz var, seferinizi bitirin ya da iptal edin(/tiriptal).");
if(IsPlayerInRangeOfPoint(playerid, 10.0, 2347.8809, 2727.4158, 10.8203) || IsPlayerInRangeOfPoint(playerid, 10.0, -1726.4657, -122.0407, 3.5489) || IsPlayerInRangeOfPoint(playerid, 10.0, -2003.7554, -2415.6399, 30.6250) || IsPlayerInRangeOfPoint(playerid, 10.0, -186.6671, -278.2627, 1.4297))
{
if(!IsPlayerInAnyVehicle(playerid)) return HataMesajGonder(playerid, "Bu mesleğe başlamak için araçta olmalısınız!");
if(GetPlayerVehicleID(playerid) != 515 || GetPlayerVehicleID(playerid) != 514 || GetPlayerVehicleID(playerid) != 403)
{
if(PlayerData[playerid][pAdmin] < 1) return HataMesajGonder(playerid, "Üzgünüm, bu sistem geliştirme aşamasında!");
if(IsPlayerInRangeOfPoint(playerid, 10.0, 2347.8809, 2727.4158, 10.8203))
{
switch(PlayerData[playerid][pTirSeviye])
{
case 0: BolumPara[playerid] = 684;
case 1: BolumPara[playerid] = 708;
case 2: BolumPara[playerid] = 724;
case 3: BolumPara[playerid] = 732;
case 4: BolumPara[playerid] = 744;
}
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0, -1726.4657, -122.0407, 3.5489))
{
switch(PlayerData[playerid][pTirSeviye])
{
case 0: BolumPara[playerid] = 781;
case 1: BolumPara[playerid] = 797;
case 2: BolumPara[playerid] = 808;
case 3: BolumPara[playerid] = 814;
case 4: BolumPara[playerid] = 822;
}
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0, -2003.7554, -2415.6399, 30.6250))
{
switch(PlayerData[playerid][pTirSeviye])
{
case 0: BolumPara[playerid] = 811;
case 1: BolumPara[playerid] = 824;
case 2: BolumPara[playerid] = 833;
case 3: BolumPara[playerid] = 851;
case 4: BolumPara[playerid] = 859;
}
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0, -186.6671, -278.2627, 1.4297))
{
switch(PlayerData[playerid][pTirSeviye])
{
case 0: BolumPara[playerid] = 526;
case 1: BolumPara[playerid] = 534;
case 2: BolumPara[playerid] = 539;
case 3: BolumPara[playerid] = 546;
case 4: BolumPara[playerid] = 552;
}
}
new toptur = 0, topturid = -1;
for (new i = 0; i != MAX_LOJISTIK; i ++) if (Lojistik[i][lojistikOlustu])
{
if(Lojistik[i][lojistikTur] > toptur)
{
toptur = Lojistik[i][lojistikTur];
topturid = Lojistik[i][lojistikID];
}
}
if(PlayerData[playerid][pIllegalTir])
BolumPara[playerid] += 140;
new str[256];
if(PlayerData[playerid][pLojistikFirma] == -1)
format(str, sizeof(str), "{AE8014}Lojistik: %s\n \n \nSevkiyata Başla({17692D}$%d{FFFFFF})\nAyarlar", Lojistik[topturid][lojistikIsim], BolumPara[playerid]);
else
format(str, sizeof(str), "{AE8014}Lojistik: %s\n \n \nSevkiyata Başla({17692D}$%d{FFFFFF})\nAyarlar", Lojistik[PlayerData[playerid][pLojistikFirma]][lojistikIsim], BolumPara[playerid]);
Dialog_Show(playerid, TIRCILIK, DIALOG_STYLE_LIST, "Tırcılık Mesleği", str, "Seç", "İptal");
}
else return HataMesajGonder(playerid, "Bu araç mesleğe uygun değil!");
}
else return HataMesajGonder(playerid, "Meslek noktasında değilsiniz!");
return 1;
}
Dialog:TIRCILIK(playerid, response, listitem, inputtext[])
{
if(response)
{
new str[1028], string[256];
switch(listitem)
{
case 0: {
format(str, sizeof(str), "{54390A}ID\t{54390A}Isim\t{54390A}Tur\n");
for (new i = 0; i != MAX_LOJISTIK; i ++) if (Lojistik[i][lojistikOlustu])
{
format(string, sizeof(string), "%d\t%s\t%d\n", i, Lojistik[i][lojistikIsim], Lojistik[i][lojistikTur]);
strcat(str, string);
}
Dialog_Show(playerid, TIR_LojistikSec, DIALOG_STYLE_TABLIST_HEADERS, "{AE8014}Lojistik Şirketleri", str, "Seç", "İptal");
}
case 1, 2: return cmd_tircilik(playerid);
case 3:
{
if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid))) return HataMesajGonder(playerid, "Dorseniz yok!");
if(IsPlayerInRangeOfPoint(playerid, 10.0, 2347.8809, 2727.4158, 10.8203))
{
BilgiMesajGonder(playerid, "Teslimat noktası GPS cihazınıza işaretlendi, devam edebilirsiniz.");
SetPlayerCheckpoint(playerid, -1726.4657, -122.0407, 3.5489, 5.0);
new vehid = GetPlayerVehicleID(playerid);
TirYuk[vehid] = 1;
DorseSahip[GetVehicleTrailer(vehid)] = playerid;
TirBasladi[playerid] = 1;
SendBirlikMessageEx(BIRLIK_LSPD, COLOR_RADIO, "* (Telsiz) Las Venturas bölgesinde kaçak yük taşındığına dair ihbar geldi.");
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0, -1726.4657, -122.0407, 3.5489))
{
BilgiMesajGonder(playerid, "Teslimat noktası GPS cihazınıza işaretlendi, devam edebilirsiniz.");
SetPlayerCheckpoint(playerid, -2003.7554, -2415.6399, 30.6250, 5.0);
new vehid = GetPlayerVehicleID(playerid);
TirYuk[vehid] = 1;
DorseSahip[GetVehicleTrailer(vehid)] = playerid;
TirBasladi[playerid] = 1;
SendBirlikMessageEx(BIRLIK_LSPD, COLOR_RADIO, "* (Telsiz) San Fierro bölgesinde kaçak yük taşındığına dair ihbar geldi.");
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0, -2003.7554, -2415.6399, 30.6250))
{
BilgiMesajGonder(playerid, "Teslimat noktası GPS cihazınıza işaretlendi, devam edebilirsiniz.");
SetPlayerCheckpoint(playerid, -186.6671, -278.2627, 1.4297, 5.0);
new vehid = GetPlayerVehicleID(playerid);
TirYuk[vehid] = 1;
DorseSahip[GetVehicleTrailer(vehid)] = playerid;
TirBasladi[playerid] = 1;
SendBirlikMessageEx(BIRLIK_LSPD, COLOR_RADIO, "* (Telsiz) Angel Pine, San Fierro bölgesinde kaçak yük taşındığına dair ihbar geldi.");
}
else if(IsPlayerInRangeOfPoint(playerid, 10.0, -186.6671, -278.2627, 1.4297))
{
BilgiMesajGonder(playerid, "Teslimat noktası GPS cihazınıza işaretlendi, devam edebilirsiniz.");
SetPlayerCheckpoint(playerid, 2347.8809, 2727.4158, 10.8203, 5.0);
new vehid = GetPlayerVehicleID(playerid);
TirYuk[vehid] = 1;
DorseSahip[GetVehicleTrailer(vehid)] = playerid;
TirBasladi[playerid] = 1;
SendBirlikMessageEx(BIRLIK_LSPD, COLOR_RADIO, "* (Telsiz) Blueberry, Los Santos bölgesinde kaçak yük taşındığına dair ihbar geldi.");
}
}
case 4:
{
Dialog_Show(playerid, TIR_Ayarlar, DIALOG_STYLE_LIST, "{AE8014}Tırcılık Ayarları", "İllegal Yük\n", "Seç", "İptal");
}
}
}
return 1;
}
Dialog:TIR_Ayarlar(playerid, response, listitem, inputtext[])
{
if(response)
{
switch(listitem)
{
case 0:
{
if(PlayerData[playerid][pIllegalTir])
{
PlayerData[playerid][pIllegalTir] = 0;
BilgiMesajGonder(playerid, "İllegal yük taşıma seçeneği başarıyla de-aktif edildi.");
}
else
{
PlayerData[playerid][pIllegalTir] = 1;
BilgiMesajGonder(playerid, "İllegal yük taşıma seçeneği başarıyla aktif edildi.");
}
}
}
Dialog_Show(playerid, TIR_Ayarlar, DIALOG_STYLE_LIST, "{AE8014}Tırcılık Ayarları", "İllegal Yük\n", "Seç", "İptal");
}
return 1;
}
Dialog:TIR_LojistikSec(playerid, response, listitem, inputtext[])
{
if(response)
{
new toptur = 0, topturid = -1;
for (new i = 0; i != MAX_LOJISTIK; i ++) if (Lojistik[i][lojistikOlustu])
{
if(Lojistik[i][lojistikTur] > toptur)
{
toptur = Lojistik[i][lojistikTur];
topturid = Lojistik[i][lojistikID];
}
}
if(PlayerData[playerid][pLojistikFirma] == -1)
PlayerData[playerid][pLojistikFirma] = topturid;
else
PlayerData[playerid][pLojistikFirma] = listitem;
cmd_tircilik(playerid);
}
return 1;
}
Dialog:DIALOG_LOJISTIK(playerid, response, listitem, inputtext[])
{
if(response)
{
switch(listitem)
{
case 0: {
new lid = PlayerData[playerid][pLojistik];
if(lid != -1)
{
new str[32];
format(str, sizeof(str), "{AE8014}%s", Lojistik[PlayerData[playerid][pLojistik]][lojistikIsim]);
Dialog_Show(playerid, LojistikDialog, DIALOG_STYLE_LIST, str, "Lojistik Yönetim\nLojistik İstatistikleri\nLojistik Kasası\nLojistik Üyeleri\n{8A0808}Lojistik Ayrıl\n", "Seç", "Geri");
}
else return HataMesajGonder(playerid, "Üzgünüm, herhangi bir lojistiğe dahil değilsiniz!");
}
case 1: Lojistik_Liste(playerid);
case 2: return BilgiMesajGonder(playerid, "Bu sistem geliştirme aşamasındadır!");
}
}
return 1;
}
stock GetLogisticMembers(lid)
{
new count;
foreach(new i : Player)
{
if(PlayerData[i][pLojistik] == lid)
{
count++;
}
}
return count;
}
Dialog:LojistikDialog(playerid, response, listitem, inputtext[])
{
if(response)
{
new strb[128], lid = PlayerData[playerid][pLojistik];
switch(Lojistik[lid][lojistikTip])
{
case 0: format(strb, sizeof(strb), "Gıda Taşımacılığı");
case 1: format(strb, sizeof(strb), "Endüstriyel Taşımacılığı");
case 2: format(strb, sizeof(strb), "Petrol Taşımacılığı");
case 3: format(strb, sizeof(strb), "Paylayıcı Madde Taşımacılığı");
case 4: format(strb, sizeof(strb), "Kimyasal Madde Taşımacılığı");
case 5: format(strb, sizeof(strb), "Kargo Taşımacılığı");
case 6: format(strb, sizeof(strb), "Askeri Taşımacılık");
}
switch(listitem)
{
case 0: {
new str[512], strx[1024];
format(str, sizeof(str), "%s", Lojistik[PlayerData[playerid][pLojistik]][lojistikIsim]);
format(str, sizeof(str), "Lojistik Türü: {00FF00}%s\n", strb);
strcat(strx, str);
format(str, sizeof(str), "Lojistik Davet Et\n");
strcat(strx, str);
format(str, sizeof(str), "Lojistik Üye At\n");
strcat(strx, str);
format(str, sizeof(str), "Lojistik Sil\n");
strcat(strx, str);
Dialog_Show(playerid, LojistikYonetim, DIALOG_STYLE_LIST, "Lojistik Yönetim", strx, "Seç", "Geri");
}
case 1:
{
new str[550], strx[550], lidx = PlayerData[playerid][pLojistik];
format(str, sizeof(str), "Lojistik Adı: {00FF00}%s\n", Lojistik[lidx][lojistikIsim]);
strcat(strx, str);
format(str, sizeof(str), "Lojistik Sahibi: {00FF00}%s\n", ReturnName(Lojistik[lidx][lojistikSahip], 0));
strcat(strx, str);
format(str, sizeof(str), "Lojistik Turları: {00FF00}%d\n", Lojistik[lidx][lojistikTur]);
strcat(strx, str);
format(str, sizeof(str), "Lojistik Kasası: {00FF00}$%d\n", Lojistik[lidx][lojistikKasa]);
strcat(strx, str);
format(str, sizeof(str), "Lojistik Üyeleri: {00FF00}%d\n", GetLogisticMembers(lidx));
strcat(strx, str);
Dialog_Show(playerid, LojistikIstatistik, DIALOG_STYLE_LIST, "{ff9933}Lojistik İstatistikleri", strx, "Seç", "{FF6347}Kapat");
}
case 2: {
if(lid == -1) return 0;
if(Lojistik[lid][lojistikSahip] != PlayerData[playerid][pID]) return HataMesajGonder(playerid,"Bu lojistik için yetkili değilsiniz.");
Dialog_Show(playerid, LojistikKasa, DIALOG_STYLE_LIST, "Lojistik Kasası", "{2ECC71}Kasadan Al\n{2ECC71}Kasaya Koy", "Seç", "Geri");
}
case 3: {
new str[518], strx[2048];
strcat(strx, "{FF0000}ID\t{FF0000}İsim\t\t{FF0000}Tur\n{FFFFFF}");
for(new i = 0; i < GetLogisticMembers(PlayerData[playerid][pLojistik]); i++)
{
if(PlayerData[i][pLojistik] == lid)
{
format(str, sizeof(str), "%d\t%s\t%d\n", i, ReturnName(i, 0), PlayerData[i][logTur]);
strcat(strx, str);
}
}
Dialog_Show(playerid, LojistikIstatistik, DIALOG_STYLE_LIST, "{ff9933}Lojistik İstatistikleri", strx, "Seç", "{FF6347}Kapat");
}
case 4: {
if(Lojistik[PlayerData[playerid][pLojistik]][lojistikSahip] == PlayerData[playerid][pID]) return HataMesajGonder(playerid, "Üzgünüm, lojistiğinizi silmek istiyorsanız 'Lojistik Yönetim' sekmesini kullanmalısınız.");
else return Dialog_Show(playerid, LojistikAyril, DIALOG_STYLE_MSGBOX, "{ff9933}Lojistik Ayrıl", "Gerçekten lojistiğinizden ayrılmak istiyormusunuz?", "Evet", "Hayır");
}
}
}
return 1;
}
Dialog:LojistikYonetim(playerid, response, listitem, inputtext[])
{
if(!response) return cmd_lojistik(playerid);
if(response)
{
switch(listitem)
{
case 0:
{
Dialog_Show(playerid, LojistikTip, DIALOG_STYLE_LIST, "{ff9933}Lojistik Tipi", "Gıda Taşımacılığı\nEndüstriyel Taşımacılığı\nPetrol Taşımacılığı\nPaylayıcı Madde Taşımacılığı\nKimyasal Madde Taşımacılığı\nKargo Taşımacılığı\nAskeri Taşımacılık", "Seç", "{FF6347}Kapat");
}
case 1:
{
Dialog_Show(playerid,LojistikDavetKisi,DIALOG_STYLE_INPUT,"{72C425}Lojistik Daveti","{FFFFFF}lütfen davet etmek istediğiniz kişinin kimliğini giriniz:","Gönder","İptal");
}
case 2:
{
Dialog_Show(playerid,LojistikUyeAt,DIALOG_STYLE_INPUT,"{72C425}Lojistik Üye At","Lütfen lojistikten çıkartmak istediğiniz kişinin kimliğini girin:","At","İptal");
}
}
}
return 1;
}
Dialog:LojistikUyeAt(playerid, response, listitem, inputtext[])
{
if(!response) return cmd_lojistik(playerid);
if(response)
{
if(PlayerData[strval(inputtext)][pLojistik] == PlayerData[strval(inputtext)][pLojistik] && strval(inputtext) != playerid)
{
PlayerData[strval(inputtext)][pLojistik] = -1;
BilgiMesajGonder(strval(inputtext), "Lojistikten atıldınız!");
LojistikMesaji(PlayerData[playerid][pLojistik], -1,"{ff7c4d}LOJİSTİK: {FFFFFF}%s adlı lojistik üyesi lojistikten %s tarafından atıldı.", ReturnName(strval(inputtext),0), ReturnName(playerid,0));
}
else return HataMesajGonder(playerid, "Üzgünüm, belirtilen kimlik lojistiğinizde değil ya da bulunamadı.");
}
return 1;
}
Dialog:LojistikTip(playerid, response, listitem, inputtext[])
{
if(!response) return cmd_lojistik(playerid);
if(response)
{
new strb[256];
Lojistik[PlayerData[playerid][pLojistik]][lojistikTip] = listitem;
switch(Lojistik[PlayerData[playerid][pLojistik]][lojistikTip])
{
case 0: format(strb, sizeof(strb), "Gıda Taşımacılığı");
case 1: format(strb, sizeof(strb), "Endüstriyel Taşımacılığı");
case 2: format(strb, sizeof(strb), "Petrol Taşımacılığı");
case 3: format(strb, sizeof(strb), "Paylayıcı Madde Taşımacılığı");
case 4: format(strb, sizeof(strb), "Kimyasal Madde Taşımacılığı");
case 5: format(strb, sizeof(strb), "Kargo Taşımacılığı");
case 6: format(strb, sizeof(strb), "Askeri Taşımacılık");
}
LojistikMesaji(PlayerData[playerid][pLojistik], -1,"{ff7c4d}LOJİSTİK: {FFFFFF}%s adlı lojistik üyesi lojistik tipini %s olarak ayarladı.", ReturnName(playerid,0), strb);
}
return 1;
}
Dialog:LojistikAyril(playerid, response, listitem, inputtext[])
{
if(!response) return cmd_lojistik(playerid);
if(response)
{
if(Lojistik[PlayerData[playerid][pLojistik][lojistikSahip] == PlayerData[playerid][pID])
return HataMesajGonder(playerid, "Kendi lojistiğinizden ayrılamazsınız!");
LojistikMesaji(PlayerData[playerid][pLojistik], -1,"{ff7c4d}LOJİSTİK: {FFFFFF}%s adlı lojistik üyesi lojistikten ayrıldı.",ReturnName(playerid,0));
PlayerData[playerid][pLojistik] = -1;
BilgiMesajGonder(playerid, "Başarıyla lojistikten ayrıldınız!");
}
return 1;
}
Dialog:LojistikKasa(playerid, response, listitem, inputtext[])
{
if(!response) return cmd_lojistik(playerid);
if(response)
{
if(listitem == 0)
{
if(PlayerData[playerid][pLojistik] == -1) return HataMesajGonder(playerid,"Bir lojistiğe dahil değilsiniz.");
if(Lojistik[PlayerData[playerid][pLojistik]][lojistikSahip] != PlayerData[playerid][pID])
{
HataMesajGonder(playerid,"Kasadan para almak için yeterli yetkiniz yok.");
return cmd_lojistik(playerid);
}
Dialog_Show(playerid,LojistikKasaParaAl,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Al","{FFFFFF}Lojistik kasasında {2ECC71}%s {FFFFFF}miktar para bulunmaktadır.\n{FFFFFF}Lütfen kasadan almak istediğiniz para miktarını girin:","Devam","Geri",FormatNumber(Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa]));
}
if(listitem == 1)
{
if(PlayerData[playerid][pLojistik] == -1) return HataMesajGonder(playerid,"Bir lojistiğe dahil değilsiniz.");
Dialog_Show(playerid,LojistikKasaParaKoy,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Koy","{FFFFFF}Lütfen Lojistik kasasına koymak istediğiniz para miktarını bakiyenize uygun olarak giriniz:","Devam","Geri");
}
}
return 1;
}
Dialog:LojistikKasaParaAl(playerid, response, listitem, inputtext[])
{
if(!response) return Dialog_Show(playerid,birlikKasa,DIALOG_STYLE_LIST,"Lojistik Kasası","{2ECC71}Kasadan Al\n{2ECC71}Kasaya Koy","Seç","Geri");
if(response)
{
if(PlayerData[playerid][pLojistik] == -1) return HataMesajGonder(playerid,"Bir lojistiğe dahil değilsiniz.");
if(isnull(inputtext)) return Dialog_Show(playerid,LojistikKasaParaAl,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Al","{FFFFFF}Lojistik kasasında {2ECC71}%s {FFFFFF}miktar para bulunmaktadır.\n{FFFFFF}Lütfen kasadan almak istediğiniz para miktarını girin:","Devam","Geri",FormatNumber(Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa]));
if(!IsNumeric(inputtext)) return Dialog_Show(playerid,LojistikKasaParaAl,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Al","{FFFFFF}Lojistik kasasında {2ECC71}%s {FFFFFF}miktar para bulunmaktadır.\n{FFFFFF}Lütfen kasadan almak istediğiniz para miktarını girin:","Devam","Geri",FormatNumber(Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa]));
if(strval(inputtext) <= 0)
{
HataMesajGonder(playerid, "Geçersiz miktar girdiniz.");
return Dialog_Show(playerid,LojistikKasaParaAl,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Al","{FFFFFF}Lojistik kasasında {2ECC71}%s {FFFFFF}miktar para bulunmaktadır.\n{FFFFFF}Lütfen kasadan almak istediğiniz para miktarını girin:","Devam","Geri",FormatNumber(Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa]));
}
if(strval(inputtext) > Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa])
{
HataMesajGonder(playerid,"Lojistik kasasında yeterli para yok.");
return Dialog_Show(playerid,LojistikKasaParaAl,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Al","{FFFFFF}Lojistik kasasında {2ECC71}%s {FFFFFF}miktar para bulunmaktadır.\n{FFFFFF}Lütfen kasadan almak istediğiniz para miktarını girin:","Devam","Geri",FormatNumber(Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa]));
}
Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa] -= strval(inputtext);
ParaVer(playerid,strval(inputtext));
LojistikMesaji(PlayerData[playerid][pLojistik],-1,"{ff7c4d}LOJİSTİK: {FFFFFF}%s adlı lojistik yöneticisi lojistik kasasından {2ECC71}%s {FFFFFF}miktar para aldı.",ReturnName(playerid,0),FormatNumber(strval(inputtext)));
Dialog_Show(playerid,LojistikKasa,DIALOG_STYLE_LIST,"Lojistik Kasası","{2ECC71}Kasadan Al\n{2ECC71}Kasaya Koy","Seç","Geri");
Lojistik_Kaydet(PlayerData[playerid][pLojistik]);
}
return 1;
}
Dialog:LojistikKasaParaKoy(playerid, response, listitem, inputtext[])
{
if(!response) return Dialog_Show(playerid,birlikKasa,DIALOG_STYLE_LIST,"Lojistik Kasası","{2ECC71}Kasadan Al\n{2ECC71}Kasaya Koy","Seç","Geri");
if(response)
{
if(PlayerData[playerid][pLojistik] == -1) return HataMesajGonder(playerid,"Bir lojistiğe dahil değilsiniz.");
if(isnull(inputtext)) return Dialog_Show(playerid,LojistikKasaParaKoy,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Koy","{FFFFFF}Lütfen lojistik kasasına koymak istediğiniz para miktarını bakiyenize uygun olarak giriniz:","Devam","Geri");
if(!IsNumeric(inputtext)) return Dialog_Show(playerid,LojistikKasaParaKoy,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Koy","{FFFFFF}Lütfen lojistik kasasına koymak istediğiniz para miktarını bakiyenize uygun olarak giriniz:","Devam","Geri");
if(strval(inputtext) <= 0)
{
HataMesajGonder(playerid, "Geçersiz miktar girdiniz.");
return Dialog_Show(playerid,LojistikKasaParaKoy,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Koy","{FFFFFF}Lütfen lojistik kasasına koymak istediğiniz para miktarını bakiyenize uygun olarak giriniz:","Devam","Geri");
}
if(strval(inputtext) > PlayerData[playerid][pCash])
{
HataMesajGonder(playerid,"Üzerinizde yeterli para yok.");
return Dialog_Show(playerid,LojistikKasaParaKoy,DIALOG_STYLE_INPUT,"Lojistik Kasası - Para Koy","{FFFFFF}Lütfen lojistik kasasına koymak istediğiniz para miktarını bakiyenize uygun olarak giriniz:","Devam","Geri");
}
Lojistik[PlayerData[playerid][pLojistik]][lojistikKasa] += strval(inputtext);
ParaVer(playerid,-strval(inputtext));
LojistikMesaji(PlayerData[playerid][pLojistik],-1,"{ff7c4d}LOJİSTİK: {FFFFFF}%s adlı lojistik yöneticisi lojistik kasasına {2ECC71}%s {FFFFFF}miktar para koydu.",ReturnName(playerid,0),FormatNumber(strval(inputtext)));
Dialog_Show(playerid,LojistikKasa,DIALOG_STYLE_LIST,"Lojistik Kasası","{2ECC71}Kasadan Al\n{2ECC71}Kasaya Koy","Seç","Geri");
Lojistik_Kaydet(PlayerData[playerid][pLojistik]);
}
return 1;
}
CMD:lojistikolustur(playerid, params[])
{
new isim[32];
if(PlayerData[playerid][pAdmin] < 4) return HataMesajGonder(playerid,"Bu komutu kullanmak için yetkiniz yok");
if(sscanf(params,"s[32]", isim)) return BilgiMesajGonder(playerid,"/lojistikolustur [isim]");
new id = -1;
id = Lojistik_Olustur(isim);
if(id == -1) return HataMesajGonder(playerid,"Sunucu maksimum lojistik limitine ulaştı.");
MesajGonder(playerid,"Lojistik oluşturuldu, ID: %d",id);
Lojistik_Kaydet(id);
return 1;
}
CMD:lojistikduzenle(playerid,params[])
{
new id, type[24],string[128];
if(PlayerData[playerid][pAdmin] < 4) return HataMesajGonder(playerid,"Bu komutu kullanmak için yetkiniz yok");
if (sscanf(params, "ds[24]S()[128]", id, type, string))
{
BilgiMesajGonder(playerid,"/lojistikduzenle [ID] [OPSİYONLAR]");
SendClientMessage(playerid, COLOR_YELLOW, "[OPSİYONLAR]: {FFFFFF}isim, tur, tip, sahip;");
return 1;
}
if ((id < 0 || id >= MAX_LOJISTIK) || !Lojistik[id][lojistikOlustu]) return HataMesajGonder(playerid,"Hatalı Birlik ID.");
if(!strcmp(type, "isim", true))
{
new isim[32];
if(sscanf(string, "s[32]", isim)) return BilgiMesajGonder(playerid,"/lojistikduzenle [ID] [isim] [Yeni Isim]");
format(Lojistik[id][lojistikIsim], 32, isim);
Lojistik_Kaydet(id);
AdminMessage(COLOR_GREEN," %s adlı yetkili tarafından %d ID'li lojistiğin ismi %s olarak değiştirildi.",ReturnName(playerid,0),id,isim);
Log_Write("logs/lojistiklog.txt","%s tarafindan %d ID'li lojistiğin ismi %s olarak degistirildi",ReturnName(playerid,0),id,isim);
}
else if (!strcmp(type, "tur", true))
{
new tur;
if(sscanf(string, "d", tur)) return BilgiMesajGonder(playerid,"/lojistikduzenle [ID] [tur] [Tur]");
Lojistik[id][lojistikTur] += tur;
Lojistik_Kaydet(id);
AdminMessage(COLOR_GREEN," %s adlı yetkili tarafından %d ID'li lojistiğin tur sayısı %d olarak değiştirildi.",ReturnName(playerid,0),id,tur);
Log_Write("logs/lojistiklog.txt","%s tarafindan %d ID'li lojistiğin tur sayısı %d olarak degistirildi",ReturnName(playerid,0),id,tur);
}
else if(!strcmp(type, "tip", true))
{
new tip;
if(sscanf(string, "d", tip)) return BilgiMesajGonder(playerid,"/lojistikduzenle [ID] [tip] [Tip]");
Lojistik[id][lojistikTip] = tip;
Lojistik_Kaydet(id);
new strb[128];
switch(Lojistik[PlayerData[playerid][pLojistik]][lojistikTip])
{
case 0: format(strb, sizeof(strb), "Gıda Taşımacılığı");
case 1: format(strb, sizeof(strb), "Endüstriyel Taşımacılığı");
case 2: format(strb, sizeof(strb), "Petrol Taşımacılığı");
case 3: format(strb, sizeof(strb), "Paylayıcı Madde Taşımacılığı");
case 4: format(strb, sizeof(strb), "Kimyasal Madde Taşımacılığı");
case 5: format(strb, sizeof(strb), "Kargo Taşımacılığı");
case 6: format(strb, sizeof(strb), "Askeri Taşımacılık");
}
AdminMessage(COLOR_GREEN," %s adlı yetkili tarafından %d ID'li lojistiğin tipini %s olarak değiştirildi.",ReturnName(playerid,0),id, strb);
Log_Write("logs/lojistiklog.txt","%s tarafindan %d ID'li lojistiğin tipini %s olarak degistirildi",ReturnName(playerid,0),id, strb);
}
else if (!strcmp(type, "sahip", true))
{
new sahip;
if(sscanf(string, "d", sahip)) return BilgiMesajGonder(playerid,"/lojistikduzenle [ID] [sahip] [Sahip]");
if(!IsPlayerConnected(sahip)) return HataMesajGonder(playerid, "Belirtilen kimlik bulunamadı!");
Lojistik[id][lojistikSahip] = PlayerData[sahip][pID];
Lojistik_Kaydet(id);
AdminMessage(COLOR_GREEN,"ADM: %s adlı yetkili tarafından %d ID'li lojistiğin sahibi %s olarak değiştirildi.",ReturnName(playerid,0),id,ReturnName(sahip,0));
Log_Write("logs/lojistiklog.txt","%s tarafindan %d ID'li lojistiğin sahibi %s olarak degistirildi",ReturnName(playerid,0),id,ReturnName(sahip,0));
}
return 1;
}
Dialog:LojistikDavetKisi(playerid, response, listitem, inputtext[])
{
if(response)
{
new userid = strval(inputtext);
if(IsPlayerConnected(userid) && PlayerData[userid][pLojistik] != -1)
{
PlayerData[userid][pLDavet] = playerid;
PlayerData[userid][pLojistikDavet] = PlayerData[playerid][pLojistik];
Dialog_Show(userid,LojistikDavet,DIALOG_STYLE_MSGBOX,"{72C425}Lojistik Daveti","{FFFFFF}%s adlı kişi, seni \"%s\" adlı lojistiğe davet ediyor. Kabul ediyor musun?","Evet","Hayır",ReturnName(playerid,0),Lojistik[PlayerData[playerid][pLojistik]][lojistikIsim]);
}
else return HataMesajGonder(playerid, "Üzgünüm, davet edeceğiniz kişi aktif değil ya da herhangi bir lojistiğe dahil.");
}
return 1;
}
Dialog:LojistikDavet(playerid, response, listitem, inputtext[])
{
if(response)
{
new
id = PlayerData[playerid][pLDavet],
lid = PlayerData[playerid][pLojistikDavet];
PlayerData[playerid][pLojistik] = lid;
LojistikMesaji(lid,-1,"{ff7c4d}LOJISTIK: {FFFFFF}%s adlı kişi, %s adlı kişiyi lojistiğe aldı.",ReturnName(id,0),ReturnName(playerid,0));
PlayerData[playerid][pLDavet] = -1;
PlayerData[playerid][pLojistikDavet] = -1;
Lojistik_Kaydet(lid);
Oyuncu_Kaydet(playerid);
}
else
{
BilgiMesajGonder(PlayerData[playerid][pLDavet],"%s adlı kişi gönderdiğiniz lojistik davetini reddetdi.",ReturnName(playerid,0));
PlayerData[playerid][pLDavet] = -1;
PlayerData[playerid][pLojistikDavet] = -1;
}
return 1;
}
Modun Stock kısmına.
stock Lojistik_Liste(playerid)
{
for(new i; i<MAX_LOJISTIK; i++) if(Lojistik[i][lojistikOlustu])
{
Lojistik_Kaydet(i);
}
new Cache:zoxy = mysql_query(baglanti, "SELECT * FROM `lojistik`");
new rows;
cache_get_row_count(rows);
if(rows)
{
new str[1000], string[124], count, lname[32], tur;
strcat(str, "{FF0000}ID\t{FF0000}İsim\t{FF0000}Tur\n{FFFFFF}");
for(new i; i<rows; i++)
{
cache_get_value_name(i, "isim", lname, 32);
cache_get_value_name_int(i, "tur", tur);
count++;
format(string, sizeof(string), "%d\t%s\t%d\n", count, lname, tur);
strcat(str, string);
}
cache_delete(zoxy);
format(string, sizeof(string), "Lojistikler Listesi (%d)", count);
Dialog_Show(playerid, LojistikListe, DIALOG_STYLE_TABLIST_HEADERS, string, str, "Kapat", "");
}
else
{
cache_delete(zoxy);
HataMesajGonder(playerid, "Hiç lojistik yok.");
}
return 1;
}
stock LojistikMesaji(lid, color, const str[], {Float,_}:...)
{
static
args,
start,
end,
string[144]
;
#emit LOAD.S.pri 8
#emit STOR.pri args
if (args > 12)
{
#emit ADDR.pri str
#emit STOR.pri start
for (end = start + (args - 12); end > start; end -= 4)
{
#emit LREF.pri end
#emit PUSH.pri
}
#emit PUSH.S str
#emit PUSH.C 144
#emit PUSH.C string
#emit PUSH.C args
#emit SYSREQ.C format
#emit LCTRL 5
#emit SCTRL 4
foreach (new i : Player) if (PlayerData[i][pLojistik] == lid) {
SendClientMessage(i, color, string);
}
return 1;
}
foreach (new i : Player) if (PlayerData[i][pLojistik] == lid) {
SendClientMessage(i, color, str);
}
return 1;
}
stock Lojistik_Kaydet(lojistik)
{
if(!Lojistik[lojistik][lojistikOlustu]) return 0;
static query[2700];
format(query,sizeof(query),"UPDATE `lojistik` SET `isim` = '%s', `tur` = '%d', `sahip` = '%d', `kasa` = '%d' WHERE `id` = '%d'",
Lojistik[lojistik][lojistikIsim],
Lojistik[lojistik][lojistikTur],
Lojistik[lojistik][lojistikSahip],
Lojistik[lojistik][lojistikKasa],
lojistik
);
mysql_query(baglanti,query, false);
return 1;
}
stock Lojistik_Yukle()
{
new Cache:caprisse = mysql_query(baglanti, "SELECT * FROM `lojistik`");
new rows;
cache_get_row_count(rows);
printf("Toplam %d Lojistik yüklenmiştir.", rows);
for (new i = 0; i < rows; i ++) if (i < MAX_LOJISTIK)
{
Lojistik[i][lojistikOlustu] = 1;
cache_get_value_name_int(i, "id", Lojistik[i][lojistikID]);
cache_get_value_name(i, "isim", Lojistik[i][lojistikIsim], 32);
cache_get_value_name_int(i, "tur", Lojistik[i][lojistikTur]);
cache_get_value_name_int(i, "sahip", Lojistik[i][lojistikSahip]);
cache_get_value_name_int(i, "kasa", Lojistik[i][lojistikKasa]);
}
cache_delete(caprisse);
return 1;
}
stock Lojistik_Olustur(lojistikisim[32])
{
for (new i = 0; i != MAX_LOJISTIK; i ++) if (!Lojistik[i][lojistikOlustu])
{
Lojistik[i][lojistikOlustu] = true;
format(Lojistik[i][lojistikIsim],32,lojistikisim);
mysql_tquery(baglanti, "INSERT INTO `lojistik` (`isim`, `sahip`, `tur`, `kasa`) VALUES ('%s', '-1', '0', '0')", lojistikisim);
return i;
}
return -1;
}
Yazık oldu emeğine.
.
Alıntı yapılan: Radless - 07 Mayıs 2020, 02:38:14Alıntı yapılan: Vestro - 07 Mayıs 2020, 02:36:51Yazık oldu emeğine.
Sistem benim ve emeğime yazık olmadı çünkü ellerindeki sistem tam değil lojistik ayarlarıdır yük götürme kısmıdır falan yok dikkatli bakarsan :)
Sistemin senin olduğuna dair kanıt sunarmısın
Kim tutar kankamı, helal ke
Kodların tamamı sizde olmadığı için eksik paylaşmışsınız, komedi. :kahkaha:
@Buzz Çamur atmayı bırakacak mısın beni herkes tanıyor,öyle birşey yapmayacağımı herkes biliyor.
Arkadaşlar çamur atmayın kullanın çözün kimse size bunun gibi büyük sistem vermez.
Alıntı yapılan: Buzz - 07 Mayıs 2020, 03:05:58Kodların tamamı sizde olmadığı için eksik paylaşmışsınız, komedi. :kahkaha:
Hala mı Buzz çek şu platformdan elini artık komik oluyorsun!
Başarılar, kardeşime!
Alıntı yapılan: Buzz - 07 Mayıs 2020, 03:05:58Kodların tamamı sizde olmadığı için eksik paylaşmışsınız, komedi. :kahkaha:
O kadar kişiye 3 günlük server dedin, kendin onlardan önce kapattın bu da komik bi' durum aslında bakarsan.
Alıntı yapılan: SuPy - 07 Mayıs 2020, 03:45:27Alıntı yapılan: Buzz - 07 Mayıs 2020, 03:05:58Kodların tamamı sizde olmadığı için eksik paylaşmışsınız, komedi. :kahkaha:
Hala mı Buzz çek şu platformdan elini artık komik oluyorsun!
Alıntı yapılan: SuPy - 07 Mayıs 2020, 03:45:27Alıntı yapılan: Buzz - 07 Mayıs 2020, 03:05:58Kodların tamamı sizde olmadığı için eksik paylaşmışsınız, komedi. :kahkaha:
Hala mı Buzz çek şu platformdan elini artık komik oluyorsun!
Kimin elini çekmesi gerektiği açıkça ortada, böyle çocuklar sen de dahil SA:MP oynamaya devam ettiği sürece gelişmeyecek. Radless bir emek vermiş, siz ise bunu başka yollar ile elde edip paylaşmışsınız, ha işin komik tarafı bu sistem çalışmaz işlevleri eksik. İnsanların emeğini çalmak yerine biraz araştırma yapsaydınız keşke, aynı sistemi kendinizde yapabilirdiniz. :kahkaha2:
Alıntı yapılan: Reo - 07 Mayıs 2020, 02:38:54Alıntı yapılan: Radless - 07 Mayıs 2020, 02:38:14Alıntı yapılan: Vestro - 07 Mayıs 2020, 02:36:51Yazık oldu emeğine.
Sistem benim ve emeğime yazık olmadı çünkü ellerindeki sistem tam değil lojistik ayarlarıdır yük götürme kısmıdır falan yok dikkatli bakarsan :)
Sistemin senin olduğuna dair kanıt sunarmısın
88 rpg mi sunucusuna kodlandı belli zaten o lojistik sıstemı internette rahatca bulabilirsin ve belirli fonksiyon ve bazı değişkenler yok kullanabılen kullansın he havlamaya devam.
Sistem benim değil, hatırladım abatay yapmıştı bunu onun emeklerine yazık
@abatay1991
Kodları eksik atmışsın bari onları düzeltseydin
Tamam goderlar sistemi yapan adamı burda rezil ederdim de neyse.
Boş yorumlar için kilitlenmiştir
Ben namı değer Eren bunu unutmayın ne taraftan yiyeceğinizi bilemezsiniz :D