Keine elegante Lösung für den Fall ich schreibe folgendes:
Zitathupsdahabichdochtatsächlichdasleerzeichenvergessen. Was mach ich denn nun ? a b c d e f g h i j k l m n und jetzt wieder etwas halbwegs sinnvolles.
Sowas solltest du lieber in erster Linie auf Textlänge beziehen und danach,falls eine Textlänge von X erreicht ist, ab dem nächsten LEERZEICHEN trennen.
So zum Beispiel:
stock gPM_StripMessageLines( message[ GPM_MAX_STRING ] ) {
#define SPLIT_LEN 50
new
bool:_bBasic = true,
_iParts,
_iCount,
_iTempLen = 0,
_iPos = 0,
_iTempPos = 0,
_iLen;
_iLen = strlen( message );
while( ( _iPos = strfind( message , " " , false ,_iPos + 1) ) != -1 ) {
_iCount++;
_iTempLen += ( _iPos - _iTempPos );
_iTempPos = _iPos;
if( _iTempLen >= SPLIT_LEN ) {
if( _iPos++ < sizeof( message ) ) {
strins( message , "\n" , _iPos );
_iCount = 0;
_iPos += 2;
_bBasic = false;
_iTempLen = 0;
}
}
}
if( _bBasic ) {
_iParts = ( _iLen / SPLIT_LEN );
for( new i = 0 ; i < _iParts ; i++ ) {
strins(message,"\n", ( ( i + 1 ) * SPLIT_LEN ) );
}
}
#undef SPLIT_LEN
return message;
}
Dann kann es so aussehen..