log system

 avatar
unknown
javascript
a year ago
1.7 kB
7
Indexable
log_system := class():
    var SourceName : string
    var LineCount : int = 0

    LogMessage<localizes>(MessageLineCount : int, 
                          MessageSourceName : string, 
                          Message : string) : message = "{MessageLineCount} - {SourceName} | {Message}"

    LogMessageWithAgent<localizes>(MessageLineCount : int, 
                                   MessageSourceName : string, 
                                   Message : string, 
                                   Agent : agent) : message = "{MessageLineCount} - {SourceName} | {Agent}: {Message}"

    LogDefault(Message : string, ?MaybeAgent : ?agent = false) : void =
        if (Agent := MaybeAgent?):
            Print(LogMessageWithAgent(LineCount, SourceName, Message, Agent), ?Color := NamedColors.White)
        else:
            Print(LogMessage(LineCount, SourceName, Message), ?Color := NamedColors.White)
        set LineCount += 1

    LogWarning(Message : string, ?MaybeAgent : ?agent = false) : void =
        if (Agent := MaybeAgent?):
            Print(LogMessageWithAgent(LineCount, SourceName, Message, Agent), ?Color := NamedColors.Yellow)
        else:
            Print(LogMessage(LineCount, SourceName, Message), ?Color := NamedColors.White)
        set LineCount += 1

    LogError(Message : string, ?MaybeAgent : ?agent = false) : void =
        if (Agent := MaybeAgent?):
            Print(LogMessageWithAgent(LineCount, SourceName, Message, Agent), ?Color := NamedColors.Red)
        else:
            Print(LogMessage(LineCount, SourceName, Message), ?Color := NamedColors.White)
        set LineCount += 1
Editor is loading...
Leave a Comment