hedgewars/uConsole.pas
author nemo
Sat, 01 Mar 2014 14:52:36 -0500
changeset 10171 00f41ff0bf2d
parent 10108 c68cf030eded
child 10490 b30b8d39d662
permissions -rw-r--r--
Script might well override a static map, but can't risk it not doing it, and preview completely failing. Better to just not try it for static maps. Some script cfg might help. Could also avoid unnnecessary preview regenerations even if the script was doing nothing at all.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
     1
(*
1066
1f1b3686a2b0 Update copyright headers a bit
unc0rr
parents: 1035
diff changeset
     2
 * Hedgewars, a free turn based strategy game
9998
736015b847e3 update copyright to 2014
sheepluva
parents: 9080
diff changeset
     3
 * Copyright (c) 2004-2014 Andrey Korotaev <unC0Rr@gmail.com>
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
     4
 *
183
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
     5
 * This program is free software; you can redistribute it and/or modify
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
     7
 * the Free Software Foundation; version 2 of the License
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
     8
 *
183
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
    12
 * GNU General Public License for more details.
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    13
 *
183
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
    14
 * You should have received a copy of the GNU General Public License
57c2ef19f719 Relicense to GPL
unc0rr
parents: 176
diff changeset
    15
 * along with this program; if not, write to the Free Software
10108
c68cf030eded update FSF address. note: two sdl include files (by Sam Lantinga) still have the old FSF address in their copyright - but I ain't gonna touch their copyright headers
sheepluva
parents: 10015
diff changeset
    16
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    17
 *)
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    18
2630
079ef82eac75 revamped file access and debug display
koda
parents: 2599
diff changeset
    19
{$INCLUDE "options.inc"}
079ef82eac75 revamped file access and debug display
koda
parents: 2599
diff changeset
    20
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    21
unit uConsole;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    22
interface
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    23
785
ac538f1a629e Start console OpenGL reincarnation
unc0rr
parents: 783
diff changeset
    24
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    25
procedure WriteToConsole(s: shortstring);
8437
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    26
procedure WriteLnToConsole(s: shortstring);
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    27
function  ShortStringAsPChar(s: shortstring): PChar;
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    28
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    29
var lastConsoleline : shortstring;
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    30
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    31
implementation
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    32
uses Types, uUtils {$IFDEF ANDROID}, log in 'log.pas'{$ENDIF};
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    33
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    34
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    35
procedure WriteToConsole(s: shortstring);
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    36
begin
3818
e668970413e6 add a noconsole symbol, update the project file for appstore distribution
koda
parents: 3777
diff changeset
    37
{$IFNDEF NOCONSOLE}
8437
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    38
    AddFileLog('[Con] ' + s);
5661
45618bdce725 Fixed AddFileLog, there's now a log created in /sdcard/Android/data/org.hedgewars.mobile/cache/Data/
Xeli
parents: 5460
diff changeset
    39
{$IFDEF ANDROID}
8437
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    40
    //TODO integrate this function in the uMobile record
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6528
diff changeset
    41
    Log.__android_log_write(Log.Android_LOG_DEBUG, 'HW_Engine', ShortStringAsPChar('[Con]' + s));
5286
22c1f4833a86 First commit..
Xeli
parents: 5132
diff changeset
    42
{$ELSE}
8437
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    43
    Write(stderr, s);
3818
e668970413e6 add a noconsole symbol, update the project file for appstore distribution
koda
parents: 3777
diff changeset
    44
{$ENDIF}
5286
22c1f4833a86 First commit..
Xeli
parents: 5132
diff changeset
    45
{$ENDIF}
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    46
end;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    47
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    48
procedure WriteLnToConsole(s: shortstring);
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    49
begin
3825
fd6c20cd90e3 typos, reduced sound size and last minute fixes
koda
parents: 3818
diff changeset
    50
{$IFNDEF NOCONSOLE}
8437
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    51
    WriteToConsole(s);
5286
22c1f4833a86 First commit..
Xeli
parents: 5132
diff changeset
    52
{$IFNDEF ANDROID}
8437
93b647d6a00f uConsole on a diet
koda
parents: 7151
diff changeset
    53
    WriteLn(stderr, '');
3818
e668970413e6 add a noconsole symbol, update the project file for appstore distribution
koda
parents: 3777
diff changeset
    54
{$ENDIF}
5286
22c1f4833a86 First commit..
Xeli
parents: 5132
diff changeset
    55
{$ENDIF}
9958
5a222923c8f8 - Don't define NOCONSOLE
unc0rr
parents: 9080
diff changeset
    56
    lastConsoleline:= s;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    57
end;
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    58
6444
eddc1e9bcd81 - Help parser more
unc0rr
parents: 6033
diff changeset
    59
function ShortStringAsPChar(s: shortstring) : PChar;
6027
302408e45052 code working on ios now
koda
parents: 5661
diff changeset
    60
begin
6580
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6528
diff changeset
    61
    if Length(s) = High(s) then
6155187bf599 A partial reformatting of the pascal code to have consistent syntax. Things that are still inconsistent.
lovelacer
parents: 6528
diff changeset
    62
        Dec(s[0]);
6027
302408e45052 code working on ios now
koda
parents: 5661
diff changeset
    63
    s[Ord(Length(s))+1] := #0;
6990
40e5af28d026 change every return value into a more pascal-ish form, using the name of the fucntion (helps the parser and macpas compaitilibity)
koda
parents: 6982
diff changeset
    64
    ShortStringAsPChar:= @s[1];
6027
302408e45052 code working on ios now
koda
parents: 5661
diff changeset
    65
end;
4
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    66
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    67
bcbd7adb4e4b - set svn:eol-style to native
unc0rr
parents: 2
diff changeset
    68
end.