Beyler /setname komutunu yapacağım fakat hatalar veriyor bana düzgünce MySql olarak yapabilecek var mı ya
CMD:setname(playerid, params[])
{
new giveplayerid;
new tmp;
if(sscanf(params, "us", giveplayerid, tmp))
{
SendClientMessage(playerid, 0xFFFFFFAA, "/setname [Playerid/PartOfName] [NewName]");
return 1;
}
if(IsPlayerConnected(playerid))
{
if(oBilgi[u][admin] !=10)
{ new string[256];
format(string, sizeof(string), "UPDATE `betas`.`karakterler` SET `isim` = '%s' WHERE `karakterler`.`isim` = '%s'", tmp);
if(fexist(string))
{
SendClientMessage(playerid, COLOR_GRAD2, "Bu isim kullanılıyor!");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{ new string2[256];
format(string, sizeof(string), "UPDATE `betas`.`karakterler` SET `isim` = '%s' WHERE `karakterler`.`isim` = '%s'", PlayerName(giveplayerid));
dini_Remove(string);
format(string2, sizeof(string2), "UPDATE `betas`.`karakterler` SET `isim` = '%s' WHERE `karakterler`.`isim` = '%s'", tmp);
dini_Create(string2);
SetPlayerName(giveplayerid, tmp);
format(string, sizeof(string), "%s adlı oyuncunun ismini %s olarak değiştirdiniz.", PlayerName(giveplayerid), tmp);
SendClientMessage(playerid, COLOR_GREY, string);
format(string, sizeof(string), "Eski adınız %s , %s olarak değiştirildi..", PlayerName(giveplayerid), tmp);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
SaveAccounts();
OnPlayerDataSave(playerid);
}
else
{
format(string, sizeof(string), "%d oyunda yok.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD2, string);
}
}
}
else
{
SendClientMessage(playerid, COLOR_RED, "Bu komutu kullanmak için giriş yapmalısın");
}
return 1;
}
Ben böyle yapıyorum ama hata veriyor verdiği hatalar
C:\Users\ARQUİMEDES\Desktop\Yeni klasör (2)\gamemodes\yncnr2.pwn(7930) : error 017: undefined symbol "u"
C:\Users\ARQUİMEDES\Desktop\Yeni klasör (2)\gamemodes\yncnr2.pwn(7944) : error 035: argument type mismatch (argument 2)
C:\Users\ARQUİMEDES\Desktop\Yeni klasör (2)\gamemodes\yncnr2.pwn(7949) : error 017: undefined symbol "SaveAccounts"
C:\Users\ARQUİMEDES\Desktop\Yeni klasör (2)\gamemodes\yncnr2.pwn(7950) : error 017: undefined symbol "OnPlayerDataSave"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
yncnr modunu gerçekten d_ini mi yaptın ?
CMD:setname(playerid,params[])
{
new targetID,newname[25],Query[256],strall[256],strlog[128],manofire[256];
if(oBilgi[playerid][admin] != 1327) return 0;
if(sscanf(params,"is[27]",targetID,newname))
{
HataMesaji(playerid,"Kullanım : /setname [ID] [Yeni isim]");
BilgiMesaji(playerid,"Yeni isim kısmında sadece ingilizce karakter kullanınız. ( ğ ,küçük ı, büyük i ,ş ,ü buga sokar!");
return true;
}
if(oBilgi[targetID][girisyapti] != 1)
{
HataMesaji(playerid,"Kullanıcı hesabına giriş yapmamış.");
return 1;
}
if (!IsPlayerConnected(targetID))
{
HataMesaji(playerid,"Kullanıcı oyunda bulunamadı!");
return true;
}
if(strlen(newname) > 23)
{
HataMesaji(playerid,"Nick uzunluğu en fazla 24 karakter olabilir!");
return true;
}
if(GetPlayerState(targetID) ==PLAYER_STATE_WASTED)
{
HataMesaji(playerid,"Kullanıcı spawn olmadığı için bu komutu kullanamazsınız!");
return true;
}
format(manofire,sizeof(manofire),"SELECT * FROM karakterler WHERE isim = '%s'",newname);
mysql_query(manofire);
mysql_store_result();
if(mysql_num_rows() == 1)
{
HataMesaji(playerid,"Bu isim başka birisi tarafından kullanılıyor!");
return true;
}
mysql_free_result();
format(Query, sizeof(Query), "UPDATE `betas`.`karakterler` SET `isim` = '%s' WHERE `karakterler`.`isim` = '%s'",newname,Pname(targetID));
mysql_query(Query);
format(strall,256,"[ADMIN] %s(%d) , %s(%d) adlı kullanıcının ismini %s olarak değiştirdi!",Pname(playerid),playerid,Pname(targetID),targetID,newname);
SendClientMessageToAll(COLOR_ADMIN,strall);
format(strlog,128,"[ADMIN]%s(%d) , %s(%d) adli kullanicinin ismini %s olarak degistirdi!",Pname(playerid),playerid,Pname(targetID),targetID,newname);
Log("logs/setname.log", strlog);
SetPlayerName(targetID,newname);
OyuncuGuncelle(targetID);
OyuncuGuncelle2(targetID);
return true;
}
Alıntı yapılan: _Backup - 23 Haziran 2017, 22:13:32
yncnr modunu gerçekten d_ini mi yaptın ?
CMD:setname(playerid,params[])
{
new targetID,newname[25],Query[256],strall[256],strlog[128],manofire[256];
if(oBilgi[playerid][admin] != 1327) return 0;
if(sscanf(params,"is[27]",targetID,newname))
{
HataMesaji(playerid,"Kullanım : /setname [ID] [Yeni isim]");
BilgiMesaji(playerid,"Yeni isim kısmında sadece ingilizce karakter kullanınız. ( ğ ,küçük ı, büyük i ,ş ,ü buga sokar!");
return true;
}
if(oBilgi[targetID][girisyapti] != 1)
{
HataMesaji(playerid,"Kullanıcı hesabına giriş yapmamış.");
return 1;
}
if (!IsPlayerConnected(targetID))
{
HataMesaji(playerid,"Kullanıcı oyunda bulunamadı!");
return true;
}
if(strlen(newname) > 23)
{
HataMesaji(playerid,"Nick uzunluğu en fazla 24 karakter olabilir!");
return true;
}
if(GetPlayerState(targetID) ==PLAYER_STATE_WASTED)
{
HataMesaji(playerid,"Kullanıcı spawn olmadığı için bu komutu kullanamazsınız!");
return true;
}
format(manofire,sizeof(manofire),"SELECT * FROM karakterler WHERE isim = '%s'",newname);
mysql_query(manofire);
mysql_store_result();
if(mysql_num_rows() == 1)
{
HataMesaji(playerid,"Bu isim başka birisi tarafından kullanılıyor!");
return true;
}
mysql_free_result();
format(Query, sizeof(Query), "UPDATE `betas`.`karakterler` SET `isim` = '%s' WHERE `karakterler`.`isim` = '%s'",newname,Pname(targetID));
mysql_query(Query);
format(strall,256,"[ADMIN] %s(%d) , %s(%d) adlı kullanıcının ismini %s olarak değiştirdi!",Pname(playerid),playerid,Pname(targetID),targetID,newname);
SendClientMessageToAll(COLOR_ADMIN,strall);
format(strlog,128,"[ADMIN]%s(%d) , %s(%d) adli kullanicinin ismini %s olarak degistirdi!",Pname(playerid),playerid,Pname(targetID),targetID,newname);
Log("logs/setname.log", strlog);
SetPlayerName(targetID,newname);
OyuncuGuncelle(targetID);
OyuncuGuncelle2(targetID);
return true;
}
(https://i.hizliresim.com/okrV9k.png) teşekkür ederim ama bu seferde bu hatayı alıyorum
Log stocku tanıtılmamış o yüzden hata alıyorsun. Birde hata verirse hataların olduğu satırı at direkt.
CMD:setname(playerid,params[])
{
new targetID,newname[25],Query[256],strall[256],manofire[256];
if(oBilgi[playerid][admin] != 1327) return 0;
if(sscanf(params,"is[27]",targetID,newname))
{
HataMesaji(playerid,"Kullanım : /setname [ID] [Yeni isim]");
BilgiMesaji(playerid,"Yeni isim kısmında sadece ingilizce karakter kullanınız. ( ğ ,küçük ı, büyük i ,ş ,ü buga sokar!");
return true;
}
if(oBilgi[targetID][girisyapti] != 1)
{
HataMesaji(playerid,"Kullanıcı hesabına giriş yapmamış.");
return 1;
}
if (!IsPlayerConnected(targetID))
{
HataMesaji(playerid,"Kullanıcı oyunda bulunamadı!");
return true;
}
if(strlen(newname) > 23)
{
HataMesaji(playerid,"Nick uzunluğu en fazla 24 karakter olabilir!");
return true;
}
if(GetPlayerState(targetID) ==PLAYER_STATE_WASTED)
{
HataMesaji(playerid,"Kullanıcı spawn olmadığı için bu komutu kullanamazsınız!");
return true;
}
format(manofire,sizeof(manofire),"SELECT * FROM karakterler WHERE isim = '%s'",newname);
mysql_query(manofire);
mysql_store_result();
if(mysql_num_rows() == 1)
{
HataMesaji(playerid,"Bu isim başka birisi tarafından kullanılıyor!");
return true;
}
mysql_free_result();
format(Query, sizeof(Query), "UPDATE `betas`.`karakterler` SET `isim` = '%s' WHERE `karakterler`.`isim` = '%s'",newname,Pname(targetID));
mysql_query(Query);
format(strall,256,"[ADMIN] %s(%d) , %s(%d) adlı kullanıcının ismini %s olarak değiştirdi!",Pname(playerid),playerid,Pname(targetID),targetID,newname);
SendClientMessageToAll(COLOR_ADMIN,strall);
SetPlayerName(targetID,newname);
OyuncuGuncelle(targetID);
OyuncuGuncelle2(targetID);
return true;
}