SetObjectMaterialText in Pawno ??

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 Scripter,


    ich habe gestern gesehen das rocky ein "SetObjectMaterialText Tutorial (Oder Showroom gmemacht hat)" und meine frage ist ob das alles unter


    OnDialogResponse muss :


    Spoiler anzeigen
    92.
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    93.
    {
    94.
    if(dialogid == MainDialog){
    95.
    if(response){
    96.
    switch(listitem) {
    97.
    case 0:{
    98.
    new string[128], type[30];
    99.
    if(ObjectType[playerid] == false) type = "Normal Object";
    100.
    else if(ObjectType[playerid] == true) type = "Player Object";
    101.
    format(string, sizeof(string),""B"Curret Object Type: "Y"%s\
    102.
    \n"G"Please, select your Object Type below:",type);
    103.
    ShowPlayerDialog(playerid,OTypeDialog,DIALOG_STYLE_MSGBOX," "R"Object Type",string,"Normal O.","Player O.");
    104.
    }
    105.
    case 1:{
    106.
    new string[128];
    107.
    format(string, sizeof(string), ""B"Current Object Model ID: "Y"%d\
    108.
    \n"G"Please, type below a Model ID for the object (example = 19353):",ObjectID[playerid]);
    109.
    ShowPlayerDialog(playerid,OModelDialog,DIALOG_STYLE_INPUT," "R"Object Model ID",string,"Change","Back");
    110.
    }
    111.
    case 2:{
    112.
    new string[300];
    113.
    format(string, sizeof(string),""B"Current Object Text: "Y"%s\
    114.
    \n"G"Please, type below your text for the object:",Text[playerid]);
    115.
    ShowPlayerDialog(playerid,TextDialog,DIALOG_STYLE_INPUT," "R"Object Text",string,"Change","Back");
    116.
    }
    117.
    case 3: {
    118.
    new string[128];
    119.
    format(string, sizeof(string),""B"Current Material Index: "Y"%d\
    120.
    \n"G"Please, type below the Material Index which you want use (default = 0):",Index[playerid]);
    121.
    ShowPlayerDialog(playerid,IndexDialog,DIALOG_STYLE_INPUT," "R"Material Index",string,"Change","Back");
    122.
    }
    123.
    case 4: {
    124.
    new sizes[600];
    125.
    strcat(sizes,""Y"1. "B"32x32 "G"(10)\
    126.
    \n"Y"2. "B"64x32 "G"(20)\
    127.
    \n"Y"3. "B"64x64 "G"(30)\
    128.
    \n"Y"4. "B"128x32 "G"(40)\
    129.
    \n"Y"5. "B"128x64 "G"(50)\
    130.
    \n"Y"6. "B"128x128 "G"(60)\
    131.
    \n"Y"7. "B"256x32 "G"(70)");
    132.
    strcat(sizes,"\n"Y"8. "B"256x64 "G"(80)\
    133.
    \n"Y"9. "B"256x128 "G"(90)\
    134.
    \n"Y"10. "B"256x256 "G"(100)\
    135.
    \n"Y"11. "B"512x64 "G"(110)\
    136.
    \n"Y"12. "B"512x128 "G"(120)\
    137.
    \n"Y"13. "B"512x256 "G"(130)\
    138.
    \n"Y"14. "B"512x512 "G"(140)");
    139.
    new current[128];
    140.
    format(current, sizeof(current),""R"Material Size "G"| "B"Current size: "Y"%d",Size[playerid]);
    141.
    ShowPlayerDialog(playerid,SizesDialog,DIALOG_STYLE_LIST,current,sizes,"Change","Back");
    142.
    }
    143.
    case 5: {
    144.
    new string[128];
    145.
    format(string, sizeof(string), ""B"Current Text Font: "Y"%s\
    146.
    \n"G"Please, type below the Text Font name which you want use:",FontName[playerid]);
    147.
    ShowPlayerDialog(playerid,FontNDialog,DIALOG_STYLE_INPUT," "R"Text Font",string,"Change","Back");
    148.
    }
    149.
    case 6: {
    150.
    new string[128];
    151.
    format(string, sizeof(string), ""B"Current Text Size: "Y"%d\
    152.
    \n"G"Please, type below the Text Size which you want use:",FontSize[playerid]);
    153.
    ShowPlayerDialog(playerid,FontSDialog,DIALOG_STYLE_INPUT," "R"Text Size",string,"Change","Back");
    154.
    }
    155.
    case 7: {
    156.
    new title[100]; new yesorno[10];
    157.
    if(UseBold[playerid] == 0) yesorno = "No";
    158.
    else if(UseBold[playerid] == 1) yesorno = "Yes";
    159.
    format(title, sizeof(title), ""R"Bold Text "G"| "B"Using Bold Text: "Y"%s",yesorno);
    160.
    ShowPlayerDialog(playerid,BoldDialog,DIALOG_STYLE_LIST,title,""Y"1. "B"No\n"Y"2. "B"Yes","Change","Back");
    161.
    }
    162.
    case 8: {
    163.
    new titulo[100];
    164.
    format(titulo, sizeof(titulo),""R"Text Color "G"| "B"Current Text Color: "Y"%i",TextColor[playerid]);
    165.
    ShowPlayerDialog(playerid,ColorDialog,DIALOG_STYLE_LIST,titulo,""Y"1. "B"Type a ARGB color code\
    166.
    \n"Y"2. "B"Select a predefinded color","Next","Back");
    167.
    }
    168.
    case 9: {
    169.
    new titulo[100];
    170.
    format(titulo, sizeof(titulo),""R"Object Background "G"| "B"Current Text Color: "Y"%i",BackgColor[playerid]);
    171.
    ShowPlayerDialog(playerid,BackgColorD,DIALOG_STYLE_LIST,titulo,""Y"1. "B"Disable Background\n"Y"2. "B"Type a ARGB color code\
    172.
    \n"Y"3. "B"Select a predefinded color","Next","Back");
    173.
    }
    174.
    case 10: {
    175.
    new title[100]; new position[30];
    176.
    if(TextAlign[playerid] == 0) position = "Left";
    177.
    else if(TextAlign[playerid] == 1) position = "Center";
    178.
    else if(TextAlign[playerid] == 2) position = "Right";
    179.
    format(title, sizeof(title), ""R"Text Alignment "G"| "B"Current Alignment: "Y"%s",position);
    180.
    ShowPlayerDialog(playerid,AlignDialog,DIALOG_STYLE_LIST,title,""Y"1. "B"Left\n"Y"2. "B"Center\n"Y"3. "B"Right","Change","Back");
    181.
    }
    182.
    case 11: {
    183.
    EditPlayerObject(playerid, Object[playerid]);
    184.
    SendClientMessage(playerid,-1,""R"* "B"INFO: "Y"Use "G"ESC "Y"to cancel the object edition.");
    185.
    }
    186.
    case 12: {
    187.
    ShowPlayerDialog(playerid,SaveDialog,DIALOG_STYLE_INPUT," "R"Exporting Lines",
    188.
    "Please, type a name for the object below (example = MyObject):","Export","Back");
    189.
    }
    190.
    case 13: {
    191.
    CreatingTextO[playerid] = false, DestroyPlayerObject(playerid, Object[playerid]);
    192.
    TextAlign[playerid] = 1, Text[playerid] = "Example", FontName[playerid] = "Arial",
    193.
    TextColor[playerid] = HexToInt("0xFFFF8200"), BackgColor[playerid] = HexToInt("0xFF000000"),
    194.
    Size[playerid] = 50, Index[playerid] = 0, UseBold[playerid] = 0,
    195.
    FontSize[playerid] = 24, OName[playerid] = "0", ObjectID[playerid] = 19353;
    196.
    SendClientMessage(playerid,-1,""R"* "B"INFO: "Y"All settings have been reseted.");
    197.
    }
    198.
    }
    199.
    }
    200.
    return 1;
    201.
    }
    202.
    if(dialogid == OTypeDialog)
    203.
    {
    204.
    if(response)
    205.
    {
    206.
    ObjectType[playerid] = false;
    207.
    SendClientMessage(playerid,-1,""R"* "B"Object Type: "Y"Normal Object"); ShowMainMenu(playerid);
    208.
    } else {
    209.
    ObjectType[playerid] = true;
    210.
    SendClientMessage(playerid,-1,""R"* "B"Object Type: "Y"Player Object"); ShowMainMenu(playerid);
    211.
    }
    212.
    return 1;
    213.
    }
    214.
    if(dialogid == OModelDialog)
    215.
    {
    216.
    if(response)
    217.
    {
    218.
    if(!isNumeric(inputtext)) return SendClientMessage(playerid,-1,""Y"* "R"ERROR: "G"Please, use a numeric value"R"!"), ShowMainMenu(playerid);
    219.
    new string[128];
    220.
    ObjectID[playerid] = strval(inputtext);
    221.
    format(string, sizeof(string), ""R"* "B"Object Model ID: "Y"%d",ObjectID[playerid]);
    222.
    SendClientMessage(playerid,-1,string); UpdateObject(playerid), ShowMainMenu(playerid);
    223.
    } else { ShowMainMenu(playerid); }
    224.
    return 1;
    225.
    }
    226.
    if(dialogid == TextDialog){
    227.
    if(response){
    228.
    new string[128];
    229.
    format(string, sizeof(string),"%s",inputtext);
    230.
    Text[playerid] = string; format(string, sizeof(string), ""R"* "B"Object Text: "Y"%s",Text[playerid]);
    231.
    SendClientMessage(playerid,-1,string); UpdateObject(playerid), ShowMainMenu(playerid);
    232.
    } else { ShowMainMenu(playerid); }
    233.
    return 1;
    234.
    }
    235.
    if(dialogid == IndexDialog){
    236.
    if(response){
    237.
    if(!isNumeric(inputtext)) return SendClientMessage(playerid,-1,""Y"* "R"ERROR: "G"Please, use a numeric value"R"!"), ShowMainMenu(playerid);
    238.
    new string[100];
    239.
    Index[playerid] = strval(inputtext);
    240.
    format(string, sizeof(string),""R"* "B"Object Material Index: "Y"%d",Index[playerid]);
    241.
    SendClientMessage(playerid,-1,string); UpdateObject(playerid), ShowMainMenu(playerid);
    242.
    } else { ShowMainMenu(playerid); }
    243.
    return 1;
    244.
    }
    245.
    if(dialogid == SizesDialog){
    246.
    if(response)
    247.
    {
    248.
    switch(listitem) {
    249.
    case 0: Size[playerid] = 10;
    250.
    case 1: Size[playerid] = 20;
    251.
    case 2: Size[playerid] = 30;
    252.
    case 3: Size[playerid] = 40;
    253.
    case 4: Size[playerid] = 50;
    254.
    case 5: Size[playerid] = 60;
    255.
    case 6: Size[playerid] = 70;
    256.
    case 7: Size[playerid] = 80;
    257.
    case 8: Size[playerid] = 90;
    258.
    case 9: Size[playerid] = 100;
    259.
    case 10: Size[playerid] = 110;
    260.
    case 11: Size[playerid] = 120;
    261.
    case 12: Size[playerid] = 130;
    262.
    case 13: Size[playerid] = 140;
    263.
    default: Size[playerid] = 70;
    264.
    }
    265.
    new string[128];
    266.
    format(string, sizeof(string), ""R"* "B"Object Material Size: "Y"%d",Size[playerid]);
    267.
    SendClientMessage(playerid,-1,string); UpdateObject(playerid), ShowMainMenu(playerid);
    268.
    } else { ShowMainMenu(playerid); }
    269.
    return 1;
    270.
    }
    271.
    if(dialogid == FontNDialog)
    272.
    {
    273.
    if(response) {
    274.
    new string[128]; format(string, sizeof(string),"%s",inputtext); FontName[playerid] = string;
    275.
    format(string, sizeof(string), ""R"* "B"Text Font: "Y"%s",FontName[playerid]); SendClientMessage(playerid,-1,string);
    276.
    UpdateObject(playerid), ShowMainMenu(playerid);
    277.
    } else { ShowMainMenu(playerid); }
    278.
    return 1;
    279.
    }
    280.
    if(dialogid == FontSDialog)
    281.
    {
    282.
    if(response) {
    283.
    if(!isNumeric(inputtext)) return SendClientMessage(playerid,-1,""Y"* "R"ERROR: "G"Please, use a numeric value"R"!"), ShowMainMenu(playerid);
    284.
    new string[128]; FontSize[playerid] = strval(inputtext);
    285.
    format(string, sizeof(string), ""R"* "B"Text Size: "Y"%d",FontSize[playerid]); SendClientMessage(playerid,-1,string);
    286.
    UpdateObject(playerid), ShowMainMenu(playerid);
    287.
    } else { ShowMainMenu(playerid); }
    288.
    return 1;
    289.
    }
    290.
    if(dialogid == BoldDialog)
    291.
    {
    292.
    if(response)
    293.
    {
    294.
    switch(listitem)
    295.
    {
    296.
    case 0: {
    297.
    UseBold[playerid] = 0;
    298.
    SendClientMessage(playerid,-1,""R"* "B"Bold Text: "Y"No");
    299.
    UpdateObject(playerid), ShowMainMenu(playerid);
    300.
    }
    301.
    case 1: {
    302.
    UseBold[playerid] = 1;
    303.
    SendClientMessage(playerid,-1,""R"* "B"Bold Text: "Y"Yes");
    304.
    UpdateObject(playerid), ShowMainMenu(playerid);
    305.
    }
    306.
    }
    307.
    } else { ShowMainMenu(playerid); }
    308.
    return 1;
    309.
    }
    310.
    if(dialogid == ColorDialog)
    311.
    {
    312.
    if(response)
    313.
    {
    314.
    switch(listitem)
    315.
    {
    316.
    case 0: {
    317.
    ShowPlayerDialog(playerid,ColorDialog2,DIALOG_STYLE_INPUT," "R"Text Color",
    318.
    ""G"Please, type a ARGB color code below (example = 0xFFFF0000):","Change","Back");
    319.
    }
    320.
    case 1: {
    321.
    ShowPlayerDialog(playerid,ColorDialog3,DIALOG_STYLE_LIST,""R"Color List",
    322.
    "{FF0000}Red\n{04B404}Green\n{00B5CD}Sky-Blue\n{FFFF00}Yellow\
    323.
    \n{0000FF}Blue\n{848484}Grey\n{FF00FF}Pink\n{FFFFFF}White","Change","Back");
    324.
    }
    325.
    }
    326.
    } else { ShowMainMenu(playerid); }
    327.
    return 1;
    328.
    }
    329.
    if(dialogid == ColorDialog2)
    330.
    {
    331.
    if(response) {
    332.
    new string[80]; TextColor[playerid] = HexToInt(inputtext);
    333.
    format(string, sizeof(string),""R"* "B"Text Color: "Y"%i", TextColor[playerid]);
    334.
    SendClientMessage(playerid,-1,string); UpdateObject(playerid), ShowMainMenu(playerid);
    335.
    } else {
    336.
    new titulo[100];
    337.
    format(titulo, sizeof(titulo),""R"Text Color "G"| "B"Current Text Color: "Y"%i",TextColor[playerid]);
    338.
    ShowPlayerDialog(playerid,ColorDialog,DIALOG_STYLE_LIST,titulo,""Y"1. "B"Type a ARGB color code\
    339.
    \n"Y"2. "B"Select a predefinded color","Next","Back");
    340.
    }
    341.
    return 1;
    342.
    }
    343.
    if(dialogid == ColorDialog3)
    344.
    {
    345.
    if(response) {
    346.
    switch(listitem)
    347.
    {
    348.
    case 0: { TextColor[playerid] = HexToInt("0xFFFF0000"); } //Red
    349.
    case 1: { TextColor[playerid] = HexToInt("0xFF04B404"); }
    350.
    case 2: { TextColor[playerid] = HexToInt("0xFF00B5CD"); }
    351.
    case 3: { TextColor[playerid] = HexToInt("0xFFFFFF00"); } //Yellow
    352.
    case 4: { TextColor[playerid] = HexToInt("0xFF0000FF"); }
    353.
    case 5: { TextColor[playerid] = HexToInt("0xFF848484"); }
    354.
    case 6: { TextColor[playerid] = HexToInt("0xFFFF00FF"); }
    355.
    case 7: { TextColor[playerid] = HexToInt("0xFFFFFFFF"); } //White
    356.
    }
    357.
    new string[80]; UpdateObject(playerid);
    358.
    format(string, sizeof(string),""R"* "B"Text Color: "Y"%i", TextColor[playerid]);
    359.
    SendClientMessage(playerid,-1,string); ShowMainMenu(playerid);
    360.
    } else {
    361.
    new titulo[100];
    362.
    format(titulo, sizeof(titulo),""R"Text Color "G"| "B"Current Text Color: "Y"%i",TextColor[playerid]);
    363.
    ShowPlayerDialog(playerid,ColorDialog,DIALOG_STYLE_LIST,titulo,""Y"1. "B"Type a ARGB color code\
    364.
    \n"Y"2. "B"Select a predefinded color","Next","Back");
    365.
    }
    366.
    return 1;
    367.
    }
    368.
    if(dialogid == BackgColorD)
    369.
    {
    370.
    if(response)
    371.
    {
    372.
    switch(listitem)
    373.
    {
    374.
    case 0: { BackgColor[playerid] = 0; UpdateObject(playerid); ShowMainMenu(playerid); SendClientMessage(playerid,-1,""R"* "B"Background Color: "Y"Disabled"); }
    375.
    case 1: {
    376.
    ShowPlayerDialog(playerid,ColorDialog4,DIALOG_STYLE_INPUT," "R"Background Color",
    377.
    ""G"Please, type a ARGB color code below (example = 0xFFFF0000):","Change","Back");
    378.
    }
    379.
    case 2: {
    380.
    ShowPlayerDialog(playerid,ColorDialog5,DIALOG_STYLE_LIST,""R"Color List",
    381.
    "{FF0000}Red\n{04B404}Green\n{00B5CD}Sky-Blue\n{FFFF00}Yellow\
    382.
    \n{0000FF}Blue\n{848484}Grey\n{FF00FF}Pink\n{FFFFFF}White","Change","Back");
    383.
    }
    384.
    }
    385.
    } else { ShowMainMenu(playerid); }
    386.
    return 1;
    387.
    }
    388.
    if(dialogid == ColorDialog4)
    389.
    {
    390.
    if(response) {
    391.
    new string[80]; BackgColor[playerid] = HexToInt(inputtext);
    392.
    format(string, sizeof(string),""R"* "B"Background Color: "Y"%i", BackgColor[playerid]);
    393.
    SendClientMessage(playerid,-1,string); UpdateObject(playerid), ShowMainMenu(playerid);
    394.
    } else {
    395.
    new titulo[100];
    396.
    format(titulo, sizeof(titulo),""R"Object Background "G"| "B"Current Text Color: "Y"%i",BackgColor[playerid]);
    397.
    ShowPlayerDialog(playerid,BackgColorD,DIALOG_STYLE_LIST,titulo,""Y"1. "B"Disable Background\n"Y"2. "B"Type a ARGB color code\
    398.
    \n"Y"3. "B"Select a predefinded color","Next","Back");
    399.
    }
    400.
    return 1;
    401.
    }
    402.
    if(dialogid == ColorDialog5)
    403.
    {
    404.
    if(response) {
    405.
    switch(listitem)
    406.
    {
    407.
    case 0: { BackgColor[playerid] = HexToInt("0xFFFF0000"); } //Red
    408.
    case 1: { BackgColor[playerid] = HexToInt("0xFF04B404"); }
    409.
    case 2: { BackgColor[playerid] = HexToInt("0xFF00B5CD"); }
    410.
    case 3: { BackgColor[playerid] = HexToInt("0xFFFFFF00"); } //Yellow
    411.
    case 4: { BackgColor[playerid] = HexToInt("0xFF0000FF"); }
    412.
    case 5: { BackgColor[playerid] = HexToInt("0xFF848484"); }
    413.
    case 6: { BackgColor[playerid] = HexToInt("0xFFFF00FF"); }
    414.
    case 7: { BackgColor[playerid] = HexToInt("0xFFFFFFFF"); } //White
    415.
    }
    416.
    new string[80]; UpdateObject(playerid); ShowMainMenu(playerid);
    417.
    format(string, sizeof(string),""R"* "B"Background Color: "Y"%i", BackgColor[playerid]);
    418.
    SendClientMessage(playerid,-1,string);
    419.
    } else {
    420.
    new titulo[100];
    421.
    format(titulo, sizeof(titulo),""R"Object Background "G"| "B"Current Text Color: "Y"%i",BackgColor[playerid]);
    422.
    ShowPlayerDialog(playerid,BackgColorD,DIALOG_STYLE_LIST,titulo,""Y"1. "B"Disable Background\n"Y"2. "B"Type a ARGB color code\
    423.
    \n"Y"3. "B"Select a predefinded color","Next","Back");
    424.
    }
    425.
    return 1;
    426.
    }
    427.
    if(dialogid == AlignDialog)
    428.
    {
    429.
    if(response) {
    430.
    switch(listitem)
    431.
    {
    432.
    case 0: {
    433.
    TextAlign[playerid] = 0; UpdateObject(playerid);
    434.
    SendClientMessage(playerid,-1,""R"* "B"Text Alignment: "Y"Left"), ShowMainMenu(playerid);
    435.
    }
    436.
    case 1: {
    437.
    TextAlign[playerid] = 1; UpdateObject(playerid);
    438.
    SendClientMessage(playerid,-1,""R"* "B"Text Alignment: "Y"Center"), ShowMainMenu(playerid);
    439.
    }
    440.
    case 2: {
    441.
    TextAlign[playerid] = 2; UpdateObject(playerid);
    442.
    SendClientMessage(playerid,-1,""R"* "B"Text Alignment: "Y"Right"), ShowMainMenu(playerid);
    443.
    }
    444.
    }
    445.
    } else { ShowMainMenu(playerid); }
    446.
    }
    447.
    if(dialogid == SaveDialog)
    448.
    {
    449.
    if(response)
    450.
    {
    451.
    if(strlen(inputtext) <= 0) return SendClientMessage(playerid,-1,""Y"* "R"ERROR: "G"Please, type something for the object name"R"!"), ShowMainMenu(playerid);
    452.
    new string[600], soname[30];
    453.
    format(soname, sizeof(soname),"%s",inputtext); OName[playerid] = soname;
    454.
    new Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ;
    455.
    GetPlayerObjectPos(playerid, Object[playerid], fX, fY, fZ),
    456.
    GetPlayerObjectRot(playerid, Object[playerid], fRotX, fRotY, fRotZ);
    457.
    if(!fexist("textobjects.txt"))
    458.
    {
    459.
    new File:archivo = fopen("textobjects.txt", io_write);
    460.
    if(ObjectType[playerid] == false) {
    461.
    format(string, sizeof(string),"new %s = CreateObject(%d, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f);\
    462.
    \r\nSetObjectMaterialText(%s, "%s", %d, %d, "%s", %d, %d, %i, %i, %d);",OName[playerid],ObjectID[playerid],
    463.
    fX, fY, fZ, fRotX, fRotY, fRotZ, OName[playerid], Text[playerid], Index[playerid], Size[playerid], FontName[playerid],
    464.
    FontSize[playerid], UseBold[playerid], TextColor[playerid], BackgColor[playerid], TextAlign[playerid]);
    465.
    fwrite(archivo,string);
    466.
    fclose(archivo);
    467.
    } else {
    468.
    format(string, sizeof(string),"new %s = CreatePlayerObject(playerid, %d, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f);\
    469.
    \r\nSetPlayerObjectMaterialText(playerid, %s, "%s", %d, %d, "%s", %d, %d, %i, %i, %d);",OName[playerid],ObjectID[playerid],
    470.
    fX, fY, fZ, fRotX, fRotY, fRotZ, OName[playerid], Text[playerid], Index[playerid], Size[playerid], FontName[playerid],
    471.
    FontSize[playerid], UseBold[playerid], TextColor[playerid], BackgColor[playerid], TextAlign[playerid]);
    472.
    fwrite(archivo,string); fclose(archivo);
    473.
    }
    474.
    } else {
    475.
    new File:archivo = fopen("textobjects.txt", io_append);
    476.
    if(ObjectType[playerid] == false) {
    477.
    format(string, sizeof(string),"\r\n\r\nnew %s = CreateObject(%d, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f);\
    478.
    \r\nSetObjectMaterialText(%s, "%s", %d, %d, "%s", %d, %d, %i, %i, %d);",OName[playerid],ObjectID[playerid],
    479.
    fX, fY, fZ, fRotX, fRotY, fRotZ, OName[playerid], Text[playerid], Index[playerid], Size[playerid], FontName[playerid],
    480.
    FontSize[playerid], UseBold[playerid], TextColor[playerid], BackgColor[playerid], TextAlign[playerid]);
    481.
    fwrite(archivo,string); fclose(archivo);
    482.
    } else {
    483.
    format(string, sizeof(string),"\r\n\r\nnew %s = CreatePlayerObject(playerid, %d, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f, %0.4f);\
    484.
    \r\nSetPlayerObjectMaterialText(playerid, %s, "%s", %d, %d, "%s", %d, %d, %i, %i, %d);",OName[playerid],ObjectID[playerid],
    485.
    fX, fY, fZ, fRotX, fRotY, fRotZ, OName[playerid], Text[playerid], Index[playerid], Size[playerid], FontName[playerid],
    486.
    FontSize[playerid], UseBold[playerid], TextColor[playerid], BackgColor[playerid], TextAlign[playerid]);
    487.
    fwrite(archivo,string); fclose(archivo);
    488.
    }
    489.
    }
    490.
    //---
    491.
    CreatingTextO[playerid] = false, DestroyPlayerObject(playerid, Object[playerid]);
    492.
    TextAlign[playerid] = 1, Text[playerid] = "Example", FontName[playerid] = "Arial",
    493.
    TextColor[playerid] = HexToInt("0xFFFF8200"), BackgColor[playerid] = HexToInt("0xFF000000"),
    494.
    Size[playerid] = 50, Index[playerid] = 0, UseBold[playerid] = 0,
    495.
    FontSize[playerid] = 24, OName[playerid] = "0", ObjectID[playerid] = 19353;
    496.
    //---
    497.
    SendClientMessage(playerid,-1,""R"* "B"INFO: "Y"Script saved, check your "G"textobjects.txt "Y"in "G"scriptfiles"Y".");
    498.
    SendClientMessage(playerid,-1,""R"* "B"INFO: "Y"All settings have been reseted.");
    499.
    } else { ShowMainMenu(playerid); }
    500.
    return 1;
    501.
    }
    502.
    return 0;
    503.
    }
    504.

    505.
    ShowMainMenu(playerid)
    506.
    {
    507.
    new string[600];
    508.
    strcat(string,""Y"1. "B"Set Object Type\n"Y"2. "B"Set Object Model ID\n"Y"3. "B"Set Object Text\
    509.
    \n"Y"4. "B"Set Material Index\n"Y"5. "B"Set Material Size\n");
    510.
    strcat(string, ""Y"6. "B"Set Text Font\n"Y"7. "B"Set Text Size\n"Y"8. "B"Set Bold Text\
    511.
    \n"Y"9. "B"Set Text Color\n"Y"10. "B"Set Background Color\n"Y"11. "B"Set Text Alignment\n"Y"12. "G"Edit Object\
    512.
    \n"Y"13. "G"Export Lines\n"Y"14. "G"Reset Object");
    513.
    ShowPlayerDialog(playerid,MainDialog,DIALOG_STYLE_LIST,""R"Text Object | Main Menu",string,"Continue","Exit");
    514.
    return 1;
    515.
    }
    516.

    517.
    UpdateObject(playerid)
    518.
    {
    519.
    GetPlayerObjectPos(playerid, Object[playerid], Pos[0], Pos[1], Pos[2]);
    520.
    GetPlayerObjectRot(playerid, Object[playerid], Rot[0], Rot[1], Rot[2]); DestroyPlayerObject(playerid, Object[playerid]);
    521.
    Object[playerid] = CreatePlayerObject(playerid, ObjectID[playerid], Pos[0], Pos[1], Pos[2], Rot[0], Rot[1], Rot[2]);
    522.

    523.
    SetPlayerObjectMaterialText(playerid, Object[playerid], Text[playerid], Index[playerid], Size[playerid], FontName[playerid],
    524.
    FontSize[playerid], UseBold[playerid], TextColor[playerid], BackgColor[playerid], TextAlign[playerid]);
    525.
    }
    526.

    527.
    public OnPlayerEditObject(playerid, playerobject, objectid, response, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ)
    528.
    {
    529.
    if(objectid == Object[playerid]) {
    530.
    if(response == EDIT_RESPONSE_FINAL)
    531.
    {
    532.
    SendClientMessage(playerid,-1,""R"* "B"Object Edition: "Y"Updated");
    533.
    DestroyPlayerObject(playerid, Object[playerid]);
    534.
    Object[playerid] = CreatePlayerObject(playerid, ObjectID[playerid], fX, fY, fZ, fRotX, fRotY, fRotZ);
    535.
    SetPlayerObjectMaterialText(playerid, Object[playerid], Text[playerid], Index[playerid], Size[playerid], FontName[playerid],
    536.
    FontSize[playerid], UseBold[playerid], TextColor[playerid], BackgColor[playerid], TextAlign[playerid]);
    537.
    ShowMainMenu(playerid);
    538.
    } else if(response == EDIT_RESPONSE_CANCEL) {
    539.
    SendClientMessage(playerid,-1,""R"* "B"Object Edition: "Y"No updated"); UpdateObject(playerid), ShowMainMenu(playerid);
    540.
    }
    541.
    }
    542.
    }


    PS: Wäre nett wenn was wo anders hingehört das dann so postet Danke ist ein bissl viel aber bitte um hilfe

    MFG


    Stewie1234



    PS : Rechtschreibfehler könnt ihr behalten müsst es aber nicht ;)