Werbetafel Problem

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hallo!


    Ich habe ein Problem mit meinem Werbetafel-System, und zwar folgendes: Wenn ich mit \n einen Absatz machen möchte, wird dieser nicht angezeigt. Weiß jemand woran das liegt? Ich poste einfach mal den Code:


    public OnWerbetafelLoad(id)
    {
    new num_fields,num_rows;
    cache_get_data(num_rows,num_fields,dbhandle);
    if(!num_rows)
    {
    wInfo[id][wobjID] = -1;
    wInfo[id][windex] = -1;
    wInfo[id][wID] = -1;
    }
    for(new i=0; i<num_rows; i++)
    {
    wInfo[id][windex] = cache_get_field_content_int(i,"windex",dbhandle);
    cache_get_field_content(i, "wtext", wInfo[id][wtext], dbhandle, 128);
    SetDynamicObjectMaterialText(wInfo[id][wobjID], wInfo[id][windex], wInfo[id][wtext], 130, "Arial", 39, 1, 0xFFFFFFFF, 0xFF000000, 1);
    wInfo[id][wID]=id;
    }
    return 1;
    }


    stock UpdateWtafel(id)
    {
    new query[256];
    format(query, sizeof(query), "UPDATE wtafeln SET wtext='%i' WHERE wid='%i'", wInfo[id][wtext], id);
    mysql_function_query(dbhandle,query,false,"","");
    SetDynamicObjectMaterialText(wInfo[id][wobjID], wInfo[id][windex], wInfo[id][wtext], 130, "Arial", 39, 1, 0xFFFFFFFF, 0xFF000000, 1);
    return 1;
    }

  • Das liegt dann daran, dass es als purer Text ausgelesen wird.
    Schreibe in deiner Datenbank
    §n
    anstatt \n und füge den Code bei den Auslesungen aus der Datenbank ein:
    new i;
    while((i=strfind(TEXT_VARIABLE, "§n")) != -1)
    {
    strdel(TEXT_VARIABLE, i, i+2);
    strins(TEXT_VARIABLE, "\n", i);
    }
    Jeweils bevor du den Text anzeigen lässt, dann geht es.