Sabahtan beri denemediğim şey kalmadı bir çok pawnocu arkadaşımlada iletişime geçtim ancak bilen yok lütfen yardımcı olun.
Hata Kodu;
C:\Users\Lenard\Desktop\Asena Police Pursuit\gamemodes\asena.pwn(149) : error 017: undefined symbol "SendClientMessageEx"
C:\Users\Lenard\Desktop\Asena Police Pursuit\gamemodes\asena.pwn(152) : warning 235: public function lacks forward declaration (symbol "OnPlayerCommandPerformed")
C:\Users\Lenard\Desktop\Asena Police Pursuit\gamemodes\asena.pwn(156) : error 017: undefined symbol "SendClientMessageEx"
C:\Users\Lenard\Desktop\Asena Police Pursuit\gamemodes\asena.pwn(299) : error 017: undefined symbol "SendClientMessageEx"
C:\Users\Lenard\Desktop\Asena Police Pursuit\gamemodes\asena.pwn(355) : error 017: undefined symbol "SendClientMessageEx"
Pawn compiler 3.10.8 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Kod Satırları;
149.Kod Satırı: return SendErrorMessage(playerid,"Eksik veya geçersiz komut kullandınız! Tüm komutları görmek için /komutlar yazmanız yeterli.");
152.Kod Satırı: public OnPlayerCommandPerformed(playerid, cmdtext[], success)
156.Kod Satırı: SendErrorMessage(playerid,"Eksik veya geçersiz komut kullandınız! Tüm komutları görmek için /komutlar yazmanız yeterli.");
299.Kod Satırı: SendClientMessage(playerid, -1, "Başarıyla giriş yaptınız.");
355.Kod Satırı: SendClientMessage(playerid, -1, "Başarıyla kayıt oldunuz, otomatik giriş yapıldı.");
Hataya Sebebiyet Oluşturduğunu Düşündüğüm Kodlar;
#define SendClientMessage(%0,%1) \
SendClientMessageEx(%0, 0x367ff5FF, "[!] {FFFFFF}"%1)
#define SendErrorMessage(%0,%1) \
SendClientMessageEx(%0, 0xE74C3CFF, "[!] {FFFFFF}"%1)
#define SendAdminMessage(%0,%1) \
SendClientMessageEx(%0, 0xAAC4E5FF, "[!] {FFFFFF}"%1)
SendClientMessageEx yerine, SendMessage, MesajYolla, MesajGonder gibi şeyler tanıtarak onları koymayı deneyebilir misiniz? Eğer olmazsa SendClientMessage(playerid, -1, "Başarıyla giriş yaptınız."); kodundaki -1 kısmını silerseniz düzelir sanırım.
SendClientMessageEx adlı fonksiyon tanımlı değil , Ayrıca tanımlama ifadeleri yanlış kullanılmış görünüyor. SendClientMessage() adlı fonksiyon zaten tanımlı olmalıdır. Son olarak ise public OnPlayerCommandPerformed(playerid, cmdtext[], success) fonksiyonunun eksik olması zcmd adlı kütüphanenizi düzgün kurmamanızdan kaynaklı :
#define SendErrorMessage(%0,%1) \
SendClientMessageEx(%0, 0xE74C3CFF, "[!] {FFFFFF}%1") // düzenlendi
#define SendAdminMessage(%0,%1) \
SendClientMessageEx(%0, 0xAAC4E5FF, "[!] {FFFFFF}%1") // düzenlendi
stock SendClientMessageEx(playerid, renk, const metin[])
return SendClientMessage(playerid, renk, metin);
Tanımlardaki adları düzenleyebilirsin yazdığım örneklerden yeni tanımlar oluşturabilirsin, "OnPlayerCommandPerformed" public'i içinse diyebileceğim tek şey kullandığın komut kütüphanesini/eklentisini tekrar orjinal sayfasından indirerek düzgünce kurmaya çalışırsan düzelecektir büyük ihtimalle.
#define SendInformationMessage(%0,%1)\
SendClientMessageEx(%0, 0x00FF00FF, "[!] {FFFFFF}"%1)
#define SendErrorMessage(%0,%1)\
SendClientMessageEx(%0, 0xFF0000FF, "[!] {FFFFFF}"%1)
SendClientMessageEx(playerid, color, const text[], {Float, _}:...)
{
new
args,
str[144]
;
if ((args = numargs()) == 3)
{
SendClientMessage(playerid, color, text);
}
else
{
while (--args >= 3)
{
#emit LCTRL 5
#emit LOAD.alt args
#emit SHL.C.alt 2
#emit ADD.C 12
#emit ADD
#emit LOAD.I
#emit PUSH.pri
}
#emit PUSH.S text
#emit PUSH.C 144
#emit PUSH.C str
#emit PUSH.S 8
#emit SYSREQ.C format
#emit LCTRL 5
#emit SCTRL 4
SendClientMessage(playerid, color, str);
#emit RETN
}
return 1;
}
Örnek kullanım;
CMD:messagetest(playerid, args[])
{
SendInformationMessage(playerid, "Yeşil bilgilendirme yazısı.");
SendErrorMessage(playerid, "Kırmızı hata/uyarı yazısı.");
return 1;
}
Deneyeceğim.
Teşekkürler dediklerinizi yaptım ve oldu. K%A