Vytvořil jsem si jednoduchý skript do módu Reality, nicméně rád bych se podělil o tuto funkci. Je to v celku jednoduché.
Je jedno jestli chcete udělat cenzuru sprostých slov, nebo chcete prostě jen nahradit nějaký text ve větě, tato funkce vyřeší váš problém.
Příklad :
Moje máma je pěkná mrcha.
S touto funkcí odstraníme slovo "máma" a místo ní dáme "zubařka".
Moje zubařka je pěkná mrcha.
Samotná funkce vypadá takto
stock StringReplace(full_string[], string_find[], string_replace[], bool:ignorecase = false)
{
new start = strfind(full_string, string_find, ignorecase);
if(start == -1)return 0;
new string_pred[256],string_za[256];
format(string_pred, sizeof(string_pred), "%s", full_string);
format(string_za, sizeof(string_za), "%s", full_string);
strdel(string_pred, start, strlen(full_string));
strdel(string_za, 0, start+strlen(string_find));
format(full_string, 256, "%s%s%s", string_pred, string_replace, string_za);
return 1;
}
Použití je jednoduché
StringReplace("Zelenina je hnusná!!!", "hnusná", "zdravá");
"Zelenina je hnusná!!!" - Původní věta
"hnusná" - slovo které chceme nahradit
"zdravá" - slovo které použijeme místo modrého slova (v našem případě "hnusná")
pokud máte zájem můžete použít další parametr který může brát SLoVo stejně jako Slovo, pokud parametr nepoužijete (nebo bude nastaven na flase) bude SLoVo jiné než Slovo.
true - SLoVo je stejné jako Slovo
false - SLovo je jiné jako Slovo