Gothic Online Forums
Squirrel - Pliki - Printable Version

+- Gothic Online Forums (https://archive.gothic-online.com)
+-- Forum: Community (https://archive.gothic-online.com/forum-18.html)
+--- Forum: Polish (Polski) (https://archive.gothic-online.com/forum-19.html)
+---- Forum: Skrypty (https://archive.gothic-online.com/forum-47.html)
+---- Thread: Squirrel - Pliki (/thread-1264.html)



Squirrel - Pliki - KimiorV - 25.03.2016

Code:
io <- {};

class io.file extends file
{
    constructor(_fileName, _mode)
   {
       errorMsg = null;
 
       try
       {
           base.constructor(_fileName, _mode);
            isOpen = true;
       }
       catch (msg)
       {
           errorMsg = msg;
            isOpen = false;
       }
   };
    
    function readLine()
    {
        local line  = "";    
        while (!this.eos()) {
            local character = this.readn('b');
            if (character == '\n')
                break;
            else
                line += character.tochar();
        }
            return line;
    };

    function write(text, next_line = false)
    {
        if(text)
        {
            foreach(ascii in text)
                this.writen(ascii, 'b');        
          
                if(next_line)
                    this.writen('\n', 'b');    
            
        }
    };

    function readLines(params = null)
    {
        local line  = "";
        local lines = [];
        while (!this.eos()) {
            local character = this.readn('b')
            if (character == '\n') {
                if(line != "" || line.len() > 1) {
                    if(params)                    
                        lines.append(sscanf(params, line));
                    else
                        lines.append(line);

                    line = "";
                }
            } else
                line += character.tochar();
        }    
            return lines;
    };
      
    function close()
   {
       base.close();
       isOpen = false;
   };
 
   errorMsg = null;
   isOpen = false;
};


///////////////////////////////////////////////// Przyklady?

addEvent("onJoin", function(pid)
{    
    local name = getPlayerName(pid);    
    local visualFile = io.file(name + ".txt", "r+"); 
    if(visualFile.isOpen) {
        local visual = sscanf("sdsd", visualFile.readLine());    
        print(visual[0], visual[1], visual[2], visual[3]); 
    }
    
    visualFile.close();
});

addEvent("onDisconnect", function(pid, reason)
{
    local visualFile = io.file(getPlayerName(pid) + ".txt", "w+"); 
    if(visualFile.isOpen) {    
        local visual = getPlayerVisual(pid);
        visualFile.write(visual.bodyModel + " " + visual.bodyTexture + " " + visual.headModel + " " + visual.headTexture, true);
    }
    
    visualFile.close();
});


Odczyt/zapis plików bez użycia dodatkowych modułów. Działa tylko po stronie serwera, błędy zgłaszać.

#Edit
http://pastebin.com/5hMAPqXc + wersja napisana przez Bimbola.


RE: Squirrel - Pliki - Quarchodron - 25.03.2016

Dobre.


RE: Squirrel - Pliki - Bimbol - 25.03.2016

Ej Kimior, mogłeś przynajmniej się zapytać Sad
EDIT. A ok, teraz czytam gg.


RE: Squirrel - Pliki - KimiorV - 25.03.2016

(25.03.2016, 16:16)Bimbol Wrote: Ej Kimior, mogłeś przynajmniej się zapytać Sad
EDIT. A ok, teraz czytam gg.

To nie twoja wersja.