1. sayfa (Toplam 2 sayfa)
Stringden harf almak
Gönderilme zamanı: Prş Ara 29, 2022 9:13 pm
gönderen HakimKILLER44
Selam aleykum arkadaşlar. Her hangi bir stringden bir harfin yeri nasıl bulunur? Örnek : "selam aleykum" yazisindan ben "s" nin indexini(olduğu konumu) bulmak istiyorum. Bir yardim eden olursa sevinirim(yardimci ola bilecek kodlar: strfind(), contain() ben bunlari denedim yapamadim).
Stringden harf almak
Gönderilme zamanı: Prş Ara 29, 2022 9:19 pm
gönderen Taha Demirbaş
Contain ile o harfin yerini alman zor. En basiti stringin uzunluğunu alıp her bir karakteri için istediğin harf mi diye sorgu yapman olacaktır.
Stringden harf almak
Gönderilme zamanı: Prş Ara 29, 2022 9:28 pm
gönderen HakimKILLER44
Taha Demirbaş yazdı: ↑Prş Ara 29, 2022 9:19 pm
Bir for döngüsüyle yapmaya çalıştım olmadı hep böyle oluyor
Kod yazımı :
new metin[200] = "selam aleykum"
for (new i = 0; i < strlen(metin); i++)
{
client_print(0, print_chat, "%s", metin[ i ])
if (contain(metin[ i ], "y"))
// stringde "y" harfi varsa burası çalışır
}
Kod çıktısı :
For döngüsünden sonra metin deyişenin aldığı deyerler şöyle oluyor:
selam aleykum
selam aleyku
selam aleyk
selam aley
selam ale
selam al
selam a
selam //boşluk var
selam
sela
sel
se
s
Yukarda olduğu gibi yapiyor ve for döngüsünün içindeki if (şart) ödenmiyor. Bir el atin lütfen
Stringden harf almak
Gönderilme zamanı: Prş Ara 29, 2022 10:02 pm
gönderen Emrullah AKTAŞ
Sorguyu böyle güncelleyin:
Stringden harf almak
Gönderilme zamanı: Prş Ara 29, 2022 10:47 pm
gönderen HakimKILLER44
Stringden harf almak
Gönderilme zamanı: Cum Ara 30, 2022 2:50 pm
gönderen HakimKILLER44
bir el aticak olan yokmu acaba?
Stringden harf almak
Gönderilme zamanı: Cum Ara 30, 2022 3:02 pm
gönderen HakimKILLER44
Yapmak istediyim aslinda bu Renkli Yazi
Eyer msg deyiseninde !t varsa mavi, !y varsa kirmizi, !d varsa boz yazicak
Kod: Tümünü seç
// Stock: ZE Color Print
stock ze_color_p(index, const text[], any:...)
{
new const teams[][] = {"", "TERRORIST", "CT", "SPECTATOR"}
new msg[128], main_team, team[100]
vformat(msg, charsmax(msg), text, 3)
/*
// Str Find fonksiyonu calismadi
if (strfind(msg, "!t")
team = "CT"
else if (strfind(msg, "!t")
team = "TERRORIST"
else if (strfind(msg, "!t")
team = ""
// Donguyle de calismadi
for (new i = 0; i < strlen(msg); i++)
{
client_print(0, print_chat, "%s", msg[i])
if (equal(msg[i], "!") && equal(msg[i + 1], "y"))
{
team = "TERRORIST"
client_print(0, print_chat, "kirmizi")
}
}
*/
replace_all(msg, charsmax(msg), "!g", "^x04") // yesil
replace_all(msg, charsmax(msg), "!n", "^x01") // normal
replace_all(msg, charsmax(msg), "!t", "^x03") // mavi
replace_all(msg, charsmax(msg), "!y", "^x03") // kirmizi
replace_all(msg, charsmax(msg), "!d", "^x03") // boz
if (index == 0)
{
for (new id = 1; id <= get_maxplayers(); id++)
{
if (!is_user_connected(id))
continue
main_team = get_user_team(id)
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, id)
write_byte(id)
write_string(team)
message_end()
message_begin(MSG_ONE, get_user_msgid("SayText"), _, id)
write_byte(id)
write_string(msg)
message_end()
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, id)
write_byte(id)
write_string(teams[main_team])
message_end()
}
}
else
{
main_team = get_user_team(index)
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, index)
write_byte(index)
write_string(team)
message_end()
message_begin(MSG_ONE, get_user_msgid("SayText"), _, index)
write_byte(index)
write_string(msg)
message_end()
message_begin(MSG_ONE, get_user_msgid("TeamInfo"), _, index)
write_byte(index)
write_string(teams[main_team])
message_end()
}
}
zahmet olmazsa bu kodlara bir bakin
Stringden harf almak
Gönderilme zamanı: Cum Ara 30, 2022 3:09 pm
gönderen Emrullah AKTAŞ
"equali" komutunu kullanabilirsiniz.
Stringden harf almak
Gönderilme zamanı: Cum Ara 30, 2022 3:31 pm
gönderen Schwartzkopf
HakimKILLER44 yazdı: ↑Prş Ara 29, 2022 9:13 pm
Selam aleykum arkadaşlar. Her hangi bir stringden bir harfin yeri nasıl bulunur? Örnek : "selam aleykum" yazisindan ben "s" nin indexini(olduğu konumu) bulmak istiyorum. Bir yardim eden olursa sevinirim(yardimci ola bilecek kodlar: strfind(), contain() ben bunlari denedim yapamadim).
"Containi" yi bunun için kullanabilirsiniz gibi gözüküyor. Açıklaması şu şekilde;
Kod: Tümünü seç
-1 on failure (no match found).
Any other value indicates a position in the string where the match starts.
Stringden harf almak
Gönderilme zamanı: Cum Ara 30, 2022 4:37 pm
gönderen HakimKILLER44
Schwartzkopf yazdı: ↑Cum Ara 30, 2022 3:31 pm
acaba bir ornek vere bilirmisin? (galiba senin dediyin bu)
Kod: Tümünü seç
if (contain(msg, "!t"))// dogruysa calisir (mavi yazar)
team = "CT"
if (contain(msg, "!y"))// dogruysa calisir (kirmizi yazar)
team = "TERRORIST"
ben soyle yapiyorum :
Kod: Tümünü seç
new msg[200] = "!tBu mavi yazidir"
if (contain(msg, "!t")) // burasi calismalidir
team = "CT"
if (contain(msg, "!y")) // burasi calismamalidir (msg deyiseninde !y harfi yok)
team = "TERRORIST"
bunlari yazdikdan sonra her ikiside calisiyor. bunu duzeletemiyorum malesef. lutfen orneklerle cevap verin