Arkadaşlar ben biraz ugraşıp kd sıfırlama sistemi yazdım kd sıfırlamıyor ve oyuna girince chata yazı yazamıyoruz
CMD:kdsifirla(playerid,params[])
{
if(oBilgi[playerid][admin] <=8)
{
SCM(playerid,COLOR_ERROR,"Yetkiniz bu komuta erişememektedir!");
return 1;
}
new ID;
new query[256];
new targetID;
new string[128];
if(sscanf(params,"ui",targetID))
{
SendClientMessage(playerid,COLOR_ERROR,"Kullanım: /kdsifirla (id) ");
return 1;
}
if(IsSpawned[targetID] != 1)
{
format(string,sizeof(string),"%s(%d) Spawn Olmamış",PlayerName(ID),targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
if(IsSpawned[playerid] != 1)
{
SendClientMessage(playerid,COLOR_ERROR,"Spawn Olmadan Komut Kullanamazsınız");
return 1;
}
if(!IsPlayerConnected(targetID))
{
format(string,sizeof(string),"ID (%d) Servera Giriş Yapmamış.",targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
mysql_free_result();
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `kills` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][kills],Pname(playerid));
mysql_query(query);
{
mysql_free_result();
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `deaths` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][deaths],Pname(playerid));
mysql_query(query);
}
format(string,sizeof(string),"<!>Yönetici %s(%d) senin KD Oranını sıfırladı!",PlayerName(playerid),playerid);
SendClientMessage(targetID,COLOR_ADMIN,string);
printf("%s(%d) Adli yonetici %s(%d)'nin KD oranını sıfırladı",PlayerName(playerid),playerid,PlayerName(targetID),targetID);
format(string,sizeof(string),"%s(%d) Adlı kullanıcının KD oranını sıfırladın ! ",PlayerName(targetID),targetID);
SendClientMessage(playerid,COLOR_ADMIN,string);
return 1;
}
Bir bakarmısınız MySql ismi betas
Çöp
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `kills` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][kills],Pname(playerid));
mysql_query(query);
{
mysql_free_result();
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `deaths` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][deaths],Pname(playerid));
mysql_query(query);
}
Buradaki süslü parantezler ne alaka? Bu süslü parantezleri sil.
Abi nasıl yapıcam sen yapıp atsan
Alıntı yapılan: ebuaga - 15 Eylül 2017, 17:59:25
Abi nasıl yapıcam sen yapıp atsan
Bunu da yapamıyor musun?
Süslü parantezler bunlar;{
}Bunları sileceksin.
Silinmiş şekli bu şekilde. Yanlış yapma diye bi seferlik yapıyorum. Bu kadar hazırcı olmayın.CMD:kdsifirla(playerid,params[])
{
if(oBilgi[playerid][admin] <=8)
{
SCM(playerid,COLOR_ERROR,"Yetkiniz bu komuta erişememektedir!");
return 1;
}
new ID;
new query[256];
new targetID;
new string[128];
if(sscanf(params,"ui",targetID))
{
SendClientMessage(playerid,COLOR_ERROR,"Kullanım: /kdsifirla (id) ");
return 1;
}
if(IsSpawned[targetID] != 1)
{
format(string,sizeof(string),"%s(%d) Spawn Olmamış",PlayerName(ID),targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
if(IsSpawned[playerid] != 1)
{
SendClientMessage(playerid,COLOR_ERROR,"Spawn Olmadan Komut Kullanamazsınız");
return 1;
}
if(!IsPlayerConnected(targetID))
{
format(string,sizeof(string),"ID (%d) Servera Giriş Yapmamış.",targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
mysql_free_result();
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `kills` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][kills],Pname(playerid));
mysql_query(query);
mysql_free_result();
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `deaths` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][deaths],Pname(playerid));
mysql_query(query);
format(string,sizeof(string),"<!>Yönetici %s(%d) senin KD Oranını sıfırladı!",PlayerName(playerid),playerid);
SendClientMessage(targetID,COLOR_ADMIN,string);
printf("%s(%d) Adli yonetici %s(%d)'nin KD oranını sıfırladı",PlayerName(playerid),playerid,PlayerName(targetID),targetID);
format(string,sizeof(string),"%s(%d) Adlı kullanıcının KD oranını sıfırladın ! ",PlayerName(targetID),targetID);
SendClientMessage(playerid,COLOR_ADMIN,string);
return 1;
}
Pwn kodlamayı iyi bilmedipim için sordum abi :D
Alıntı yapılan: ebuaga - 15 Eylül 2017, 18:18:14
Pwn kodlamayı iyi bilmedipim için sordum abi :D
Bilmesen de sana "sil dediğim yeri silememen" pawn ile alakalı bir durum değil.
Bul:
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `deaths` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][deaths],Pname(playerid));
Değiştir:
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `deaths` = '%d' WHERE `karakterler`.`isim` = '%s'",oBilgi[targetID][deaths],Pname(targetID));
Bul:
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `kills` = '0' WHERE `karakterler`.`isim` = '0'",oBilgi[playerid][kills],Pname(playerid));
Değiştir:
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `kills` = '%d' WHERE `karakterler`.`isim` = '%s'",oBilgi[targetID][kills],Pname(targetID));
Ek olarak muhtemelen çıkışta da kaydediyordur. Değişkeni sıfırlamadığın için o değişkenden yine devam ediyordur. Return üzerine aşağıdaki kodları ekle.
oBilgi[targetID][kills] = 0, oBilgi[targetID][deaths]=0;
Yazı yazamama ile ilgili bir alakası yok. Muhtemelen OnPlayerText içerisinde yaptığın bir değişiklik ile alakalıdır. Kolay gelsin.
Alıntı yapılan: Kraus - 15 Eylül 2017, 18:19:17
Alıntı yapılan: ebuaga - 15 Eylül 2017, 18:18:14
Pwn kodlamayı iyi bilmedipim için sordum abi :D
Bilmesen de sana "sil dediğim yeri silememen" pawn ile alakalı bir durum değil.
:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : error 017: undefined symbol "IsSpawned"
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : warning 215: expression has no effect
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : error 001: expected token: ";", but found "]"
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : error 029: invalid expression, assumed zero
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : 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.
Alıntı yapılan: Kraus - 15 Eylül 2017, 18:10:49Bunu da yapamıyor musun?
Süslü parantezler bunlar;
Sen niye süslü parantezlere taktın ki? Onunla ilgisi yok. Hazırcı olmayın falan demişsin o kadar. :D Onlar olsa da olmasa da bir şey değişmez. Kişinin sorunu hala çözülmüş değil. Benim attığım ileti ile çözülmüş oldu.
Alıntı yapılan: Jawié - 15 Eylül 2017, 19:19:11
Alıntı yapılan: Kraus - 15 Eylül 2017, 18:10:49Bunu da yapamıyor musun?
Süslü parantezler bunlar;
Sen niye süslü parantezlere taktın ki? Onunla ilgisi yok. Hazırcı olmayın falan demişsin o kadar. :D Onlar olsa da olmasa da bir şey değişmez. Kişinin sorunu hala çözülmüş değil. Benim attığım ileti ile çözülmüş oldu.
abi seninkiylede olmadı
:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : error 017: undefined symbol "IsSpawned"
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : warning 215: expression has no effect
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : error 001: expected token: ";", but found "]"
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : error 029: invalid expression, assumed zero
C:\Users\ebubekir\Desktop\Efsane HP Server\gamemodes\EfsaneHP.pwn(7290) : 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.
Alıntı yapılan: ebuaga - 15 Eylül 2017, 19:20:08abi seninkiylede olmadı
IsSpawned değişkeni tanıtılmamış. Benim düzeltmem ile bir alakası yok. Ben playerid değerini targetid olarak değiştirip değişkeni sıfırladım.
CMD:kdsifirla(playerid,params[])
{
if(oBilgi[playerid][admin] <=8)
{
SCM(playerid,COLOR_ERROR,"Yetkiniz bu komuta erişememektedir!");
return 1;
}
new query[256];
new targetID;
new string[128];
if(sscanf(params,"i",targetID))
{
SendClientMessage(playerid,COLOR_ERROR,"Kullanım: /kdsifirla (id) ");
return 1;
}
if(IsSpawned[targetID] != 1)
{
format(string,sizeof(string),"%s(%d) Spawn Olmamış",PlayerName(ID),targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
if(IsSpawned[playerid] != 1)
{
SendClientMessage(playerid,COLOR_ERROR,"Spawn Olmadan Komut Kullanamazsınız");
return 1;
}
if(!IsPlayerConnected(targetID))
{
format(string,sizeof(string),"ID (%d) Servera Giriş Yapmamış.",targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
oBilgi[targetID][deaths] = 0;
oBilgi[targetID][kills] = 0;
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `kills` = '0' WHERE `karakterler`.`isim` = '%s'",Pname(targetID));
mysql_query(query);
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `deaths` = '0' WHERE `karakterler`.`isim` = '%s'",Pname(targetID));
mysql_query(query);
format(string,sizeof(string),"<!>Yönetici %s(%d) senin KD Oranını sıfırladı!",PlayerName(playerid),playerid);
SendClientMessage(targetID,COLOR_ADMIN,string);
printf("%s(%d) Adli yonetici %s(%d)'nin KD oranını sıfırladı",PlayerName(playerid),playerid,PlayerName(targetID),targetID);
format(string,sizeof(string),"%s(%d) Adlı kullanıcının KD oranını sıfırladın ! ",PlayerName(targetID),targetID);
SendClientMessage(playerid,COLOR_ADMIN,string);
return 1;
}
Sorgularda ve kullanıcı ID'lerinde hata vardı. Ek olaraktan değişkene atanılan değer sıfırlanmamıştı. Düzelttim , buyrun..
Alıntı yapılan: _Backup - 15 Eylül 2017, 19:22:48
CMD:kdsifirla(playerid,params[])
{
if(oBilgi[playerid][admin] <=8)
{
SCM(playerid,COLOR_ERROR,"Yetkiniz bu komuta erişememektedir!");
return 1;
}
new ID;
new query[256];
new targetID;
new string[128];
if(sscanf(params,"ui",targetID))
{
SendClientMessage(playerid,COLOR_ERROR,"Kullanım: /kdsifirla (id) ");
return 1;
}
if(IsSpawned[targetID] != 1)
{
format(string,sizeof(string),"%s(%d) Spawn Olmamış",PlayerName(ID),targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
if(IsSpawned[playerid] != 1)
{
SendClientMessage(playerid,COLOR_ERROR,"Spawn Olmadan Komut Kullanamazsınız");
return 1;
}
if(!IsPlayerConnected(targetID))
{
format(string,sizeof(string),"ID (%d) Servera Giriş Yapmamış.",targetID);
SendClientMessage(playerid,COLOR_ERROR,string);
return 1;
}
oBilgi[targetID][deaths] = 0;
oBilgi[targetID][kills] = 0;
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `kills` = '0' WHERE `karakterler`.`isim` = '%s'",Pname(targetID));
mysql_query(query);
format(query, sizeof(query),"UPDATE `betas`.`karakterler` SET `deaths` = '0' WHERE `karakterler`.`isim` = '%s'",Pname(targetID));
mysql_query(query);
format(string,sizeof(string),"<!>Yönetici %s(%d) senin KD Oranını sıfırladı!",PlayerName(playerid),playerid);
SendClientMessage(targetID,COLOR_ADMIN,string);
printf("%s(%d) Adli yonetici %s(%d)'nin KD oranını sıfırladı",PlayerName(playerid),playerid,PlayerName(targetID),targetID);
format(string,sizeof(string),"%s(%d) Adlı kullanıcının KD oranını sıfırladın ! ",PlayerName(targetID),targetID);
SendClientMessage(playerid,COLOR_ADMIN,string);
return 1;
}
Sorgularda ve kullanıcı ID'lerinde hata vardı. Ek olaraktan değişkene atanılan değer sıfırlanmamıştı. Düzelttim , buyrun..
hala hata veiyor
Hataları gönder
Alıntı yapılan: _Backup - 15 Eylül 2017, 19:36:36
Hataları gönder
Konuyu açan arkadaş yncnr kullanıyor, yorumu atan arkadaş başka bir mod. Değişkenler falan tanıtılmadığından hata vermesi normal.
Backup sağolsun yaptı + paralı yncnr modunu kullanıyorum