Infobox

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
  • Hallom ich will ueber Textdraws eine Infobox einfuegen, hab die Textdraws ueber den ITD Textdrawcreator erstellt und eine Funktion um schon mal die Zeit upzudaten.
    Nun habe ich einen Error & das ganze ist nicht gerade effizient, kann mir einer sagen wie ich das ganz vlt. effizienter schreiben kann?
    Erstmal der Error:

    Code
    C:\Users\N984.2\Desktop\SAMP Scripting\gne\gamemodes\GNE.pwn(3585) : error 010: invalid function or declarationPawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase1 Error.


    Meine Funktion:

    Spoiler anzeigen

    stock LoadInfoBox(playerid)
    {
    if(IsPlayerConnected(playerid)
    {
    new Second,Minute,Hour,Day,Month,Year,String[128][8];
    gettime(Hour,Minute,Second);
    getdate(Year,Month,Day);
    if(Second > 10){format(String[0],sizeof String[0],"0%d",Second);}
    if(Second < 9){format(String[0],sizeof String[0],"%d",Second);}
    if(Minute > 9){format(String[1],sizeof String[1],"0%d",Minute);}
    if(Minute < 9){format(String[1],sizeof String[1],"%d",Minute);}
    if(Hour < 9){format(String[2],sizeof String[2],"0%d",Hour);}
    if(Hour > 9){format(String[2],sizeof String[2],"%d",Hour);}
    if(Day < 9){format(String[3],sizeof String[3],"0%d",Day);}
    if(Day > 9){format(String[3],sizeof String[3],"%d",Day);}
    if(Month < 9){format(String[4],sizeof String[4],"0%d",Month);}
    if(Month > 9){format(String[4],sizeof String[4],"%d",Month);}
    format(String[5],sizeof String[5],"%d",Year);}
    format(String[6],sizeof String[6],"%s:%s:%s",String[2],String[1],String[0]);
    format(String[7].sizeof String[7],"%s.%s.%s",String[3],String[4],String[5]);
    TextdrawSetString(InfoBoxTime,String[6]);
    TextdrawSetString(InfoBoxDate,String[7]);
    return 1;
    }
    return 0;//Fehler Zeile.
    }


    So soll es mal aussehen:


    Hoffe jemand kann mir helfen ^^


    MfG
    SeXy[B]reaD* aka. Niklas


    xXSeXyBreaDXx -> BREAD. -> [LoG]Bread -> Bread

  • Teste mal das hier
    Hab da allgemein mal aufgeräumt in den Code
    stock LoadInfoBox(playerid)
    {
    new Second,Minute,Hour,Day,Month,Year,String[8][128];
    gettime(Hour,Minute,Second);
    getdate(Year,Month,Day);
    format(String[0],sizeof String[0],"%02d",Second);
    format(String[1],sizeof String[1],"%02d",Minute);
    format(String[2],sizeof String[2],"%02d",Hour);
    format(String[3],sizeof String[3],"%02d",Day);
    format(String[4],sizeof String[4],"%02d",Month);
    format(String[5],sizeof String[5],"%d",Year);}
    format(String[6],sizeof String[6],"%s:%s:%s",String[2],String[1],String[0]);
    format(String[7].sizeof String[7],"%s.%s.%s",String[3],String[4],String[5]);
    TextdrawSetString(InfoBoxTime,String[6]);
    TextdrawSetString(InfoBoxDate,String[7]);
    return 1;
    }

    All in all it's just another brick in the wall

  • Code
    C:\Users\N984.2\Desktop\SAMP Scripting\gne\gamemodes\GNE.pwn(64998) : error 021: symbol already defined: "format"
    C:\Users\N984.2\Desktop\SAMP Scripting\gne\gamemodes\GNE.pwn(64998 -- 65013) : error 010: invalid function or declaration
    Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase
    
    
    
    
    2 Errors.


    Kannst du mir vlt. mal das mit dem %02d erklaeren? ^^


    xXSeXyBreaDXx -> BREAD. -> [LoG]Bread -> Bread

  • mein Fehler
    stock LoadInfoBox(playerid)
    {
    new Second,Minute,Hour,Day,Month,Year,String[8][128];
    gettime(Hour,Minute,Second);
    getdate(Year,Month,Day);
    format(String[0],sizeof String[0],"%02d",Second);
    format(String[1],sizeof String[1],"%02d",Minute);
    format(String[2],sizeof String[2],"%02d",Hour);
    format(String[3],sizeof String[3],"%02d",Day);
    format(String[4],sizeof String[4],"%02d",Month);
    format(String[5],sizeof String[5],"%d",Year);//hatte da ein } vergessen zu entfernen
    format(String[6],sizeof String[6],"%s:%s:%s",String[2],String[1],String[0]);
    format(String[7].sizeof String[7],"%s.%s.%s",String[3],String[4],String[5]);
    TextdrawSetString(InfoBoxTime,String[6]);
    TextdrawSetString(InfoBoxDate,String[7]);
    return 1;
    }


    //Edit
    habe es dir nochmal reccourcen freundlicher geschrieben
    stock LoadInfoBox(playerid)
    {
    new Second,Minute,Hour,Day,Month,Year,String[10],EndEnd[50];
    format(String,10,"%02d:",Hour);strcat(EndEnd,String);
    format(String,10,"%02d:",Minute);strcat(EndEnd,String);
    format(String,10,"%02d",Second);strcat(EndEnd,String);
    TextdrawSetString(InfoBoxTime,EndEnd);
    format(String,10,"%02d:",Day);strcat(EndEnd,String);
    format(String,10,"%02d:",Month);strcat(EndEnd,String);
    format(String,10,"%d",Year);strcat(EndEnd,String);
    TextdrawSetString(InfoBoxDate,EndEnd);
    return 1;
    }

    All in all it's just another brick in the wall

    Einmal editiert, zuletzt von [DT]Beavis () aus folgendem Grund: Verbesserungen

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Die 1. Variante hab ich noch icht probiert...


    Hab bei der 1. Variante jz ein paar Errors:



    xXSeXyBreaDXx -> BREAD. -> [LoG]Bread -> Bread


  • Dann hättest du auch gleich alles in einem Schritt machen können.
    new Second,Minute,Hour,Day,Month,Year,String[16 /* 11 würde auch reichen */];
    gettime(Hour,Minute,Second); // <-- Nicht vergessen
    getdate(Year,Month,Day); // <-- Nicht vergessen


    format(String,sizeof(String),"%02d:%02d:%2d",Hour,Minute,Second);
    TextdrawSetString(InfoBoxTime,String);
    format(String,sizeof(String),"%02d.%02d.%2d",Day,Month,Year); // < DD.MM.YYYY , nicht DD:MM:YYYY
    TextdrawSetString(InfoBoxDate,String);

  • public LoadInfoBoxTime()//Public wegen Timer und so
    {
    new Second,Minute,Hour,Day,Month,Year,String[64];
    gettime(Hour,Minute,Second);
    getdate(Year,Month,Day);
    format(String,sizeof(String),"~r~Zeit:~w~_%02d:%02d:%2d",Hour,Minute,Second);
    TextDrawSetString(InfoBoxTime,String);
    format(String,sizeof(String),"~g~Datum:~w~_%02d.%02d.%2d",Day,Month,Year);
    TextDrawSetString(InfoBoxDate,String);
    return 1;
    }


    So seiht das aus(Das die Box bis jz halbleer ist, ist gewollt, aber nicht das sich die Textdraws ueberlappen):


    xXSeXyBreaDXx -> BREAD. -> [LoG]Bread -> Bread