GTAMulti - GTA Türkiye

San Andreas Multiplayer => Yardım Talepleri => PAWN Kodlama => Kilitli Konular => Konuyu başlatan: Nyks - 14 Haziran 2017, 16:55:16

Başlık: Dialoglu Gurup Sistemi || Yardım
Gönderen: Nyks - 14 Haziran 2017, 16:55:16
Beyler ben dialoglu gurup sistemi yaptım herşey düzgün bir şekilde calışıyor tek sorunum gurup liderinin ismi lider yazan yerde ismi ve idi yazacak şekilde gürünmesi.

(https://i.hizliresim.com/okggNk.png) (https://hizliresim.com/okggNk)

Resimde gürdügünüz gibi üyeler lidere gelmiş ama liderin degişkeni ekli lider degişkenim kodun icinde yazıyor.

PAWN Kodu: Seç
CMD:guruplar(playerid, params[])
{
#pragma unused params
if(GetPlayerState(playerid) ==PLAYER_STATE_WASTED)
{
scm(playerid,COLOR_ERROR,"Spawn olmadan komut kullanamazsınız!");
return 1;
}
new amount[2], string[250], shortstr[55];
new list[144];
format(list, sizeof(list), "Grup İsmi\tLider\tÜyeler\n");
for(new x=0; x<MAX_GROUPS; x++)
{
if(groupinfo[x][active])
{

amount[0] ++;
amount[1] ++;
format(shortstr, sizeof(shortstr), "%s[%d]", groupinfo[x][grname], x);
if(amount[1] == 1) format(string, sizeof(string), "%s", shortstr);
if(amount[1] != 1) format(string, sizeof(string), "%s %s", string, shortstr);
if(amount[0] == 4)
{
SendClientMessage(playerid, 0xFFCC66, string);
string = "";
amount[0] = 0;
}
format(list, sizeof(list), "%s%s\t%s\t%d/6\n", list, groupinfo[x][grname], groupinfo[x][leader], groupinfo[x][guye]);
}// groupinfo[groupid][leader]
}
ShowPlayerDialog(playerid, DIALIG_GURUP, DIALOG_STYLE_TABLIST_HEADERS, "Grup Listesi", list, "Katıl", "Kapat");
if(amount[1] == 0) SendClientMessage(playerid, 0xFFFF00, "Herhangi bir grup bulunmuyor!");
if(amount[1] != 0) SendClientMessage(playerid, 0xFFCC66, string);
return 1;
}
Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Levi - 14 Haziran 2017, 19:17:53
Şu kısmı;
format(list, sizeof(list), "%s%s\t%s\t%d/6\n", list, groupinfo[x][grname], groupinfo[x][leader], groupinfo[x][guye]);

Şu şekilde değiştir;
format(list, sizeof(list), "%s\t%s\t%d/6\n", list, groupinfo[x][grname], groupinfo[x][leader], groupinfo[x][guye]);
Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Nyks - 14 Haziran 2017, 19:43:37
Alıntı yapılan: REFRACTIx - 14 Haziran 2017, 19:17:53

Şu kısmı;
format(list, sizeof(list), "%s%s\t%s\t%d/6\n", list, groupinfo[x][grname], groupinfo[x][leader], groupinfo[x][guye]);

Şu şekilde değiştir;
format(list, sizeof(list), "%s\t%s\t%d/6\n", list, groupinfo[x][grname], groupinfo[x][leader], groupinfo[x][guye]);


Degişen birşey yok.
Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Levi - 14 Haziran 2017, 20:10:56
Grubu oluşturma komutunu atar mısın?
Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Nyks - 14 Haziran 2017, 20:21:18
PAWN Kodu: Seç
CMD:gkur(playerid, params[])
{
if(gTeam[playerid] != TEAM_CIVIL) return SCM(playerid,COLOR_ERROR,"Bu komutu sadece siviller kullanabilir!");
if(group[playerid][gid] != -1) return SendClientMessage(playerid, 0xFF0000, "Yeni bir grup kurmak için şuanki grubunuzdan ayrılmanız gerekiyor! {FFFFFF}/gayril");
if(strlen(params) > 49 || strlen(params) < 3) return SendClientMessage(playerid, 0xFF0000, "Kullanım: {FFFFFF}/gkur{FF0000} (3-50 karakter aralığında olmalı)!");
if(IsGroupTaken(params)) return SendClientMessage(playerid, 0xFF0000, "Grup ismi zaten kullanılıyor");
CreateGroup(params, playerid);
return 1;
}



PAWN Kodu: Seç
stock CreateGroup(grpname[], owner)
{
new slotid = FindNextSlot();
groupinfo[slotid][leader] = owner;
format(groupinfo[slotid][grname], 75, "%s", grpname);
groupinfo[slotid][active] = 1;
groupinfo[slotid][fuye] = 0;
groupinfo[slotid][guye] = 1;
groupinfo[slotid][fdurum] = 0;
group[owner][gid] = slotid;
group[owner][order] = 1;
if(bolgedeyim[owner] == 1)
{
groupinfo[group[owner][gid]][fuye] ++;
}
new string[120];
format(string, sizeof(string), "%s(%d) adlı grubunu kurdunuz!", grpname, slotid);
SendClientMessage(owner, 0xFFCC66, string);
return slotid;
}

Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Levi - 14 Haziran 2017, 20:30:20
Şu stocku boş bi yere ekle
stock GetName(playerid)
{
new pName[24];
GetPlayerName(playerid, pName, 24);
return pName;
}


Ardından şu satırı
groupinfo[slotid][leader] = owner;

Şu şekilde değiştir;
groupinfo[slotid][leader] = GetName(owner);

Bir de böyle dener misin bakalım etki edecek mi

Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Nyks - 14 Haziran 2017, 21:06:38

Hatalar;
PAWN Kodu: Seç
C:\Users\DELL\Desktop\HP\gamemodes\HP.pwn(25739) : error 012: invalid function call, not a valid address
C:\Users\DELL\Desktop\HP\gamemodes\HP.pwn(25739) : warning 215: expression has no effect
C:\Users\DELL\Desktop\HP\gamemodes\HP.pwn(25739) : error 001: expected token: ";", but found ")"
C:\Users\DELL\Desktop\HP\gamemodes\HP.pwn(25739) : error 029: invalid expression, assumed zero
C:\Users\DELL\Desktop\HP\gamemodes\HP.pwn(25739) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.


Hatalı Satır;
PAWN Kodu: Seç

groupinfo[slotid][leader] = GetName(owner);
Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: SpooK - 15 Haziran 2017, 04:40:48
groupinfo[slotid][leader] = GetName(owner);

PAWN Kodu: Seç
format(groupinfo[slotid][leader],32,GetName(owner)); yapar mısın.
Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Nyks - 15 Haziran 2017, 14:42:30
Alıntı yapılan: Lordax. - 15 Haziran 2017, 14:16:55

Gurup Diye yazılmaz Grup diye yazılır o hatayı düzeltin bence :D


modda 1 tane daha grup diye sistem var o sistemle karısmasın diye gurup yaptım.
Başlık: Ynt: Dialoglu Gurup Sistemi || Yardım
Gönderen: Nyks - 15 Haziran 2017, 14:52:31
Alıntı yapılan: SpooK - 15 Haziran 2017, 04:40:48

groupinfo[slotid][leader] = GetName(owner);

PAWN Kodu: Seç
format(groupinfo[slotid][leader],32,GetName(owner)); yapar mısın.


Hatalar ;

PAWN Kodu: Seç
C:\Users\DELL\Desktop\hp\gamemodes\hp.pwn(25746) : error 012: invalid function call, not a valid address
C:\Users\DELL\Desktop\hp\gamemodes\hp.pwn(25746) : warning 215: expression has no effect
C:\Users\DELL\Desktop\hp\gamemodes\hp.pwn(25746) : error 001: expected token: ";", but found ")"
C:\Users\DELL\Desktop\hp\gamemodes\hp.pwn(25746) : error 029: invalid expression, assumed zero
C:\Users\DELL\Desktop\hp\gamemodes\hp.pwn(25746) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.


Satır;

format(groupinfo[slotid][leader],32,GetName(owner);