You can subscribe to this list here.
| 2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(5) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008 |
Jan
(90) |
Feb
(64) |
Mar
(11) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <bl...@us...> - 2008-03-14 10:08:56
|
Revision: 454
http://edu2.svn.sourceforge.net/edu2/?rev=454&view=rev
Author: blackhc
Date: 2008-03-14 03:08:38 -0700 (Fri, 14 Mar 2008)
Log Message:
-----------
Remove the skins zip again as we didn't use q3 models for demonstrations after all.
Update the credits a bit to include all external credits.
Modified Paths:
--------------
edu2/id1/nexuiz-credits.txt
Removed Paths:
-------------
edu2/id1/q3md3skins2dp.zip
Modified: edu2/id1/nexuiz-credits.txt
===================================================================
--- edu2/id1/nexuiz-credits.txt 2008-03-03 18:11:28 UTC (rev 453)
+++ edu2/id1/nexuiz-credits.txt 2008-03-14 10:08:38 UTC (rev 454)
@@ -1,5 +1,5 @@
**EDU 2
-
+** Misc (sorry but still haven't received any credits from Thorsten)
Lars Burkhardt
Wiebe F\xF6lster
Thomas Fraerks
@@ -16,9 +16,6 @@
Diana Zsch\xF6gener
-Jarno M\xFCller
-* to be removed
-
**Level Design
Sebastian Kratz
Tobias Seeber
@@ -41,6 +38,25 @@
(Prof.) Dr. J\xF6rg M\xFCller-Lietzkow
* Seminarleitung
+**Models and Other Resources
+
+* Neo
+Master X (Mar...@ho...)
+
+* Barbarella
+Eric Grotke (eg...@ya...)
+
+* Anthony
+Anthony Jun Hung Ng (an...@st...)
+
+* Ben
+Obi-Wan (ob...@ya...)
+
+* Tankgirl
+Kevin 'Rorshach' Johnstone (ror...@qu...)
+
+Additional SubGame Screenshots taken from Mini-Clip.Com.
+
**EDU 1
**Game Design:
Deleted: edu2/id1/q3md3skins2dp.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-03-03 18:12:06
|
Revision: 453
http://edu2.svn.sourceforge.net/edu2/?rev=453&view=rev
Author: blackhc
Date: 2008-03-03 10:11:28 -0800 (Mon, 03 Mar 2008)
Log Message:
-----------
Some fixes I used for the release but didnt come around to commit.
Modified Paths:
--------------
edu2/edu2-launcher.bat
install/compressdir.bat
install/gpl-2.0.txt
install/readme.txt
install/script.iss
Modified: edu2/edu2-launcher.bat
===================================================================
--- edu2/edu2-launcher.bat 2008-03-03 01:17:28 UTC (rev 452)
+++ edu2/edu2-launcher.bat 2008-03-03 18:11:28 UTC (rev 453)
@@ -32,6 +32,7 @@
@ipconfig
@echo .
@echo Broadcast one of the IPs above to others who want to connect to your servers
+@pause
@goto :eof
:remoteservers
Modified: install/compressdir.bat
===================================================================
--- install/compressdir.bat 2008-03-03 01:17:28 UTC (rev 452)
+++ install/compressdir.bat 2008-03-03 18:11:28 UTC (rev 453)
@@ -1,6 +1,7 @@
-cd "%1"
-7z a -tzip -mx7 -ir0!*.* "..\%2.pk3"
-cd ..
-rmdir "%1" /S /Q
-mkdir "%1"
-move "%2.pk3" "%1\"
+@cd "%1"
+@7z a -tzip -mx7 -ir0!*.* "..\%2.pk3"
+@cd ..
+@if not exist "%2.pk3" goto :eof
+@rmdir "%1" /S /Q
+@mkdir "%1"
+@move "%2.pk3" "%1\"
Modified: install/gpl-2.0.txt
===================================================================
--- install/gpl-2.0.txt 2008-03-03 01:17:28 UTC (rev 452)
+++ install/gpl-2.0.txt 2008-03-03 18:11:28 UTC (rev 453)
@@ -6,56 +6,6 @@
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
@@ -278,62 +228,3 @@
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
Modified: install/readme.txt
===================================================================
--- install/readme.txt 2008-03-03 01:17:28 UTC (rev 452)
+++ install/readme.txt 2008-03-03 18:11:28 UTC (rev 453)
@@ -1,5 +1,5 @@
If you simply want to get edu2p to run and do not want to enter the world of pain, use the Start Menu to start it or start it by executing edu2-launcher.bat or edu2-offline-launcher.bat.
-You'll see a console-window that gives you all possibly interesting configurations that you would want edu2p to run with.
+You'll see a console window that gives you all possibly interesting configurations that you would want edu2p to run with.
Simply select the one that fits your needs and it should run out of the box.
If you want to test it with others, make one computer the server (either dedicated or dedicated + client), and tell the others the IP that is printed after you start the game (in the Edu2 Launcher window). The others then can open a remote game and enter that IP and it will configure edu1 and edu2 to connect to your server when needed.
Modified: install/script.iss
===================================================================
--- install/script.iss 2008-03-03 01:17:28 UTC (rev 452)
+++ install/script.iss 2008-03-03 18:11:28 UTC (rev 453)
@@ -47,7 +47,7 @@
Source: D:\Edu2\install\build\edu2-launcher.bat; DestDir: {app}; Flags: ignoreversion
Source: D:\Edu2\install\build\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
-Source: readme.txt; DestDir: {app}; Flags: isreadme; Languages: ; Components:
+Source: readme.txt; DestDir: {app}; Languages: ; Components:
Source: edu2-offline-cache\*; DestDir: {app}\edu2-offline-cache; Flags: recursesubdirs ignoreversion; Components: " Offline_Cache"; Tasks: ; Languages:
Source: ..\offline\edu2-offline-launcher.bat; DestDir: {app}; Flags: ignoreversion; Components: Offline_Cache; Tasks:
Source: ..\edu2\edu1.exe; DestDir: {app}; Flags: ignoreversion
@@ -67,4 +67,4 @@
Name: {app}\*; Type: filesandordirs
[Types]
Name: onlineOnly; Description: Edu2 will only work properly with an Internet connection; Languages:
-Name: offlineSupport; Description: A webcache with required Internet content will be installed, too, allowing presentation of Edu2 without Internet access
+Name: offlineSupport; Description: A webcache with required Internet content will be installed, too; Languages:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-03-03 01:17:30
|
Revision: 452
http://edu2.svn.sourceforge.net/edu2/?rev=452&view=rev
Author: blackhc
Date: 2008-03-02 17:17:28 -0800 (Sun, 02 Mar 2008)
Log Message:
-----------
New offline web content.
Modified Paths:
--------------
offline/edu2-offline-cache.zip
Modified: offline/edu2-offline-cache.zip
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-03-03 01:16:28
|
Revision: 451
http://edu2.svn.sourceforge.net/edu2/?rev=451&view=rev
Author: blackhc
Date: 2008-03-02 17:16:24 -0800 (Sun, 02 Mar 2008)
Log Message:
-----------
Set cl_maxfps to 60 in attempt to fix a possible animation bug.
Modified Paths:
--------------
edu2/id1/default.cfg
Modified: edu2/id1/default.cfg
===================================================================
--- edu2/id1/default.cfg 2008-03-03 01:15:09 UTC (rev 450)
+++ edu2/id1/default.cfg 2008-03-03 01:16:24 UTC (rev 451)
@@ -795,3 +795,5 @@
set menu_skin edu2
set snd_speed 44100
+
+set cl_maxfps "60"
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-03-03 01:15:16
|
Revision: 450
http://edu2.svn.sourceforge.net/edu2/?rev=450&view=rev
Author: blackhc
Date: 2008-03-02 17:15:09 -0800 (Sun, 02 Mar 2008)
Log Message:
-----------
A last last-minute change to make it try to load joeys' URL correctly (- it points to an html).
Fix joeys' URL in map_16_02 (- add an .ent file for this).
Modified Paths:
--------------
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2/progs.dat
edu2/edu2/progs.lno
edu2/id1/qcsrc/common/gecko_navigateex.qc
edu2/id1/qcsrc/game/progs.src
Added Paths:
-----------
edu2/id1/maps/map_16_02.ent
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.lno
===================================================================
(Binary files differ)
Added: edu2/id1/maps/map_16_02.ent
===================================================================
--- edu2/id1/maps/map_16_02.ent (rev 0)
+++ edu2/id1/maps/map_16_02.ent 2008-03-03 01:15:09 UTC (rev 450)
@@ -0,0 +1,3678 @@
+{
+"classname" "worldspawn"
+"maxlevel" "5"
+"maxteams" "0"
+"_color" "1 0.8 0.8"
+"angles" "30 210"
+"ambient" "0.4 0.4 0.4"
+"noise" "E:/edu/data/sound/ambient/campus01.wav"
+"radius" "100"
+"light" "40"
+}
+{
+"classname" "info_null"
+"origin" "2140 825 391"
+"targetname" "neon2_1"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2108 921 391"
+"targetname" "neon2_6"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2124 873 385"
+"targetname" "neon2_4"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2124 185 401"
+"targetname" "neon2_16"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2108 233 407"
+"targetname" "neon2_17"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2140 137 407"
+"targetname" "neon2_15"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2124 377 401"
+"targetname" "neon2_19"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2108 425 407"
+"targetname" "neon2_20"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2140 329 407"
+"targetname" "neon2_18"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2124 681 401"
+"targetname" "neon2_22"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2108 729 407"
+"targetname" "neon2_26"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2140 633 407"
+"targetname" "neon2_21"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2124 -7 401"
+"targetname" "neon2_14"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2108 41 407"
+"targetname" "neon2_23"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2140 -55 407"
+"targetname" "neon2_2"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2124 -207 401"
+"targetname" "neon2_12"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2108 -159 407"
+"targetname" "neon2_13"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2140 -255 407"
+"targetname" "neon2_11"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-855 1928 385"
+"targetname" "neon2_33"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-807 1944 391"
+"targetname" "neon2_34"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1921 1060 391"
+"targetname" "neon2_46"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1825 1028 391"
+"targetname" "neon2_44"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "2025 1028 391"
+"targetname" "neon2_37"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "2121 1060 391"
+"targetname" "neon2_48"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "2073 1044 385"
+"targetname" "neon2_47"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "1148 1463 385"
+"targetname" "neon2_39"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1164 1415 391"
+"targetname" "neon2_40"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1132 1511 391"
+"targetname" "neon2_38"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1681 1044 385"
+"targetname" "neon2_42"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1729 1060 391"
+"targetname" "neon2_43"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1633 1028 391"
+"targetname" "neon2_41"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1873 1044 385"
+"targetname" "neon2_45"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "886 2061 391"
+"targetname" "neon2_58"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "790 2029 391"
+"targetname" "neon2_56"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1057 1612 391"
+"targetname" "neon2_49"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "1153 1644 391"
+"targetname" "neon2_60"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "1105 1628 385"
+"targetname" "neon2_59"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "521 1628 385"
+"targetname" "neon2_51"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "569 1644 391"
+"targetname" "neon2_52"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "473 1612 391"
+"targetname" "neon2_50"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "713 1628 385"
+"targetname" "neon2_54"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "761 1644 391"
+"targetname" "neon2_55"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "665 1612 391"
+"targetname" "neon2_53"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "838 2045 385"
+"targetname" "neon2_57"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "153 1644 391"
+"targetname" "neon2_70"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "57 1612 391"
+"targetname" "neon2_68"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "257 1612 391"
+"targetname" "neon2_61"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "353 1644 391"
+"targetname" "neon2_72"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "305 1628 385"
+"targetname" "neon2_71"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-279 1628 385"
+"targetname" "neon2_63"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-231 1644 391"
+"targetname" "neon2_64"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-327 1612 391"
+"targetname" "neon2_62"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-87 1628 385"
+"targetname" "neon2_66"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-39 1644 391"
+"targetname" "neon2_67"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-135 1612 391"
+"targetname" "neon2_65"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "105 1628 385"
+"targetname" "neon2_69"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-631 1644 391"
+"targetname" "neon2_82"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-727 1612 391"
+"targetname" "neon2_80"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-527 1612 391"
+"targetname" "neon2_73"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-431 1644 391"
+"targetname" "neon2_84"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-479 1628 385"
+"targetname" "neon2_83"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1063 1628 385"
+"targetname" "neon2_75"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1015 1644 391"
+"targetname" "neon2_76"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1111 1612 391"
+"targetname" "neon2_74"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-871 1628 385"
+"targetname" "neon2_78"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-823 1644 391"
+"targetname" "neon2_79"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-919 1612 391"
+"targetname" "neon2_77"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-679 1628 385"
+"targetname" "neon2_81"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1847 1628 385"
+"targetname" "neon2_87"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1799 1644 391"
+"targetname" "neon2_88"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1895 1612 391"
+"targetname" "neon2_86"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1632 1039 391"
+"targetname" "neon2_106"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1664 1135 391"
+"targetname" "neon2_104"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1473 1128 385"
+"targetname" "neon2_102"
+"light" "20"
+"radius" "180"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1521 1112 391"
+"targetname" "neon2_103"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1425 1144 391"
+"targetname" "neon2_101"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1648 1087 385"
+"targetname" "neon2_105"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1648 -449 385"
+"targetname" "neon2_111"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1632 -497 391"
+"targetname" "neon2_112"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1664 -401 391"
+"targetname" "neon2_110"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-209 1096 391"
+"targetname" "neon2_136"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-113 1128 391"
+"targetname" "neon2_134"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-401 1096 391"
+"targetname" "neon2_139"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-305 1128 391"
+"targetname" "neon2_137"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-903 1912 391"
+"targetname" "neon2_140"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-697 1344 391"
+"targetname" "neon2_159"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "-793 1312 391"
+"targetname" "neon2_170"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "-209 1312 391"
+"targetname" "neon2_162"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-113 1344 391"
+"targetname" "neon2_160"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-593 1312 391"
+"targetname" "neon2_172"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-401 1312 391"
+"targetname" "neon2_165"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-305 1344 391"
+"targetname" "neon2_163"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-497 1344 391"
+"targetname" "neon2_166"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-697 1128 391"
+"targetname" "neon2_173"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "-793 1096 391"
+"targetname" "neon2_178"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "-593 1096 391"
+"targetname" "neon2_180"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-497 1128 391"
+"targetname" "neon2_174"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1136 1431 385"
+"targetname" "neon2_193"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1120 1383 391"
+"targetname" "neon2_194"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1152 1479 391"
+"targetname" "neon2_192"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1136 1223 385"
+"targetname" "neon2_196"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1120 1175 391"
+"targetname" "neon2_197"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1152 1271 391"
+"targetname" "neon2_195"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1265 1128 385"
+"targetname" "neon2_199"
+"light" "20"
+"radius" "180"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1313 1112 391"
+"targetname" "neon2_200"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1217 1144 391"
+"targetname" "neon2_198"
+"light" "35"
+"radius" "100"
+"angle" "90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1489 1044 385"
+"targetname" "neon2_25"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1537 1060 391"
+"targetname" "neon2_27"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1441 1028 391"
+"targetname" "neon2_24"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1297 1044 385"
+"targetname" "neon2_29"
+"light" "20"
+"radius" "180"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1345 1060 391"
+"targetname" "neon2_30"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1249 1028 391"
+"targetname" "neon2_28"
+"light" "35"
+"radius" "100"
+"angle" "-90"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1148 1047 385"
+"targetname" "neon2_32"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1164 999 391"
+"targetname" "neon2_35"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1132 1095 391"
+"targetname" "neon2_31"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1148 1255 385"
+"targetname" "neon2_133"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1164 1207 391"
+"targetname" "neon2_143"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "1132 1303 391"
+"targetname" "neon2_36"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1664 935 391"
+"targetname" "neon2_202"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1632 839 391"
+"targetname" "neon2_201"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1648 887 385"
+"targetname" "neon2_144"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1208 479 391"
+"targetname" "neon2_211"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1176 383 391"
+"targetname" "neon2_207"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1192 431 385"
+"targetname" "neon2_206"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1208 687 391"
+"targetname" "neon2_210"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1192 639 385"
+"targetname" "neon2_208"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1176 591 391"
+"targetname" "neon2_209"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1208 63 391"
+"targetname" "neon2_217"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1176 -33 391"
+"targetname" "neon2_213"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1192 15 385"
+"targetname" "neon2_212"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1208 271 391"
+"targetname" "neon2_216"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1192 223 385"
+"targetname" "neon2_214"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1176 175 391"
+"targetname" "neon2_215"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1208 -353 391"
+"targetname" "neon2_223"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1176 -449 391"
+"targetname" "neon2_219"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1192 -401 385"
+"targetname" "neon2_218"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1208 -145 391"
+"targetname" "neon2_222"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1192 -193 385"
+"targetname" "neon2_220"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1176 -241 391"
+"targetname" "neon2_221"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1208 -577 391"
+"targetname" "neon2_205"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-748 1176 145"
+"targetname" "neo5"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-732 1128 151"
+"targetname" "neo4"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-764 1224 151"
+"targetname" "neo6"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1528 912 145"
+"targetname" "neo23"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+}
+{
+"classname" "info_null"
+"origin" "-1544 960 151"
+"targetname" "neo22"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+}
+{
+"classname" "info_null"
+"origin" "-1512 864 151"
+"targetname" "neo24"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+}
+{
+"classname" "info_null"
+"origin" "-1528 1292 145"
+"targetname" "neo26"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1480 1308 151"
+"targetname" "neo25"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1576 1276 151"
+"targetname" "neo27"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1332 1292 145"
+"targetname" "neo29"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1284 1308 151"
+"targetname" "neo28"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1380 1276 151"
+"targetname" "neo30"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1140 1292 145"
+"targetname" "neo32"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1092 1308 151"
+"targetname" "neo31"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1188 1276 151"
+"targetname" "neo33"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1188 1076 151"
+"targetname" "neo43"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1092 1108 151"
+"targetname" "neo41"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1140 1092 145"
+"targetname" "neo42"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1380 1076 151"
+"targetname" "neo40"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1284 1108 151"
+"targetname" "neo38"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1332 1092 145"
+"targetname" "neo39"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1576 1076 151"
+"targetname" "neo37"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1480 1108 151"
+"targetname" "neo35"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-1528 1092 145"
+"targetname" "neo36"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-924 1092 145"
+"targetname" "neo45"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-876 1108 151"
+"targetname" "neo44"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-972 1076 151"
+"targetname" "neo46"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-192 1184 80"
+"targetname" "mens1"
+"radius" "100"
+}
+{
+"classname" "info_null"
+"origin" "688 1184 80"
+"targetname" "mens6"
+"radius" "100"
+}
+{
+"classname" "info_null"
+"origin" "472 1184 80"
+"targetname" "mens7"
+"radius" "100"
+}
+{
+"classname" "info_null"
+"origin" "272 1184 80"
+"targetname" "mens8"
+"radius" "100"
+}
+{
+"classname" "info_null"
+"origin" "72 1184 80"
+"targetname" "mens9"
+"radius" "100"
+}
+{
+"classname" "info_null"
+"origin" "-1648 -641 385"
+"targetname" "neon2_114"
+"light" "20"
+"radius" "180"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1632 -689 391"
+"targetname" "neon2_115"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1664 -593 391"
+"targetname" "neon2_113"
+"light" "35"
+"radius" "100"
+"angle" "180"
+"_color" "1 0.998428 0.97438"
+}
+{
+"classname" "info_null"
+"origin" "-1176 -673 391"
+"targetname" "neon2_204"
+"light" "35"
+"radius" "100"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1192 -625 385"
+"targetname" "neon2_203"
+"light" "20"
+"radius" "180"
+"_color" "1 0.998428 0.97438"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "-1664 -824 135"
+"targetname" "neo19"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+}
+{
+"classname" "info_null"
+"origin" "-924 1292 145"
+"targetname" "neo47"
+"light" "20"
+"radius" "180"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-876 1308 151"
+"targetname" "neo34"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-972 1276 151"
+"targetname" "neo48"
+"light" "35"
+"radius" "100"
+"_color" "1 0.997223 0.970871"
+"angle" "-90"
+}
+{
+"classname" "info_null"
+"origin" "-440 -848 320"
+"targetname" "info_null1"
+}
+{
+"classname" "info_null"
+"origin" "-336 -944 320"
+"targetname" "info_null2"
+}
+{
+"classname" "info_null"
+"origin" "-336 -736 320"
+"targetname" "info_null4"
+}
+{
+"classname" "info_null"
+"origin" "-232 -848 320"
+"targetname" "info_null6"
+}
+{
+"classname" "info_null"
+"origin" "-232 -848 320"
+"targetname" "info_null7"
+}
+{
+"classname" "info_null"
+"origin" "272 -993 142"
+"targetname" "neons39"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "240 -897 142"
+"targetname" "neons41"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "256 -945 136"
+"targetname" "neons40"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1024 -1745 143"
+"targetname" "neons42"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1024 -1649 143"
+"targetname" "neons45"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1024 -1697 137"
+"targetname" "neons43"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "272 -1377 142"
+"targetname" "neons46"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "240 -1281 142"
+"targetname" "neons48"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "256 -1329 136"
+"targetname" "neons47"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "272 -1185 142"
+"targetname" "neons22"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "240 -1089 142"
+"targetname" "neons44"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "256 -1137 136"
+"targetname" "neons33"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "912 -945 359"
+"targetname" "neons55"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "880 -849 359"
+"targetname" "neons76"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "896 -897 353"
+"targetname" "neons66"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1320 -945 359"
+"targetname" "neons87"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1288 -849 359"
+"targetname" "neons148"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1304 -897 353"
+"targetname" "neons98"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1424 -945 359"
+"targetname" "neons23"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1392 -849 359"
+"targetname" "neons25"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1408 -897 353"
+"targetname" "neons24"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "800 -1689 337"
+"targetname" "neons27"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1456 -1745 143"
+"targetname" "neons29"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1424 -1649 143"
+"targetname" "neons31"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1440 -1697 137"
+"targetname" "neons30"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1336 -1745 143"
+"targetname" "neons32"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1336 -1649 143"
+"targetname" "neons35"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1336 -1697 137"
+"targetname" "neons34"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1232 -1745 143"
+"targetname" "neons62"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1232 -1649 143"
+"targetname" "neons64"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1232 -1697 137"
+"targetname" "neons63"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1128 -1745 143"
+"targetname" "neons65"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1128 -1649 143"
+"targetname" "neons68"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1128 -1697 137"
+"targetname" "neons67"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1424 -945 143"
+"targetname" "neons69"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1768 -1743 143"
+"targetname" "neons73"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "-1.40334e-014"
+}
+{
+"classname" "info_null"
+"origin" "1752 -1695 137"
+"targetname" "neons72"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "-1.40334e-014"
+}
+{
+"classname" "info_null"
+"origin" "1736 -1647 143"
+"targetname" "neons71"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "-1.40334e-014"
+}
+{
+"classname" "info_null"
+"origin" "1408 -897 137"
+"targetname" "neons70"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1288 -849 143"
+"targetname" "neons80"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1304 -897 137"
+"targetname" "neons79"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1320 -945 143"
+"targetname" "neons78"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1184 -849 143"
+"targetname" "neons77"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1200 -897 137"
+"targetname" "neons75"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1216 -945 143"
+"targetname" "neons74"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1498 -849 359"
+"targetname" "neons83"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1514 -897 353"
+"targetname" "neons82"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1530 -945 359"
+"targetname" "neons81"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1600 -849 359"
+"targetname" "neons86"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1616 -897 353"
+"targetname" "neons85"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1632 -945 359"
+"targetname" "neons84"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1792 -849 343"
+"targetname" "neons90"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1808 -897 337"
+"targetname" "neons89"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1824 -945 343"
+"targetname" "neons88"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1792 -1177 343"
+"targetname" "neons93"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1808 -1225 337"
+"targetname" "neons92"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1824 -1273 343"
+"targetname" "neons91"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1792 -1377 343"
+"targetname" "neons96"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1808 -1425 337"
+"targetname" "neons95"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1824 -1473 343"
+"targetname" "neons94"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "816 -1737 343"
+"targetname" "neons97"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1512 -897 137"
+"targetname" "neons141"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1496 -849 143"
+"targetname" "neons142"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1528 -945 143"
+"targetname" "neons140"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1727 -896 137"
+"targetname" "neons144"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1775 -880 143"
+"targetname" "neons145"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1679 -912 143"
+"targetname" "neons143"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1560 -1695 137"
+"targetname" "neons147"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "-1.40334e-014"
+}
+{
+"classname" "info_null"
+"origin" "1576 -1743 143"
+"targetname" "neons149"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "-1.40334e-014"
+}
+{
+"classname" "info_null"
+"origin" "1544 -1647 143"
+"targetname" "neons146"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "-1.40334e-014"
+}
+{
+"classname" "info_null"
+"origin" "784 -1641 343"
+"targetname" "neons152"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1808 -1625 337"
+"targetname" "neons155"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1792 -1577 343"
+"targetname" "neons100"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1824 -1673 343"
+"targetname" "neons157"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "960 -1625 353"
+"targetname" "neons101"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "944 -1577 359"
+"targetname" "neons105"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "976 -1673 359"
+"targetname" "neons103"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1496 -1625 337"
+"targetname" "neons104"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1480 -1577 343"
+"targetname" "neons107"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1640 -1577 359"
+"targetname" "neons102"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1656 -1625 353"
+"targetname" "neons156"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1672 -1673 359"
+"targetname" "neons158"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1512 -1673 343"
+"targetname" "neons106"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1128 -1625 337"
+"targetname" "neons111"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1280 -1577 359"
+"targetname" "neons110"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1296 -1625 353"
+"targetname" "neons108"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1312 -1673 359"
+"targetname" "neons109"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1144 -1673 343"
+"targetname" "neons112"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1128 -1625 337"
+"targetname" "neons117"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1280 -1577 359"
+"targetname" "neons116"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1296 -1625 353"
+"targetname" "neons114"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1312 -1673 359"
+"targetname" "neons115"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1144 -1673 343"
+"targetname" "neons118"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1112 -1585 343"
+"targetname" "neons113"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1216 -945 359"
+"targetname" "neons26"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1184 -849 359"
+"targetname" "neons99"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1200 -897 353"
+"targetname" "neons28"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1551 -1080 359"
+"targetname" "neons139"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1647 -1048 359"
+"targetname" "neons151"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1599 -1064 353"
+"targetname" "neons150"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1080 -945 359"
+"targetname" "neons153"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+"target" "nu1"
+}
+{
+"classname" "info_null"
+"origin" "1048 -849 359"
+"targetname" "neons120"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "1064 -897 353"
+"targetname" "neons154"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+}
+{
+"classname" "info_null"
+"origin" "951 -1080 143"
+"targetname" "neons121"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1047 -1048 143"
+"targetname" "neons123"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "999 -1064 137"
+"targetname" "neons122"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1175 -1080 143"
+"targetname" "neons124"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1271 -1048 143"
+"targetname" "neons126"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1223 -1064 137"
+"targetname" "neons125"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1351 -1080 143"
+"targetname" "neons127"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1447 -1048 143"
+"targetname" "neons129"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1399 -1064 137"
+"targetname" "neons128"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1399 -1064 353"
+"targetname" "neons137"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1175 -1080 359"
+"targetname" "neons133"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "999 -1064 353"
+"targetname" "neons131"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1271 -1048 359"
+"targetname" "neons135"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1447 -1048 359"
+"targetname" "neons138"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1047 -1048 359"
+"targetname" "neons132"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "951 -1080 359"
+"targetname" "neons130"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1223 -1064 353"
+"targetname" "neons134"
+"light" "20"
+"radius" "180"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1351 -1080 359"
+"targetname" "neons136"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "90"
+}
+{
+"classname" "info_null"
+"origin" "1392 -849 143"
+"targetname" "nu2"
+"light" "35"
+"radius" "100"
+"_color" "1 0.996368 0.972549"
+"angle" "180"
+"target" "nu2"
+}
+{
+"classname" "item_papers"
+"origin" "1728 -848 16"
+"angle" "-90.2191"
+"target" "trigger_multiple2"
+}
+{
+"classname" "item_chalks"
+"origin" "-1496 -752 120"
+"targetname" "item_chalks1"
+}
+{
+"classname" "item_sponges"
+"origin" "-488 1392 51"
+"targetname" "item_sponges2"
+}
+{
+"classname" "target_speaker"
+"origin" "-184 1304 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-192 2056 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-424 2104 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-408 1832 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-176 1832 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "136 2064 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "136 1832 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "512 1936 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "928 1960 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "792 1800 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "944 1536 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "944 1256 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "696 984 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "512 1288 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "376 1080 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "136 840 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "56 1096 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "40 1312 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-432 1440 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-464 1160 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-472 848 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-424 1560 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "48 1584 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "488 1648 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "256 1304 -72"
+"noise" "sound/ambient/UG_mensa.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1960 272 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1952 -264 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1728 0 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1416 -208 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1424 288 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1672 592 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1304 704 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1120 408 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1112 16 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1104 -432 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1384 -672 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1672 -496 8"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1544 912 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1592 1184 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1096 1112 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1592 1560 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1240 1496 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-712 1584 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1304 1328 -80"
+"noise" "sound/ambient/UG_toilette.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1096 1856 -72"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1816 1896 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1496 1624 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1912 1424 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1920 968 -40"
+"noise" "sound/ambient/UG_HS.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1208 392 56"
+"noise" "sound/ambient/OG_flur_raum_atmo.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1584 1328 -80"
+"noise" "sound/ambient/UG_toilette.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1192 -1280 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1704 -952 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1832 -1224 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1888 -1680 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1432 -1680 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1120 -1704 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "408 -1504 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "912 -1408 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "456 -864 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1088 -872 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1408 -960 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1072 -1088 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "1424 -1368 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "560 -1272 16"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "240 -1040 16"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1680 -1000 -40"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1480 -1152 -40"
+"noise" "sound/ambient/UG_rauschen.wav"
+"spawnflags" "1"
+}
+{
+"classname" "target_speaker"
+"origin" "-1264 -696 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-1248 632 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-1264 0 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-1432 -448 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-1696 784 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-1440 360 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-1464 -8 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-1712 -232 312"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "560 -1232 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "552 -944 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "-992 0 -40"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_wind.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1744 -1112 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1408 -896 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1776 -1328 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1784 -1672 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1312 -1776 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1312 -1368 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "864 -1720 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "496 -1456 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1040 -1112 368"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_raumrauschen.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1976 -584 496"
+"spawnflags" "1"
+"noise" "sound/ambient/UG_toilette.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1704 -368 432"
+"spawnflags" "1"
+"noise" "sound/ambient/OG_flur_atmo.wav"
+}
+{
+"classname" "target_speaker"
+"origin" "1240 -264 432"
+"spawnflags" "1"
+"noise" "sound/...
[truncated message content] |
|
From: <bl...@us...> - 2008-03-01 23:49:54
|
Revision: 449
http://edu2.svn.sourceforge.net/edu2/?rev=449&view=rev
Author: blackhc
Date: 2008-03-01 15:49:51 -0800 (Sat, 01 Mar 2008)
Log Message:
-----------
Woops, forgot to commit loadfonts.cfg.
Start work on the credits.
Fix a typo in edu2-offline-launcher.bat.
Add a first version of an Inno installer script for edu2.
Modified Paths:
--------------
edu2/id1/nexuiz-credits.txt
offline/edu2-offline-launcher.bat
Added Paths:
-----------
edu2/edu2/loadfonts.cfg
install/
install/WizModernSmallImage-Edu.bmp
install/compressdir.bat
install/edu2-offline-cache/
install/exportedu2build.bat
install/gpl-2.0.txt
install/normalbackground.bmp
install/readme.txt
install/script.iss
install/setup/
Added: edu2/edu2/loadfonts.cfg
===================================================================
--- edu2/edu2/loadfonts.cfg (rev 0)
+++ edu2/edu2/loadfonts.cfg 2008-03-01 23:49:51 UTC (rev 449)
@@ -0,0 +1,9 @@
+loadfont console gfx/font_user0
+loadfont sbar gfx/font_user0
+loadfont notify gfx/font_user0
+loadfont chat gfx/font_user0
+loadfont centerprint gfx/font_user0
+loadfont infobar gfx/font_user0
+loadfont menu gfx/vera-sans
+loadfont user0 gfx/font_user0
+
Modified: edu2/id1/nexuiz-credits.txt
===================================================================
--- edu2/id1/nexuiz-credits.txt 2008-03-01 20:38:52 UTC (rev 448)
+++ edu2/id1/nexuiz-credits.txt 2008-03-01 23:49:51 UTC (rev 449)
@@ -1,6 +1,114 @@
+**EDU 2
+
+Lars Burkhardt
+Wiebe F\xF6lster
+Thomas Fraerks
+
+Katrin Kimpfbeck
+Alexander Koehler
+Franziska Lehnert
+Ji Li
+Michael Moers
+Steve Schenzel
+Martin Schneider
+
+Marc Skudlabski
+
+Diana Zsch\xF6gener
+
+Jarno M\xFCller
+* to be removed
+
+**Level Design
+Sebastian Kratz
+Tobias Seeber
+Frank Wagner
+
+**Web
+Thomas Holbach
+* Design & Content: Wiki, Campus
+
+** Programming
+Andreas Kirsch
+* Lead Code Monkey
+Frank Richter
+* Programmer and 3rd-party expert
+
+** Project Leads:
+Thorsten Fl\xFCgel
+* Producer
+
+(Prof.) Dr. J\xF6rg M\xFCller-Lietzkow
+* Seminarleitung
+
+**EDU 1
+
+**Game Design:
+Peter Fey
+Alexander K\xF6hler
+Wiebe F\xF6lster
+Denise Urbach
+Alex Paulski
+
+**Editoren:
+Thorsten Fl\xFCgel
+Sebastian Kratz
+Tobias Seeber
+Ji Li
+Frank Wagner
+Martin Schneider
+
+**Texturen und Modelle:
+Grit Tirian
+Jakob Maier
+Florian Jurig
+Torsten Felix
+Julia Bierau
+Constance Hennig
+Thomas Jahn
+Diana Zsch\xF6gener
+
+**Sound und Musik:
+Michael Moers
+Fabian Ruckteschler
+
+**Content:
+Franziska Lehnert
+Steve Schenzel
+Stefanie Haupt
+Katrin Kimpfbeck
+Lars Burkhardt
+Christoph Matiss
+Daniel Ma\xDFberg
+Sebastian Schieweck
+
+**Dokumentation und \xD6ffentlichkeitsarbeit:
+Franziska Lehnert
+Daniel Wodniczak
+Andreas FJ Waidosch
+
+**Programmierung:
+Frank Richter
+
+**Producer:
+Thorsten Fl\xFCgel
+
+**Gesamtmanagement:
+Dr. J\xF6rg M\xFCller- Lietzkow (a.k.a Masterchief)
+
+*Entstanden im Rahmen eines Seminars
+*an der Friedrich-Schiller-Universit\xE4t Jena
+*Fakult\xE4t f\xFCr Sozial- und Verhaltenswissenschaften
+*Bereich Medienwissenschaft
+*Arbeitsfeld Kommunikationswissenschaft
+*Sommersemester 2007
+
+*Basiert auf und benutzt
+*Nexuiz von Alientrap
+*www.nexuiz.org www.alientrag.org
+
**Team:
-
Lee Vermeulen
*Project Founder and Co-Designer
Added: install/WizModernSmallImage-Edu.bmp
===================================================================
(Binary files differ)
Property changes on: install/WizModernSmallImage-Edu.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: install/compressdir.bat
===================================================================
--- install/compressdir.bat (rev 0)
+++ install/compressdir.bat 2008-03-01 23:49:51 UTC (rev 449)
@@ -0,0 +1,6 @@
+cd "%1"
+7z a -tzip -mx7 -ir0!*.* "..\%2.pk3"
+cd ..
+rmdir "%1" /S /Q
+mkdir "%1"
+move "%2.pk3" "%1\"
Added: install/exportedu2build.bat
===================================================================
--- install/exportedu2build.bat (rev 0)
+++ install/exportedu2build.bat 2008-03-01 23:49:51 UTC (rev 449)
@@ -0,0 +1,2 @@
+rmdir /S /Q build
+svn export ..\edu2 build
\ No newline at end of file
Added: install/gpl-2.0.txt
===================================================================
--- install/gpl-2.0.txt (rev 0)
+++ install/gpl-2.0.txt 2008-03-01 23:49:51 UTC (rev 449)
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
Added: install/normalbackground.bmp
===================================================================
(Binary files differ)
Property changes on: install/normalbackground.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: install/readme.txt
===================================================================
--- install/readme.txt (rev 0)
+++ install/readme.txt 2008-03-01 23:49:51 UTC (rev 449)
@@ -0,0 +1,8 @@
+If you simply want to get edu2p to run and do not want to enter the world of pain, use the Start Menu to start it or start it by executing edu2-launcher.bat or edu2-offline-launcher.bat.
+You'll see a console-window that gives you all possibly interesting configurations that you would want edu2p to run with.
+Simply select the one that fits your needs and it should run out of the box.
+If you want to test it with others, make one computer the server (either dedicated or dedicated + client), and tell the others the IP that is printed after you start the game (in the Edu2 Launcher window). The others then can open a remote game and enter that IP and it will configure edu1 and edu2 to connect to your server when needed.
+
+If you don't have internet access, you want to use edu2-offline-launcher.bat (if installed) which contains a cache for the websites that are opened in edu2 by default.
+
+Andreas Kirsch, 2008
\ No newline at end of file
Added: install/script.iss
===================================================================
--- install/script.iss (rev 0)
+++ install/script.iss 2008-03-01 23:49:51 UTC (rev 449)
@@ -0,0 +1,70 @@
+; Script generated by the Inno Setup Script Wizard.
+; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
+
+#define MyAppName "Edu2 Prototype"
+#define MyOfflineAppName "Edu2 Prototype - Offline Mode"
+#define MyAppVerName "Edu2 Prototype"
+#define MyAppPublisher "Uni Jena & TU M\xFCnchen"
+#define MyAppURL "http://www.edu-shooter.de/"
+#define MyAppExeName "edu2-launcher.bat"
+#define MyOfflineAppExeName "edu2-offline-launcher.bat"
+
+[Setup]
+AppName={#MyAppName}
+AppVerName={#MyAppVerName}
+AppPublisher={#MyAppPublisher}
+AppPublisherURL={#MyAppURL}
+AppSupportURL={#MyAppURL}
+AppUpdatesURL={#MyAppURL}
+DefaultDirName={pf}\Edu2-Prototype
+DefaultGroupName={#MyAppName}
+AllowNoIcons=true
+LicenseFile=D:\Edu2\install\gpl-2.0.txt
+InfoAfterFile=D:\Edu2\install\readme.txt
+OutputDir=D:\Edu2\install\setup
+OutputBaseFilename=edu2p-setup
+SetupIconFile=D:\Edu2\edu1\darkplaces\trunk\edu.ico
+Compression=lzma
+SolidCompression=yes
+AppCopyright=Uni Jena, TU M\xFCnchen, AlienTrap & Darkplaces dev-team
+PrivilegesRequired=poweruser
+UninstallDisplayIcon={app}\edu1.exe
+DisableStartupPrompt=false
+WindowVisible=true
+BackColor=$f7d69d
+BackColor2=$da6118
+WizardImageBackColor=$948114
+WizardImageFile=D:\Edu2\install\normalbackground.bmp
+WizardSmallImageFile=D:\Edu2\install\WizModernSmallImage-Edu.bmp
+
+[Languages]
+Name: english; MessagesFile: compiler:Default.isl
+
+[Tasks]
+Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked
+
+[Files]
+Source: D:\Edu2\install\build\edu2-launcher.bat; DestDir: {app}; Flags: ignoreversion
+Source: D:\Edu2\install\build\*; DestDir: {app}; Flags: ignoreversion recursesubdirs createallsubdirs
+; NOTE: Don't use "Flags: ignoreversion" on any shared system files
+Source: readme.txt; DestDir: {app}; Flags: isreadme; Languages: ; Components:
+Source: edu2-offline-cache\*; DestDir: {app}\edu2-offline-cache; Flags: recursesubdirs ignoreversion; Components: " Offline_Cache"; Tasks: ; Languages:
+Source: ..\offline\edu2-offline-launcher.bat; DestDir: {app}; Flags: ignoreversion; Components: Offline_Cache; Tasks:
+Source: ..\edu2\edu1.exe; DestDir: {app}; Flags: ignoreversion
+
+[Icons]
+Name: {group}\{#MyAppName}; Filename: {app}\{#MyAppExeName}; WorkingDir: {app}; IconFilename: {app}\edu1.exe; IconIndex: 0; Components: ; Tasks: ; Languages:
+Name: {group}\{#MyOfflineAppName}; Filename: {app}\{#MyOfflineAppExeName}; WorkingDir: {app}; IconFilename: {app}\edu1.exe; IconIndex: 0; Components: Offline_cache; Tasks: ; Languages:
+Name: {group}\{cm:UninstallProgram,{#MyAppName}}; Filename: {uninstallexe}
+Name: {commondesktop}\{#MyAppName}; Filename: {app}\{#MyAppExeName}; Tasks: desktopicon; WorkingDir: {app}; IconFilename: {app}\edu1.exe; IconIndex: 0; Components:
+Name: {commondesktop}\{#MyOfflineAppName}; Filename: {app}\edu2-offline-launcher.bat; WorkingDir: {app}; IconFilename: {app}\edu1.exe; IconIndex: 0; Components: offline_cache; Tasks: desktopicon
+
+[Run]
+Filename: {app}\{#MyAppExeName}; Description: {cm:LaunchProgram,{#MyAppName}}; Flags: shellexec postinstall skipifsilent
+[Components]
+Name: Offline_Cache; Description: Installs a webcache that contains lots of websites to make edu2p run without internet, too.; Flags: fixed; Types: offlineSupport
+[UninstallDelete]
+Name: {app}\*; Type: filesandordirs
+[Types]
+Name: onlineOnly; Description: Edu2 will only work properly with an Internet connection; Languages:
+Name: offlineSupport; Description: A webcache with required Internet content will be installed, too, allowing presentation of Edu2 without Internet access
Modified: offline/edu2-offline-launcher.bat
===================================================================
--- offline/edu2-offline-launcher.bat 2008-03-01 20:38:52 UTC (rev 448)
+++ offline/edu2-offline-launcher.bat 2008-03-01 23:49:51 UTC (rev 449)
@@ -1,3 +1,3 @@
@echo Using '%CD%\edu2-offline-cache' as base path for the offline cache
@echo.
-@edu2-launcher.bat +set gecko_offline_basepath "%CD\edu2-offline-cache"
\ No newline at end of file
+@edu2-launcher.bat +set gecko_offline_basepath "%CD%\edu2-offline-cache"
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-03-01 20:38:54
|
Revision: 448
http://edu2.svn.sourceforge.net/edu2/?rev=448&view=rev
Author: blackhc
Date: 2008-03-01 12:38:52 -0800 (Sat, 01 Mar 2008)
Log Message:
-----------
Add an offline web cache for some of the web content used in edu2.
Also add a launcher batch file.
(Copy both to edu2/ and extract the .zip to set it up.)
Added Paths:
-----------
offline/
offline/edu2-offline-cache.zip
offline/edu2-offline-launcher.bat
Added: offline/edu2-offline-cache.zip
===================================================================
(Binary files differ)
Property changes on: offline/edu2-offline-cache.zip
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: offline/edu2-offline-launcher.bat
===================================================================
--- offline/edu2-offline-launcher.bat (rev 0)
+++ offline/edu2-offline-launcher.bat 2008-03-01 20:38:52 UTC (rev 448)
@@ -0,0 +1,3 @@
+@echo Using '%CD%\edu2-offline-cache' as base path for the offline cache
+@echo.
+@edu2-launcher.bat +set gecko_offline_basepath "%CD\edu2-offline-cache"
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-03-01 20:12:34
|
Revision: 447
http://edu2.svn.sourceforge.net/edu2/?rev=447&view=rev
Author: blackhc
Date: 2008-03-01 12:12:29 -0800 (Sat, 01 Mar 2008)
Log Message:
-----------
Disable the update notification for Nexuiz (tehee).
edu2-launcher.bat passes parameters on now.
Fix gecko_navigateex a bit.
Modified Paths:
--------------
edu2/_edu2_start.bat
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2-launcher.bat
edu2/id1/qcsrc/common/gecko_navigateex.qc
edu2/id1/qcsrc/menu/nexuiz/util.qc
Modified: edu2/_edu2_start.bat
===================================================================
--- edu2/_edu2_start.bat 2008-03-01 15:41:47 UTC (rev 446)
+++ edu2/_edu2_start.bat 2008-03-01 20:12:29 UTC (rev 447)
@@ -1,6 +1,6 @@
+@echo off
:eduloop
-@del edu2\da
-ta\edu1launch.txt
+@del edu2\data\edu1launch.txt
@call _start-edu2 %*
@if exist edu2\data\edu1launch.txt goto :launchedu1
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2-launcher.bat
===================================================================
--- edu2/edu2-launcher.bat 2008-03-01 15:41:47 UTC (rev 446)
+++ edu2/edu2-launcher.bat 2008-03-01 20:12:29 UTC (rev 447)
@@ -16,13 +16,13 @@
@goto :eof
:localclients
-@call _edu2_start +set edu1params "map $edu1map"
+@call _edu2_start +set edu1params "map $edu1map" %*
@goto :eof
:localservers
@call :dedicatedservers
-@_edu2_start +set edu1params "connect 127.0.0.1:26666" +set edu2logincommands "connect 127.0.0.1"
+@_edu2_start +set edu1params "connect 127.0.0.1:26666" +set edu2logincommands "connect 127.0.0.1" %*
@goto :eof
:dedicatedservers
@@ -43,6 +43,6 @@
@set SERVERIP
@echo.
-@_edu2_start +set edu1params "connect %SERVERIP%:26666" +set edu2logincommands "connect %SERVERIP%"
+@_edu2_start +set edu1params "connect %SERVERIP%:26666" +set edu2logincommands "connect %SERVERIP%" %*
@goto :eof
Modified: edu2/id1/qcsrc/common/gecko_navigateex.qc
===================================================================
--- edu2/id1/qcsrc/common/gecko_navigateex.qc 2008-03-01 15:41:47 UTC (rev 446)
+++ edu2/id1/qcsrc/common/gecko_navigateex.qc 2008-03-01 20:12:29 UTC (rev 447)
@@ -11,8 +11,10 @@
string lURI;
lURI = URL;
if( lOfflinePath != "" ) {
- lOfflinePath = strreplace( "/", "\\", lOfflinePath );
- lURI = strreplace( strcat( "file:///", lOfflinePath ), "http:/", lURI ); // only one / because the other one is used as dir separator
+ lOfflinePath = strreplace( "\\", "/", lOfflinePath );
+ lURI = strreplace( "http:/", strcat( "file:///", lOfflinePath ), lURI ); // only one / because the other one is used as dir separator
+ lURI = strcat( lURI, "/index.html" );
}
+ print( "NavigateEx to ", lURI, "\n" );
gecko_navigate( instanceName, lURI );
}
Modified: edu2/id1/qcsrc/menu/nexuiz/util.qc
===================================================================
--- edu2/id1/qcsrc/menu/nexuiz/util.qc 2008-03-01 15:41:47 UTC (rev 446)
+++ edu2/id1/qcsrc/menu/nexuiz/util.qc 2008-03-01 20:12:29 UTC (rev 447)
@@ -215,6 +215,7 @@
}
void preMenuDraw()
{
+ return;
vector fs, sz, line, mid;
Item_Nex_ExtResponseSystem_CheckForResponse();
if(!_Nex_ExtResponseSystem_VersionHandled)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-03-01 15:41:49
|
Revision: 446
http://edu2.svn.sourceforge.net/edu2/?rev=446&view=rev
Author: blackhc
Date: 2008-03-01 07:41:47 -0800 (Sat, 01 Mar 2008)
Log Message:
-----------
Add edu2-launcher.bat which offers a few choices to run edu2 for presentation purposes.
Add unescaped javascript code where its necessary as reference in case anyone wants to see how it works.
Reset XULRunner back to the previous version until Res and I find time to debug it properly.
Add gecko_navigateex which should allow us to use an offline cache transparently.
Modified Paths:
--------------
edu2/OffscreenGecko.dll
edu2/OffscreenGecko.pdb
edu2/edu1/quake.rc
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2/quake.rc
edu2/id1/qcsrc/cgame/progs.src
edu2/id1/qcsrc/common/geckoterminal.qc
edu2/id1/qcsrc/game/dpextensions.qc
edu2/id1/qcsrc/menu/edu2/dialog_login.c
edu2/id1/qcsrc/menu/edu2/dialog_logout.c
edu2/id1/qcsrc/menu/edu2/gamelist.c
edu2/id1/qcsrc/menu/item/gecko.c
edu2/id1/qcsrc/menu/progs.src
edu2/xulrunner-win32/AccessibleMarshal.dll
edu2/xulrunner-win32/IA2Marshal.dll
edu2/xulrunner-win32/README.txt
edu2/xulrunner-win32/chrome/classic.jar
edu2/xulrunner-win32/chrome/comm.jar
edu2/xulrunner-win32/chrome/en-US.jar
edu2/xulrunner-win32/chrome/pippki.jar
edu2/xulrunner-win32/chrome/toolkit.jar
edu2/xulrunner-win32/components/FeedProcessor.js
edu2/xulrunner-win32/components/accessibility.xpt
edu2/xulrunner-win32/components/autocomplete.xpt
edu2/xulrunner-win32/components/caps.xpt
edu2/xulrunner-win32/components/content_base.xpt
edu2/xulrunner-win32/components/contentprefs.xpt
edu2/xulrunner-win32/components/docshell_base.xpt
edu2/xulrunner-win32/components/dom_base.xpt
edu2/xulrunner-win32/components/dom_events.xpt
edu2/xulrunner-win32/components/dom_offline.xpt
edu2/xulrunner-win32/components/dom_storage.xpt
edu2/xulrunner-win32/components/dom_svg.xpt
edu2/xulrunner-win32/components/dom_xul.xpt
edu2/xulrunner-win32/components/downloads.xpt
edu2/xulrunner-win32/components/editor.xpt
edu2/xulrunner-win32/components/extensions.xpt
edu2/xulrunner-win32/components/exthandler.xpt
edu2/xulrunner-win32/components/imglib2.xpt
edu2/xulrunner-win32/components/inspector.xpt
edu2/xulrunner-win32/components/loginmgr.xpt
edu2/xulrunner-win32/components/necko.xpt
edu2/xulrunner-win32/components/necko_cache.xpt
edu2/xulrunner-win32/components/necko_dns.xpt
edu2/xulrunner-win32/components/nsBlocklistService.js
edu2/xulrunner-win32/components/nsContentDispatchChooser.js
edu2/xulrunner-win32/components/nsContentPrefService.js
edu2/xulrunner-win32/components/nsDownloadManagerUI.js
edu2/xulrunner-win32/components/nsExtensionManager.js
edu2/xulrunner-win32/components/nsHandlerService.js
edu2/xulrunner-win32/components/nsHelperAppDlg.js
edu2/xulrunner-win32/components/nsLivemarkService.js
edu2/xulrunner-win32/components/nsLoginInfo.js
edu2/xulrunner-win32/components/nsLoginManager.js
edu2/xulrunner-win32/components/nsLoginManagerPrompter.js
edu2/xulrunner-win32/components/nsTaggingService.js
edu2/xulrunner-win32/components/nsURLFormatter.js
edu2/xulrunner-win32/components/nsUpdateService.js
edu2/xulrunner-win32/components/pipnss.xpt
edu2/xulrunner-win32/components/places.xpt
edu2/xulrunner-win32/components/prefetch.xpt
edu2/xulrunner-win32/components/storage-Legacy.js
edu2/xulrunner-win32/components/storage.xpt
edu2/xulrunner-win32/components/txEXSLTRegExFunctions.js
edu2/xulrunner-win32/components/update.xpt
edu2/xulrunner-win32/components/widget.xpt
edu2/xulrunner-win32/components/windowds.xpt
edu2/xulrunner-win32/components/xpcom_io.xpt
edu2/xulrunner-win32/components/xpcom_system.xpt
edu2/xulrunner-win32/components/xpconnect.xpt
edu2/xulrunner-win32/components/xpinstall.xpt
edu2/xulrunner-win32/components/xultmpl.xpt
edu2/xulrunner-win32/crashreporter.exe
edu2/xulrunner-win32/crashreporter.ini
edu2/xulrunner-win32/dependentlibs.list
edu2/xulrunner-win32/dictionaries/en-US.aff
edu2/xulrunner-win32/dictionaries/en-US.dic
edu2/xulrunner-win32/freebl3.chk
edu2/xulrunner-win32/freebl3.dll
edu2/xulrunner-win32/greprefs/all.js
edu2/xulrunner-win32/javaxpcom.jar
edu2/xulrunner-win32/javaxpcomglue.dll
edu2/xulrunner-win32/js3250.dll
edu2/xulrunner-win32/modules/Microformats.js
edu2/xulrunner-win32/mozctl.dll
edu2/xulrunner-win32/mozctlx.dll
edu2/xulrunner-win32/nspr4.dll
edu2/xulrunner-win32/nss3.dll
edu2/xulrunner-win32/nssckbi.dll
edu2/xulrunner-win32/nssdbm3.dll
edu2/xulrunner-win32/platform.ini
edu2/xulrunner-win32/plc4.dll
edu2/xulrunner-win32/plds4.dll
edu2/xulrunner-win32/plugins/npnul32.dll
edu2/xulrunner-win32/res/arrow.gif
edu2/xulrunner-win32/res/arrowd.gif
edu2/xulrunner-win32/res/dtd/mathml.dtd
edu2/xulrunner-win32/res/entityTables/mathml20.properties
edu2/xulrunner-win32/res/fonts/mathfont.properties
edu2/xulrunner-win32/res/fonts/mathfontSTIXNonUnicode.properties
edu2/xulrunner-win32/res/forms.css
edu2/xulrunner-win32/res/html.css
edu2/xulrunner-win32/res/language.properties
edu2/xulrunner-win32/res/mathml.css
edu2/xulrunner-win32/res/table-add-column-after-active.gif
edu2/xulrunner-win32/res/table-add-column-before-active.gif
edu2/xulrunner-win32/res/table-add-row-after-active.gif
edu2/xulrunner-win32/res/table-add-row-before-active.gif
edu2/xulrunner-win32/smime3.dll
edu2/xulrunner-win32/softokn3.chk
edu2/xulrunner-win32/softokn3.dll
edu2/xulrunner-win32/sqlite3.dll
edu2/xulrunner-win32/ssl3.dll
edu2/xulrunner-win32/updater.exe
edu2/xulrunner-win32/xpcom.dll
edu2/xulrunner-win32/xpidl.exe
edu2/xulrunner-win32/xpt_dump.exe
edu2/xulrunner-win32/xpt_link.exe
edu2/xulrunner-win32/xul.dll
edu2/xulrunner-win32/xulrunner-stub.exe
edu2/xulrunner-win32/xulrunner.exe
Added Paths:
-----------
edu2/_edu2_start.bat
edu2/_start-edu1-server.bat
edu2/_start-edu1.bat
edu2/_start-edu2-server.bat
edu2/_start-edu2.bat
edu2/edu2-launcher.bat
edu2/id1/qcsrc/common/gecko_navigateex.qc
edu2/id1/web/facebookscripts.txt
Removed Paths:
-------------
edu2/edu2_start.bat
edu2/start-edu1-server.bat
edu2/start-edu1.bat
edu2/start-edu2-server.bat
edu2/start-edu2.bat
Modified: edu2/OffscreenGecko.dll
===================================================================
(Binary files differ)
Modified: edu2/OffscreenGecko.pdb
===================================================================
(Binary files differ)
Copied: edu2/_edu2_start.bat (from rev 444, edu2/edu2_start.bat)
===================================================================
--- edu2/_edu2_start.bat (rev 0)
+++ edu2/_edu2_start.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1,16 @@
+:eduloop
+@del edu2\da
+ta\edu1launch.txt
+@call _start-edu2 %*
+
+@if exist edu2\data\edu1launch.txt goto :launchedu1
+
+@goto :eof
+:launchedu1
+@copy edu2\data\edu1launch.txt edu1\autoexec.cfg /Y
+@del edu2\data\edu1launch.txt
+@call _start-edu1
+@del edu1\autoexec.cfg
+@goto :eduloop
+
+
Copied: edu2/_start-edu1-server.bat (from rev 442, edu2/start-edu1-server.bat)
===================================================================
--- edu2/_start-edu1-server.bat (rev 0)
+++ edu2/_start-edu1-server.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1,2 @@
+@title Edu1 Dedicated Server - simply close or type 'quit' into the console to exit
+@edu1-dedicated.exe -game edu1 -port 26666 +set sv_public 1 +map level1
\ No newline at end of file
Copied: edu2/_start-edu1.bat (from rev 444, edu2/start-edu1.bat)
===================================================================
--- edu2/_start-edu1.bat (rev 0)
+++ edu2/_start-edu1.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1 @@
+@edu1 -game edu1 %*
Copied: edu2/_start-edu2-server.bat (from rev 443, edu2/start-edu2-server.bat)
===================================================================
--- edu2/_start-edu2-server.bat (rev 0)
+++ edu2/_start-edu2-server.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1,2 @@
+@title Edu2 Dedicated Server - simply close or type 'quit' into the console to exit
+@edu2p-dedicated.exe -game edu2 -port 26000 +set sv_public 1 +map $edu2map
\ No newline at end of file
Copied: edu2/_start-edu2.bat (from rev 444, edu2/start-edu2.bat)
===================================================================
--- edu2/_start-edu2.bat (rev 0)
+++ edu2/_start-edu2.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1 @@
+@edu2p -game edu2 %*
Modified: edu2/edu1/quake.rc
===================================================================
--- edu2/edu1/quake.rc 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/edu1/quake.rc 2008-03-01 15:41:47 UTC (rev 446)
@@ -1,4 +1,5 @@
maxplayers 10
+set edu1map "level1"
exec default.cfg
exec config.cfg
exec autoexec.cfg
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/quake.rc
===================================================================
--- edu2/edu2/quake.rc 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/edu2/quake.rc 2008-03-01 15:41:47 UTC (rev 446)
@@ -1,5 +1,5 @@
-//set edu2map map_16_02
-set edu2map test
+set edu2map map_16_02
+//set edu2map test
// set maxplayers here
maxplayers 64
Added: edu2/edu2-launcher.bat
===================================================================
--- edu2/edu2-launcher.bat (rev 0)
+++ edu2/edu2-launcher.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1,48 @@
+@title Edu2 Launcher
+@echo Options:
+@echo.
+@echo L: start locally (no dedicated server)
+@echo M: start dedicated servers and connect to it on login in the client
+@echo D: start dedicated servers only and wait for remote users
+@echo R: use a remote server for logins (and edu1)
+@echo.
+@choice /C LMDR /M "Your choice:"
+@if ERRORLEVEL 4 goto :remoteservers
+@if ERRORLEVEL 3 goto :dedicatedservers
+@if ERRORLEVEL 2 goto :localservers
+@if ERRORLEVEL 1 goto :localclients
+
+@echo Bad choice.
+@goto :eof
+
+:localclients
+@call _edu2_start +set edu1params "map $edu1map"
+@goto :eof
+
+:localservers
+@call :dedicatedservers
+
+@_edu2_start +set edu1params "connect 127.0.0.1:26666" +set edu2logincommands "connect 127.0.0.1"
+@goto :eof
+
+:dedicatedservers
+@start _start-edu1-server.bat
+@start _start-edu2-server.bat
+
+@ipconfig
+@echo .
+@echo Broadcast one of the IPs above to others who want to connect to your servers
+@goto :eof
+
+:remoteservers
+@echo.
+@set SERVERIP=127.0.0.1
+@set /P SERVERIP="Enter the ip address of the servers (edu2 and edu1 should run on the same server) (default: 127.0.0.1): "
+@echo.
+@echo Connecting to servers at IP:
+@set SERVERIP
+@echo.
+
+@_edu2_start +set edu1params "connect %SERVERIP%:26666" +set edu2logincommands "connect %SERVERIP%"
+@goto :eof
+
Deleted: edu2/edu2_start.bat
===================================================================
--- edu2/edu2_start.bat 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/edu2_start.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -1,15 +0,0 @@
-:eduloop
-@del edu2\data\edu1launch.txt
-@call start-edu2 %*
-
-@if exist edu2\data\edu1launch.txt goto :launchedu1
-
-@goto :eof
-:launchedu1
-@copy edu2\data\edu1launch.txt edu1\autoexec.cfg /Y
-@del edu2\data\edu1launch.txt
-@call start-edu1
-@del edu1\autoexec.cfg
-@goto :eduloop
-
-
Modified: edu2/id1/qcsrc/cgame/progs.src
===================================================================
--- edu2/id1/qcsrc/cgame/progs.src 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/cgame/progs.src 2008-03-01 15:41:47 UTC (rev 446)
@@ -14,6 +14,7 @@
viewmodel.qh
../common/playermodel.qh
+../common/gecko_navigateex.qc
dpextensions.qc
system.qc
Added: edu2/id1/qcsrc/common/gecko_navigateex.qc
===================================================================
--- edu2/id1/qcsrc/common/gecko_navigateex.qc (rev 0)
+++ edu2/id1/qcsrc/common/gecko_navigateex.qc 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1,18 @@
+// Andreas Kirsch
+
+// gecko navigation wrapper for offline mode
+// use the gecko_offline_basepath to specify a directory (full absolute path) that contains an offline cache
+// e.g. C:\webcache
+// if you want to open www.google.com C:\webcache\www.google.com will be opened instead
+void( string instanceName, string URL ) gecko_navigateex = {
+ registercvar( "gecko_offline_basepath", "", 0 );
+ string lOfflinePath;
+ lOfflinePath = cvar_string( "gecko_offline_basepath" );
+ string lURI;
+ lURI = URL;
+ if( lOfflinePath != "" ) {
+ lOfflinePath = strreplace( "/", "\\", lOfflinePath );
+ lURI = strreplace( strcat( "file:///", lOfflinePath ), "http:/", lURI ); // only one / because the other one is used as dir separator
+ }
+ gecko_navigate( instanceName, lURI );
+}
Modified: edu2/id1/qcsrc/common/geckoterminal.qc
===================================================================
--- edu2/id1/qcsrc/common/geckoterminal.qc 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/common/geckoterminal.qc 2008-03-01 15:41:47 UTC (rev 446)
@@ -57,7 +57,7 @@
// TODO: copy String_* from the scmenu.. BlackHC
strunzone( self.targetURL );
self.targetURL = strzone( readstring() );
-// gecko_navigate( self.geckoInstanceName, strcat( "javascript:setHome(\"http://", self.targetURL, "\");" ) );
+// gecko_navigateex( self.geckoInstanceName, strcat( "javascript:setHome(\"http://", self.targetURL, "\");" ) );
}
void() gecko_terminal_removeEvent = {
@@ -122,7 +122,7 @@
registercvar( "gecko_terminal_width", "1024", CVAR_SAVE );
registercvar( "gecko_terminal_height", "512", CVAR_SAVE );
gecko_resize( self.geckoInstanceName, cvar( "gecko_terminal_width" ), cvar( "gecko_terminal_height" ) );
- gecko_navigate( self.geckoInstanceName, strcat( "http://www.icculus.org/~black/stuff/terminalbrowser.html?", self.targetURL ) );
+ gecko_navigateex( self.geckoInstanceName, strcat( "http://www.icculus.org/~black/stuff/terminalbrowser.html?", self.targetURL ) );
self.classname = "gecko_terminal";
self.RemoveEvent = gecko_terminal_removeEvent;
Modified: edu2/id1/qcsrc/game/dpextensions.qc
===================================================================
--- edu2/id1/qcsrc/game/dpextensions.qc 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/game/dpextensions.qc 2008-03-01 15:41:47 UTC (rev 446)
@@ -269,10 +269,10 @@
// use this for mouse events if needed?
float GECKO_BUTTON_DOUBLECLICK = 3;
//builtin definitions:
-float(string name) gecko_create( string name ) = #487;
-void(string name) gecko_destroy( string name ) = #488;
-void(string name) gecko_navigate( string name, string URI ) = #489;
-float(string name) gecko_keyevent( string name, float key, float eventtype ) = #490;
+float gecko_create( string name ) = #487;
+void gecko_destroy( string name ) = #488;
+void gecko_navigate( string name, string URI ) = #489;
+float gecko_keyevent( string name, float key, float eventtype ) = #490;
void gecko_mousemove( string name, float x, float y ) = #491;
void gecko_resize( string name, float w, float h ) = #492;
vector gecko_get_texture_extent( string name ) = #493;
Modified: edu2/id1/qcsrc/menu/edu2/dialog_login.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-03-01 15:41:47 UTC (rev 446)
@@ -35,6 +35,18 @@
profile_browser.goHome( profile_browser );
}
+/* JavaScript code:
+document.loginform.email.value="";
+document.loginform.pass.value="";
+document.loginform.persistent.checked=true;
+if( document.loginform.persistent.checked.dialog != null )
+ document.loginform.persistent.checked.dialog.hide();
+login_form_change();
+
+this.disabled=true; document.loginform.submit();
+document.loginform.submit();
+*/
+
void LoginDialog_onOkClick(entity button, entity me)
{
// TODO: delay the whole thing? Black
Modified: edu2/id1/qcsrc/menu/edu2/dialog_logout.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-03-01 15:41:47 UTC (rev 446)
@@ -13,6 +13,17 @@
#endif
#ifdef IMPLEMENTATION
+
+/* JavaScript code:
+for( var i = 0 ; i < document.links.length ; i++ ) {
+ var str = String( document.links[i].href );
+ if( str.search( "www.facebook.com/logout.php" ) != -1 ) {
+ location.assign( str + "&confirm=1" );
+
+ }
+}
+*/
+
void LogoutDialog_onYesClick(entity button, entity me)
{
loginout_browser.executeScript( loginout_browser,
Modified: edu2/id1/qcsrc/menu/edu2/gamelist.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/gamelist.c 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/menu/edu2/gamelist.c 2008-03-01 15:41:47 UTC (rev 446)
@@ -57,7 +57,7 @@
};
void( entity button ) Edu1_Start = {
- registercvar( "edu1params", "map level1", 0 );
+ registercvar( "edu1params", "map $edu1map", 0 );
str_save( strcat( cvar_string( "edu1params" ), "\n" ), "edu1launch.txt" );
localcmd( "quit\n" );
};
Modified: edu2/id1/qcsrc/menu/item/gecko.c
===================================================================
--- edu2/id1/qcsrc/menu/item/gecko.c 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/menu/item/gecko.c 2008-03-01 15:41:47 UTC (rev 446)
@@ -39,7 +39,7 @@
}
// TODO: FIXME possible leak!
me.homeURI = strzone( lFullURI );
- gecko_navigate( me.texturePath, lFullURI);
+ gecko_navigateex( me.texturePath, lFullURI);
//gecko_navigate( me.texturePath, "about:blank" );
//gecko_navigate( me.texturePath, "javascript:Darkplaces.query( 123 );" );
}
@@ -55,15 +55,15 @@
strunzone( me.homeURI );
}
me.homeURI = strzone( lFullURI );
- gecko_navigate( me.texturePath, lFullURI);
+ gecko_navigateex( me.texturePath, lFullURI);
}
void goHomeGecko( entity me ) {
- gecko_navigate( me.texturePath, me.homeURI );
+ gecko_navigateex( me.texturePath, me.homeURI );
}
void executeScriptGecko( entity me, string pCode ) {
- gecko_navigate( me.texturePath, strcat( "javascript:", pCode ) );
+ gecko_navigateex( me.texturePath, strcat( "javascript:", pCode ) );
}
void drawGecko(entity me)
Modified: edu2/id1/qcsrc/menu/progs.src
===================================================================
--- edu2/id1/qcsrc/menu/progs.src 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/id1/qcsrc/menu/progs.src 2008-03-01 15:41:47 UTC (rev 446)
@@ -15,6 +15,8 @@
../common/player_anim.qh
../common/playermodel.qh
+../common/gecko_navigateex.qc
+
gamecommand.qh
menu.qh
draw.qh
Added: edu2/id1/web/facebookscripts.txt
===================================================================
--- edu2/id1/web/facebookscripts.txt (rev 0)
+++ edu2/id1/web/facebookscripts.txt 2008-03-01 15:41:47 UTC (rev 446)
@@ -0,0 +1,21 @@
+for( var i = 0 ; i < document.links.length ; i++ ) {
+ var str = String( document.links[i].href );
+ if( str.search( "www.facebook.com/logout.php" ) != -1 ) {
+ location.assign( str + "&confirm=1" );
+
+ }
+}
+
+
+document.loginform.email.value="edu...@gm...";
+document.loginform.pass.value="...";
+document.loginform.persistent.value = 1;
+document.loginform.persistent.checked=true;
+if( document.loginform.persistent.checked.dialog != null )
+ document.loginform.persistent.checked.dialog.hide();
+login_form_change();
+
+this.disabled=true; document.loginform.submit();
+document.loginform.submit();
+
+
Deleted: edu2/start-edu1-server.bat
===================================================================
--- edu2/start-edu1-server.bat 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/start-edu1-server.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -1 +0,0 @@
-@edu1-dedicated.exe -game edu1 -port 26666 +set sv_public 1 +map level1
\ No newline at end of file
Deleted: edu2/start-edu1.bat
===================================================================
--- edu2/start-edu1.bat 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/start-edu1.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -1 +0,0 @@
-@edu1 -game edu1 %*
Deleted: edu2/start-edu2-server.bat
===================================================================
--- edu2/start-edu2-server.bat 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/start-edu2-server.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -1 +0,0 @@
-@edu2p-dedicated.exe -game edu2 -port 26000 +set sv_public 1 +map $edu2map
\ No newline at end of file
Deleted: edu2/start-edu2.bat
===================================================================
--- edu2/start-edu2.bat 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/start-edu2.bat 2008-03-01 15:41:47 UTC (rev 446)
@@ -1 +0,0 @@
-@edu2p -game edu2 %*
Modified: edu2/xulrunner-win32/AccessibleMarshal.dll
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/IA2Marshal.dll
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/README.txt
===================================================================
--- edu2/xulrunner-win32/README.txt 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/xulrunner-win32/README.txt 2008-03-01 15:41:47 UTC (rev 446)
@@ -1,20 +1,306 @@
-For information on how to build Mozilla from the source code, see:
+==============================================================
- http://developer.mozilla.org/en/docs/Build_Documentation
+= = = = = = = = = = Mozilla Read Me = = = = = = = = = = =
-To have your bug fix / feature added to Mozilla, you should create a patch and
-submit it to Bugzilla (http://bugzilla.mozilla.org). Instructions are at:
+==============================================================
- http://developer.mozilla.org/en/docs/Creating_a_patch
- http://developer.mozilla.org/en/docs/Getting_your_patch_in_the_tree
+Mozilla is subject to the terms detailed in the license
+agreement accompanying it.
-If you have a question about developing Mozilla, and can't find the solution
-on http://developer.mozilla.org, you can try asking your question in a
-mozilla.* Usenet group, or on IRC at irc.mozilla.org. [The Mozilla news groups
-are accessible on Google Groups, or news.mozilla.org with a NNTP reader.]
+This Read Me file contains information about system
+requirements and installation instructions for the Windows,
+Mac OS, and Linux builds of Mozilla.
-You can download nightly development builds from the the Mozilla FTP server.
-Keep in mind that nightly builds, which are used by Mozilla developers for
-testing, may be buggy. Firefox nightlies, for example, can be found at:
+For more info on Mozilla, see www.mozilla.org. To submit bugs
+or other feedback, see the Navigator QA menu and check out
+Bugzilla at http://bugzilla.mozilla.org for links to known
+bugs, bug-writing guidelines, and more. You can also get help
+with Bugzilla by pointing your IRC client to #mozillazine
+at irc.mozilla.org.
- ftp://ftp.mozilla.org/pub/firefox/nightly/latest-trunk/
+
+==============================================================
+
+ Getting Mozilla
+
+==============================================================
+
+You can download nightly builds of Mozilla from the
+Mozilla.org FTP site at
+
+ ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/nightly/
+
+For the very latest builds, see
+
+ ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/nightly/latest-trunk
+
+Keep in mind that nightly builds, which are used by
+Mozilla.org developers for testing, may be buggy. If you are
+looking for a more polished version of Mozilla, Mozilla.org
+releases Milestone builds of Mozilla every six weeks or so
+that you can download from
+
+ http://www.mozilla.org/releases
+
+Be sure to read the Mozilla release notes for information
+on known problems and installation issues with Mozilla.
+The release notes can be found at the preceding URL along
+with the milestone releases themselves.
+
+Note: Please use Talkback builds whenever possible. These
+builds allow transmission of crash data back to Mozilla
+developers, improved crash analysis, and posting of crash
+information to our crash-data newsgroup.
+
+
+==============================================================
+
+ System Requirements
+
+==============================================================
+
+*All Platforms
+
+ To view and use the new streamlined "Modern" theme,
+ your display monitor should be set to display
+ thousands of colors. For users who cannot set their
+ displays to use more than 256 colors, Mozilla.org
+ recommends using the "Classic" theme for Mozilla.
+
+ To select the Modern theme after you have installed
+ Mozilla, from the Navigator browser, open the View
+ menu, and then open then open the Apply Theme submenu
+ and choose Modern.
+
+*Mac OS
+
+ -Mac OS X or later
+ -PowerPC processor (266 MHz or faster recommended)
+ -64 MB RAM
+ -36 MB of free hard disk space
+
+*Windows
+
+ -Windows 95, 98, Me, NT4, 2000 or XP
+ -Intel Pentium class processor (233 MHz or faster
+ recommended)
+ -64 MB RAM
+ -26 MB free hard disk space
+
+*Linux
+
+ -The following library versions (or compatible) are
+ required: glibc 2.1, XFree86 3.3.x, GTK 1.2.x, Glib
+ 1.2.x, Libstdc++ 2.9.0. Red Hat Linux 6.0,
+ Debian 2.1, and SuSE 6.2 (or later) installations
+ should work.
+ -Red Hat 6.x users who want to install the Mozilla
+ RPM must have at least version 4.0.2 of rpm
+ installed.
+ -Intel Pentium class processor (233 MHz or faster
+ recommended)
+ -64MB RAM
+ -26MB free hard disk space
+
+
+==============================================================
+
+ Installation Instructions
+
+==============================================================
+
+For Mac OS and Windows users, it is strongly recommended that
+you exit all programs before running the setup program. Also,
+you should temporarily disable virus-detection software.
+
+For Linux users, note that the installation instructions use
+the bash shell. If you're not using bash, adjust the commands
+accordingly.
+
+For all platforms, install into a clean (new) directory.
+Installing on top of previously released builds may cause
+problems.
+
+Note: These instructions do not tell you how to build Mozilla.
+For info on building the Mozilla source, see
+
+ http://www.mozilla.org/source.html
+
+
+Windows Installation Instructions
+---------------------------------
+
+Note: For Windows NT/2000/XP systems, you need Administrator
+privileges to install Mozilla. If you see an "Error 5" message
+during installation, make sure you're running the installation
+with Administrator privileges.
+
+
+ To install Mozilla by downloading the Mozilla installer,
+ follow these steps:
+
+ 1. Click the the mozilla-win32-installer.exe link on
+ the site you're downloading Mozilla from to download
+ the installer file to your machine.
+
+ 2. Navigate to where you downloaded the file and
+ double-click the Mozilla program icon on your machine
+ to begin the Setup program.
+
+ 3. Follow the on-screen instructions in the setup
+ program. The program starts automatically the first
+ time.
+
+
+ To install Mozilla by downloading the .zip file and
+ installing manually, follow these steps:
+
+ 1. Click the mozilla-win32-talkback.zip link or the
+ mozilla-win32.zip link on the site you're down-
+ loading Mozilla from to download the .zip file to
+ your machine.
+
+ 2. Navigate to where you downloaded the file and
+ double-click the compressed file.
+
+ Note: This step assumes you already have a recent
+ version of WinZip installed, and that you know how to
+ use it. If not, you can get WinZip and information
+ about the program at www.winzip.com.
+
+ 3. Extract the .zip file to a directory such as
+ C:\Program Files\mozilla.org\Mozilla.
+
+ 4. To start Mozilla, navigate to the directory you
+ extracted Mozilla to and double-click the Mozilla.exe
+ icon.
+
+
+Mac OS X Installation Instructions
+----------------------------------
+
+ To install Mozilla by downloading the Mozilla disk image,
+ follow these steps:
+
+ 1. Click the mozilla-mac-MachO.dmg.gz link to download
+ it to your machine. By default, the download file is
+ downloaded to your desktop.
+
+ 2. Once you have downloaded the .dmg.gz file, drag it
+ onto Stuffit Expander to decompress it. If the disk
+ image doesn't mount automatically, double-click on the
+ .dmg file to mount it. If that fails, and the file
+ does not look like a disk image file, do a "Show Info"
+ on the file, and, in the "Open with application"
+ category, choose Disk Copy. In Mac OS 10.2, you can
+ use "Open with" from the context menu.
+
+ 3. Once the disk image mounts, open it, and drag the
+ Mozilla icon onto your hard disk.
+
+ 4. We recommend that you copy it to the Applications
+ folder.
+
+ 5. Now Eject the disk image.
+
+ 6. If you like, you can drag Mozilla to your dock to
+ have it easily accessible at all times. You might also
+ wish to select Mozilla as your default browser in the
+ Internet system preferences pane (under the Web tab).
+
+
+Linux Installation Instructions
+-------------------------------
+
+Note: If you install in the default directory (which is
+usually /usr/local/mozilla), or any other directory where
+only the root user normally has write-access, you must
+start Mozilla first as root before other users can start
+the program. Doing so generates a set of files required
+for later use by other users.
+
+
+ To install Mozilla by downloading the Mozilla installer,
+ follow these steps:
+
+ 1. Create a directory named mozilla (mkdir mozilla)
+ and change to that directory (cd mozilla).
+
+ 2. Click the link on the site you're downloading
+ Mozilla from to download the installer file
+ (called mozilla-1686-pc-linux-gnu-installer.tar.gz)
+ to your machine.
+
+ 3. Change to the mozilla directory (cd mozilla) and
+ decompress the archive with the following command:
+
+ tar zxvf moz*.tar.gz
+
+ The installer is now located in a subdirectory of
+ Mozilla named mozilla-installer.
+
+ 4. Change to the mozilla-installer directory
+ (cd mozilla-installer) and run the installer with the
+ ./mozilla-installer command.
+
+ 5. Follow the instructions in the install wizard for
+ installing Mozilla.
+
+ Note: If you have a slower machine, be aware that the
+ installation may take some time. In this case, the
+ installation progress may appear to hang indefinitely,
+ even though the installation is still in process.
+
+ 6. To start Mozilla, change to the directory where you
+ installed it and run the ./mozilla command.
+
+
+ To install Mozilla by downloading the tar.gz file:
+
+ 1. Create a directory named "mozilla" (mkdir mozilla)
+ and change to that directory (cd mozilla).
+
+ 2. Click the link on the site you're downloading
+ Mozilla from to download the non-installer
+ (mozilla*.tar.gz) file into the mozilla directory.
+
+ 3. Change to the mozilla directory (cd mozilla) and
+ decompress the file with the following command:
+
+ tar zxvf moz*.tar.gz
+
+ This creates a "mozilla" directory under your mozilla
+ directory.
+
+ 4. Change to the mozilla directory (cd mozilla).
+
+ 5. Run Mozilla with the following run script:
+
+ ./mozilla
+
+
+ To hook up Mozilla complete with icon to the GNOME Panel,
+ follow these steps:
+
+ 1. Click the GNOME Main Menu button, open the Panel menu,
+ and then open the Add to Panel submenu and choose Launcher.
+
+ 2. Right-click the icon for Mozilla on the Panel and
+ enter the following command:
+ directory_name./mozilla
+
+ where directory_name is the name of the directory
+ you downloaded mozilla to. For example, the default
+ directory that Mozilla suggests is /usr/local/mozilla.
+
+ 3. Type in a name for the icon, and type in a comment
+ if you wish.
+
+ 4. Click the icon button and type in the following as
+ the icon's location:
+
+ directory_name/icons/mozicon50.xpm
+
+ where directory name is the directory where you
+ installed Mozilla. For example, the default directory
+ is /usr/local/mozilla/icons/mozicon50.xpm.
Modified: edu2/xulrunner-win32/chrome/classic.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/comm.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/en-US.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/pippki.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/toolkit.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/FeedProcessor.js
===================================================================
--- edu2/xulrunner-win32/components/FeedProcessor.js 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/xulrunner-win32/components/FeedProcessor.js 2008-03-01 15:41:47 UTC (rev 446)
@@ -22,7 +22,6 @@
* Ben Goodger <be...@go...>
* Myk Melez <my...@mo...>
* Michael Ventnor <m.v...@gm...>
- * Will Guaraldi <wil...@pc...>
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
@@ -221,9 +220,7 @@
"http://my.netscape.com/rdf/simple/0.9/":"rss1",
"http://wellformedweb.org/CommentAPI/":"wfw",
"http://purl.org/rss/1.0/modules/wiki/":"wiki",
- "http://www.w3.org/XML/1998/namespace":"xml",
- "http://search.yahoo.com/mrss/":"media",
- "http://search.yahoo.com/mrss":"media"
+ "http://www.w3.org/XML/1998/namespace":"xml"
}
// We allow a very small set of namespaces in XHTML content,
@@ -267,8 +264,6 @@
this.authors = Cc[ARRAY_CONTRACTID].createInstance(Ci.nsIMutableArray);
this.contributors = Cc[ARRAY_CONTRACTID].createInstance(Ci.nsIMutableArray);
this.baseURI = null;
- this.enclosureCount = 0;
- this.type = Ci.nsIFeed.TYPE_FEED;
}
Feed.prototype = {
@@ -308,8 +303,6 @@
if (bagHasKey(this.fields, "links"))
this._atomLinksToURI();
- this._calcEnclosureCountAndFeedType();
-
// Resolve relative image links
if (this.image && bagHasKey(this.image, "url"))
this._resolveImageLink();
@@ -318,67 +311,6 @@
this.searchLists.title]);
},
- _calcEnclosureCountAndFeedType: function Feed_calcEnclosureCountAndFeedType() {
- var entries_with_enclosures = 0;
- var audio_count = 0;
- var image_count = 0;
- var video_count = 0;
- var other_count = 0;
-
- for (var i = 0; i < this.items.length; ++i) {
- var entry = this.items.queryElementAt(i, Ci.nsIFeedEntry);
- entry.QueryInterface(Ci.nsIFeedContainer);
-
- if (entry.enclosures && entry.enclosures.length > 0) {
- ++entries_with_enclosures;
-
- for (var e = 0; e < entry.enclosures.length; ++e) {
- var enc = entry.enclosures.queryElementAt(e, Ci.nsIWritablePropertyBag2);
- if (enc.hasKey("type")) {
- var enctype = enc.get("type");
-
- if (/^audio/.test(enctype)) {
- ++audio_count;
- } else if (/^image/.test(enctype)) {
- ++image_count;
- } else if (/^video/.test(enctype)) {
- ++video_count;
- } else {
- ++other_count;
- }
- } else {
- ++other_count;
- }
- }
- }
- }
-
- var feedtype = Ci.nsIFeed.TYPE_FEED;
-
- // For a feed to be marked as TYPE_VIDEO, TYPE_AUDIO and TYPE_IMAGE,
- // we enforce two things:
- //
- // 1. all entries must have at least one enclosure
- // 2. all enclosures must be video for TYPE_VIDEO, audio for TYPE_AUDIO or image
- // for TYPE_IMAGE
- //
- // Otherwise it's a TYPE_FEED.
- if (entries_with_enclosures == this.items.length && other_count == 0) {
- if (audio_count > 0 && !video_count && !image_count) {
- feedtype = Ci.nsIFeed.TYPE_AUDIO;
-
- } else if (image_count > 0 && !audio_count && !video_count) {
- feedtype = Ci.nsIFeed.TYPE_IMAGE;
-
- } else if (video_count > 0 && !audio_count && !image_count) {
- feedtype = Ci.nsIFeed.TYPE_VIDEO;
- }
- }
-
- this.type = feedtype;
- this.enclosureCount = other_count + video_count + audio_count + image_count;
- },
-
_atomLinksToURI: function Feed_linkToURI() {
var links = this.fields.getPropertyAsInterface("links", Ci.nsIArray);
var alternates = findAtomLinks("alternate", links);
@@ -464,7 +396,7 @@
"atom03:summary", "atom:summary"],
content: ["content:encoded","atom03:content","atom:content"],
rights: ["atom03:rights","atom:rights"],
- published: ["pubDate", "atom03:issued", "dcterms:issued", "atom:published"],
+ published: ["atom03:issued", "dcterms:issued", "atom:published"],
updated: ["pubDate", "atom03:modified", "dc:date", "dcterms:modified",
"atom:updated"]
},
@@ -475,10 +407,7 @@
// Assign Atom link if needed
if (bagHasKey(this.fields, "links"))
this._atomLinksToURI();
-
- // Populate enclosures array
- this._populateEnclosures();
-
+
// The link might be a guid w/ permalink=true
if (!this.link && bagHasKey(this.fields, "guid")) {
var guid = this.fields.getProperty("guid");
@@ -501,133 +430,6 @@
this.searchLists.title]);
},
- _populateEnclosures: function Entry_populateEnclosures() {
- if (bagHasKey(this.fields, "links"))
- this._atomLinksToEnclosures();
-
- // Add RSS2 enclosure to enclosures
- if (bagHasKey(this.fields, "enclosure"))
- this._enclosureToEnclosures();
-
- // Add media:content to enclosures
- if (bagHasKey(this.fields, "mediacontent"))
- this._mediacontentToEnclosures();
-
- // Add media:content in media:group to enclosures
- if (bagHasKey(this.fields, "mediagroup"))
- this._mediagroupToEnclosures();
- },
-
- __enclosure_map: null,
-
- _addToEnclosures: function Entry_addToEnclosures(new_enc) {
- if (!bagHasKey(new_enc, "url"))
- return;
-
- if (this.__enclosure_map == null)
- this.__enclosure_map = {};
-
- var previous_enc = this.__enclosure_map[new_enc.getPropertyAsAString("url")];
-
- if (previous_enc != undefined) {
- previous_enc.QueryInterface(Ci.nsIWritablePropertyBag2);
-
- if (!bagHasKey(previous_enc, "type") && bagHasKey(new_enc, "type"))
- previous_enc.setPropertyAsAString("type", new_enc.getPropertyAsAString("type"));
-
- if (!bagHasKey(previous_enc, "length") && bagHasKey(new_enc, "length"))
- previous_enc.setPropertyAsAString("length", new_enc.getPropertyAsAString("length"));
-
- return;
- }
-
- if (this.enclosures == null) {
- this.enclosures = Cc[ARRAY_CONTRACTID].createInstance(Ci.nsIMutableArray);
- this.enclosures.QueryInterface(Ci.nsIMutableArray);
- }
-
- this.enclosures.appendElement(new_enc, false);
- this.__enclosure_map[new_enc.getPropertyAsAString("url")] = new_enc;
- },
-
- _atomLinksToEnclosures: function Entry_linkToEnclosure() {
- var links = this.fields.getPropertyAsInterface("links", Ci.nsIArray);
- var enc_links = findAtomLinks("enclosure", links);
- if (enc_links.length == 0)
- return;
-
- for (var i = 0; i < enc_links.length; ++i) {
- var link = enc_links[i];
-
- // an enclosure must have an href
- if (!(link.getProperty("href")))
- return;
-
- var enc = Cc[BAG_CONTRACTID].createInstance(Ci.nsIWritablePropertyBag2);
-
- // copy Atom bits over to equivalent enclosure bits
- enc.setPropertyAsAString("url", link.getPropertyAsAString("href"));
- if (bagHasKey(link, "type"))
- enc.setPropertyAsAString("type", link.getPropertyAsAString("type"));
- if (bagHasKey(link, "length"))
- enc.setPropertyAsAString("length", link.getPropertyAsAString("length"));
-
- this._addToEnclosures(enc);
- }
- },
-
- _enclosureToEnclosures: function Entry_enclosureToEnclosures() {
- var enc = this.fields.getPropertyAsInterface("enclosure", Ci.nsIPropertyBag2);
-
- if (!(enc.getProperty("url")))
- return;
-
- this._addToEnclosures(enc);
- },
-
- _mediacontentToEnclosures: function Entry_mediacontentToEnclosures() {
- var mc = this.fields.getPropertyAsInterface("mediacontent", Ci.nsIPropertyBag2);
-
- if (!(mc.getProperty("url")))
- return;
-
- var enc = Cc[BAG_CONTRACTID].createInstance(Ci.nsIWritablePropertyBag2);
-
- enc.setPropertyAsAString("url", mc.getPropertyAsAString("url"));
- if (bagHasKey(mc, "fileSize"))
- enc.setPropertyAsAString("length", mc.getPropertyAsAString("fileSize"));
- if (bagHasKey(mc, "type"))
- enc.setPropertyAsAString("type", mc.getPropertyAsAString("type"));
-
- this._addToEnclosures(enc);
- },
-
- _mediagroupToEnclosures: function Entry_mediagroupToEnclosures() {
- var group = this.fields.getPropertyAsInterface("mediagroup", Ci.nsIPropertyBag2);
-
- var content = group.getPropertyAsInterface("mediacontent", Ci.nsIArray);
- for (var i = 0; i < content.length; ++i) {
- var contentElement = content.queryElementAt(i, Ci.nsIWritablePropertyBag2);
- // media:content don't require url, but if it's not there, we should
- // skip it.
- if (!bagHasKey(contentElement, "url"))
- continue;
-
- var enc = Cc[BAG_CONTRACTID].createInstance(Ci.nsIWritablePropertyBag2);
-
- // copy media:content bits over to equivalent enclosure bits
- enc.setPropertyAsAString("url", contentElement.getPropertyAsAString("url"));
- if (bagHasKey(contentElement, "type")) {
- enc.setPropertyAsAString("type", contentElement.getPropertyAsAString("type"));
- }
- if (bagHasKey(contentElement, "fileSize")) {
- enc.setPropertyAsAString("length", contentElement.getPropertyAsAString("fileSize"));
- }
-
- this._addToEnclosures(enc);
- }
- },
-
// XPCOM stuff
classDescription: ENTRY_CLASSNAME,
classID: ENTRY_CLASSID,
@@ -1261,9 +1063,7 @@
"dc:contributor": new ElementInfo("contributors", Cc[PERSON_CONTRACTID],
rssAuthor, true),
"category": new ElementInfo("categories", null, rssCatTerm, true),
- "enclosure": new ElementInfo("enclosure", null, null, false),
- "media:content": new ElementInfo("mediacontent", null, null, false),
- "media:group": new ElementInfo("mediagroup", null, null, false),
+ "enclosure": new ElementInfo("enclosure", null, null, true),
"guid": new ElementInfo("guid", null, rssGuid, false)
},
@@ -1275,10 +1075,6 @@
"hour": new ElementInfo("hours", null, rssArrayElement, true)
},
- "IN_MEDIAGROUP": {
- "media:content": new ElementInfo("mediacontent", null, null, true)
- },
-
/********* RSS1 **********/
"IN_RDF": {
// If we hit a rss1:channel, we can verify that we have RSS1
Modified: edu2/xulrunner-win32/components/accessibility.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/autocomplete.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/caps.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/content_base.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/contentprefs.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/docshell_base.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_base.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_events.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_offline.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_storage.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_svg.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_xul.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/downloads.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/editor.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/extensions.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/exthandler.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/imglib2.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/inspector.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/loginmgr.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/necko.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/necko_cache.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/necko_dns.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/nsBlocklistService.js
===================================================================
--- edu2/xulrunner-win32/components/nsBlocklistService.js 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/xulrunner-win32/components/nsBlocklistService.js 2008-03-01 15:41:47 UTC (rev 446)
@@ -76,16 +76,6 @@
checkCert(oldChannel);
},
- // Suppress any certificate errors
- notifyCertProblem: function(socketInfo, status, targetSite) {
- return true;
- },
-
- // Suppress any ssl errors
- notifySSLError: function(socketInfo, error, targetSite) {
- return true;
- },
-
// nsIInterfaceRequestor
getInterface: function(iid) {
return this.QueryInterface(iid);
@@ -94,8 +84,6 @@
// nsISupports
QueryInterface: function(iid) {
if (!iid.equals(Components.interfaces.nsIChannelEventSink) &&
- !iid.equals(Components.interfaces.nsIBadCertListener2) &&
- !iid.equals(Components.interfaces.nsISSLErrorListener) &&
!iid.equals(Components.interfaces.nsIInterfaceRequestor) &&
!iid.equals(Components.interfaces.nsISupports))
throw Components.results.NS_ERROR_NO_INTERFACE;
Modified: edu2/xulrunner-win32/components/nsContentDispatchChooser.js
===================================================================
--- edu2/xulrunner-win32/components/nsContentDispatchChooser.js 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/xulrunner-win32/components/nsContentDispatchChooser.js 2008-03-01 15:41:47 UTC (rev 446)
@@ -86,7 +86,6 @@
bundle.GetStringFromName("protocol.choices.label"),
bundle.formatStringFromName("protocol.checkbox.label",
[aURI.scheme], 1),
- bundle.GetStringFromName("protocol.checkbox.accesskey"),
bundle.formatStringFromName("protocol.checkbox.extra",
[xai.name], 1)];
Modified: edu2/xulrunner-win32/components/nsContentPrefService.js
===================================================================
--- edu2/xulrunner-win32/components/nsContentPrefService.js 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/xulrunner-win32/components/nsContentPrefService.js 2008-03-01 15:41:47 UTC (rev 446)
@@ -270,11 +270,7 @@
return this._grouper;
},
- get DBConnection ContentPrefService_get_DBConnection() {
- return this._dbConnection;
- },
-
//**************************************************************************//
// Data Retrieval & Modification
@@ -695,26 +691,32 @@
if (!dbFile.exists())
dbConnection = this._dbCreate(dbService, dbFile);
else {
- dbConnection = dbService.openDatabase(dbFile);
+ try {
+ dbConnection = dbService.openDatabase(dbFile);
- // If the connection isn't ready after we open the database, that means
- // the database has been corrupted, so we back it up and then recreate it.
- if (!dbConnection.connectionReady)
- dbConnection = this._dbBackUpAndRecreate(dbService, dbFile, dbConnection);
+ // Get the version of the database in the file.
+ var version = dbConnection.schemaVersion;
- // Get the version of the schema in the file.
- var version = dbConnection.schemaVersion;
-
- // Try to migrate the schema in the database to the current schema used by
- // the service. If migration fails, back up the database and recreate it.
- if (version != this._dbVersion) {
- try {
+ if (version != this._dbVersion)
this._dbMigrate(dbConnection, version, this._dbVersion);
+ }
+ catch (ex) {
+ // If the database file is corrupted, I'm not sure whether we should
+ // just delete the corrupted file or back it up. For now I'm just
+ // deleting it, but here's some code that backs it up (but doesn't limit
+ // the number of backups, which is probably necessary, thus I'm not
+ // using this code):
+ //var backup = this._dbFile.clone();
+ //backup.createUnique(Ci.nsIFile.NORMAL_FILE_TYPE, PERMS_FILE);
+ //backup.remove(false);
+ //this._dbFile.moveTo(null, backup.leafName);
+ if (ex.result == Cr.NS_ERROR_FILE_CORRUPTED) {
+ // Remove the corrupted file, then recreate it.
+ dbFile.remove(false);
+ dbConnection = this._dbCreate(dbService, dbFile);
}
- catch(ex) {
- Cu.reportError("error migrating DB: " + ex + "; backing up and recreating");
- dbConnection = this._dbBackUpAndRecreate(dbService, dbFile, dbConnection);
- }
+ else
+ throw ex;
}
}
@@ -723,33 +725,13 @@
_dbCreate: function ContentPrefService__dbCreate(aDBService, aDBFile) {
var dbConnection = aDBService.openDatabase(aDBFile);
-
- try {
- this._dbCreateSchema(dbConnection);
- dbConnection.schemaVersion = this._dbVersion;
- }
- catch(ex) {
- // If we failed to create the database (perhaps because the disk ran out
- // of space), then remove the database file so we don't leave it in some
- // half-created state from which we won't know how to recover.
- dbConnection.close();
- aDBFile.remove(false);
- throw ex;
- }
-
+ for (let name in this._dbSchema.tables)
+ dbConnection.createTable(name, this._dbSchema.tables[name]);
+ this._dbCreateIndices(dbConnection);
+ dbConnection.schemaVersion = this._dbVersion;
return dbConnection;
},
- _dbCreateSchema: function ContentPrefService__dbCreateSchema(aDBConnection) {
- this._dbCreateTables(aDBConnection);
- this._dbCreateIndices(aDBConnection);
- },
-
- _dbCreateTables: function ContentPrefService__dbCreateTables(aDBConnection) {
- for (let name in this._dbSchema.tables)
- aDBConnection.createTable(name, this._dbSchema.tables[name]);
- },
-
_dbCreateIndices: function ContentPrefService__dbCreateIndices(aDBConnection) {
for (let name in this._dbSchema.indices) {
let index = this._dbSchema.indices[name];
@@ -759,23 +741,6 @@
}
},
- _dbBackUpAndRecreate: function ContentPrefService__dbBackUpAndRecreate(aDBService,
- aDBFile,
- aDBConnection) {
- aDBConnection.backupDB("content-prefs.sqlite.corrupt");
-
- // Close the database, ignoring the "already closed" exception, if any.
- // It'll be open if we're here because of a migration failure but closed
- // if we're here because of database corruption.
- try { aDBConnection.close() } catch(ex) {}
-
- aDBFile.remove(false);
-
- let dbConnection = this._dbCreate(aDBService, aDBFile);
-
- return dbConnection;
- },
-
_dbMigrate: function ContentPrefService__dbMigrate(aDBConnection, aOldVersion, aNewVersion) {
if (this["_dbMigrate" + aOldVersion + "To" + aNewVersion]) {
aDBConnection.beginTransaction();
@@ -790,19 +755,34 @@
}
}
else
- throw("no migrator function from version " + aOldVersion +
- " to version " + aNewVersion);
+ throw("can't migrate database from v" + aOldVersion +
+ " to v" + aNewVersion + ": no migrator function");
},
- /**
- * If the schema version is 0, that means it was never set, which means
- * the database was somehow created without the schema being applied, perhaps
- * because the system ran out of disk space (although we check for this
- * in _createDB) or because some other code created the database file without
- * applying the schema. In any case, recover by simply reapplying the schema.
- */
_dbMigrate0To3: function ContentPrefService___dbMigrate0To3(aDBConnection) {
- this._dbCreateSchema(aDBConnection);
+ aDBConnection.createTable("groups", this._dbSchema.tables.groups);
+ aDBConnection.executeSimpleSQL(
+ "INSERT INTO groups (id, name) SELECT id, name FROM sites"
+ );
+
+ aDBConnection.createTable("settings", this._dbSchema.tables.settings);
+ aDBConnection.executeSimpleSQL(
+ "INSERT INTO settings (id, name) SELECT id, name FROM keys"
+ );
+
+ aDBConnection.executeSimpleSQL("ALTER TABLE prefs RENAME TO prefsOld");
+ aDBConnection.createTable("prefs", this._dbSchema.tables.prefs);
+ aDBConnection.executeSimpleSQL(
+ "INSERT INTO prefs (id, groupID, settingID, value) " +
+ "SELECT id, site_id, key_id, value FROM prefsOld"
+ );
+
+ // Drop obsolete tables.
+ aDBConnection.executeSimpleSQL("DROP TABLE prefsOld");
+ aDBConnection.executeSimpleSQL("DROP TABLE keys");
+ aDBConnection.executeSimpleSQL("DROP TABLE sites");
+
+ this._dbCreateIndices(aDBConnection);
},
_dbMigrate1To3: function ContentPrefService___dbMigrate1To3(aDBConnection) {
Modified: edu2/xulrunner-win32/components/nsDownloadManagerUI.js
===================================================================
--- edu2/xulrunner-win32/components/nsDownloadManagerUI.js 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/xulrunner-win32/components/nsDownloadManagerUI.js 2008-03-01 15:41:47 UTC (rev 446)
@@ -1,5 +1,5 @@
/* ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
@@ -66,9 +66,6 @@
return;
}
- // We try to get a window to use as the parent here. If we don't have one,
- // the download manager will close immediately after opening if the pref
- // browser.download.manager.closeWhenDone is set to true.
var window = null;
try {
if (aWindowContext)
@@ -92,7 +89,7 @@
getService(Ci.nsIWindowWatcher);
ww.openWindow(window,
DOWNLOAD_MANAGER_URL,
- "Download:Manager",
+ null,
"chrome,dialog=no,resizable",
params);
},
@@ -108,11 +105,7 @@
var prefs = Cc["@mozilla.org/preferences-service;1"].
getService(Ci.nsIPrefBranch);
- // This preference may not be set, so defaulting to two.
- let flashCount = 2;
- try {
- flashCount = prefs.getIntPref(PREF_FLASH_COUNT);
- } catch (e) { }
+ var flashCount = prefs.getIntPref(PREF_FLASH_COUNT);
var win = this.recentWindow.QueryInterface(Ci.nsIDOMChromeWindow);
win.getAttentionWithCycleCount(flashCount);
Modified: edu2/xulrunner-win32/components/nsExtensionManager.js
===================================================================
--- edu2/xulrunner-win32/components/nsExtensionManager.js 2008-03-01 14:16:56 UTC (rev 445)
+++ edu2/xulrunner-win32/components/nsExtensionManager.js 2008-03-01 15:41:47 UTC (rev 446)
@@ -17,11 +17,11 @@
const PREF_EM_CHECK_COMPATIBILITY = "extensions.checkCompatibility";
const PREF_EM_CHECK_UPDATE_SECURITY = "extensions.checkUpdateSecurity";
const PREF_EM_LAST_APP_VERSION = "extensions.lastAppVersion";
-const PREF_EM_ENABLED_ITEMS = "extensions.enabledItems";
const PREF_UPDATE_COUNT = "extensions.update.count";
const PREF_UPDATE_DEFAULT_URL = "extensions.update.url";
const PREF_EM_IGNOREMTIMECHANGES = "extensions.ignoreMTimeChanges";
const PREF_EM_DISABLEDOBSOLETE = "extensions.disabledObsolete";
+const PREF_EM_LAST_SELECTED_SKIN = "extensions.lastSelectedSkin";
const PREF_EM_EXTENSION_FORMAT = "extensions.%UUID%.";
const PREF_EM_ITEM_UPDATE_ENABLED = "extensions.%UUID%.update.enabled";
const PREF_EM_UPDATE_ENABLED = "extensions.update.enabled";
@@ -75,9 +75,6 @@
const KEY_APP_PROFILE = "app-profile";
const KEY_APP_GLOBAL = "app-global";
-const KEY_APP_SYSTEM_LOCAL = "app-system-local";
-const KEY_APP_SYSTEM_SHARE = "app-system-share";
-const KEY_APP_SYSTEM_USER = "app-system-user";
const CATEGORY_INSTALL_LOCATIONS = "extension-install-locations";
const CATEGORY_UPDATE_PARAMS = "extension-update-params";
@@ -180,16 +177,6 @@
checkCert(oldChannel);
},
- // Suppress any certificate errors
- notifyCertProblem: function(socketInfo, status, targetSite) {
- return true;
- },
-
- // Suppress any ssl errors
- notifySSLError: function(socketInfo, error, targetSite) {
- return true;
- },
-
// nsIInterfaceRequestor
getInterface: function(iid) {
return this.QueryInterface(iid);
@@ -198,15 +185,13 @@
// nsISupports
QueryInterface: function(iid) {
if (!iid.equals(Components.interfaces.nsIChannelEventSink) &&
- !iid.equals(Components.interfaces.nsIBadCertListener2) &&
- !iid.equals(Components.interfaces.nsISSLErrorListener) &&
!iid.equals(Components.interfaces.nsIInterfaceRequestor) &&
!iid.equals(Components.interfaces.nsISupports))
throw Components.results.NS_ERROR_NO_INTERFACE;
return this;
}
};
-//@line 184 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
+//@line 181 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"...
[truncated message content] |
|
From: <bl...@us...> - 2008-03-01 14:17:14
|
Revision: 445
http://edu2.svn.sourceforge.net/edu2/?rev=445&view=rev
Author: blackhc
Date: 2008-03-01 06:16:56 -0800 (Sat, 01 Mar 2008)
Log Message:
-----------
Remove lots of unused/unnecessary maps. Add the only useful map right now (for edu2).
Added Paths:
-----------
edu2/id1/maps/map_16_02.bsp
edu2/id1/maps/map_16_02.prt
Removed Paths:
-------------
edu2/id1/maps/Lichttest.bsp
edu2/id1/maps/Lichttest.map
edu2/id1/maps/Lichttest.prt
edu2/id1/maps/Lichttest.srf
edu2/id1/maps/abg1.bsp
edu2/id1/maps/abg1.map
edu2/id1/maps/abg1.prt
edu2/id1/maps/abg1.srf
edu2/id1/maps/abg3.bsp
edu2/id1/maps/abg3.map
edu2/id1/maps/abg3.prt
edu2/id1/maps/abg3.srf
edu2/id1/maps/abg_arbeit.bsp
edu2/id1/maps/abg_arbeit.map
edu2/id1/maps/abg_arbeit.prt
edu2/id1/maps/abg_arbeit.srf
edu2/id1/maps/abg_licht.map
edu2/id1/maps/abg_licht2.bsp
edu2/id1/maps/abg_licht2.map
edu2/id1/maps/abg_licht2.prt
edu2/id1/maps/abg_licht2.srf
edu2/id1/maps/skytest1.bsp
edu2/id1/maps/skytest1.map
edu2/id1/maps/skytest1.prt
edu2/id1/maps/skytest1.srf
Deleted: edu2/id1/maps/Lichttest.bsp
===================================================================
(Binary files differ)
Deleted: edu2/id1/maps/Lichttest.map
===================================================================
--- edu2/id1/maps/Lichttest.map 2008-03-01 09:40:57 UTC (rev 444)
+++ edu2/id1/maps/Lichttest.map 2008-03-01 14:16:56 UTC (rev 445)
@@ -1,46859 +0,0 @@
-
-// entity 0
-{
-"classname" "worldspawn"
-"maxlevel" "5"
-"maxteams" "0"
-"_color" "1 0.8 0.8"
-"angles" "30 210"
-"ambient" "0.4 0.4 0.4"
-"noise" "E:/edu/data/sound/ambient/campus01.wav"
-"radius" "100"
-"light" "40"
-// brush 0
-{
-( 63.125 -104 0 ) ( 71.125 -104 0 ) ( 63.125 24 0 ) edu_mauern/A_MIXRCK 235.1666564941 172 0 0.150000006 0.150000006 134217728 0 0
-( 63.125 -112 8 ) ( 63.125 16 8 ) ( 63.125 -112 16 ) edu_mauern/A_MIXRCK 84 0 0 0.150000006 0.150000006 134217728 0 0
-( 63.125 -120 8 ) ( 63.125 -120 16 ) ( 71.125 -120 8 ) edu_mauern/A_MIXRCK 235.1666564941 0 0 0.150000006 0.150000006 134217728 0 0
-( 71.125 16 16 ) ( 71.125 -112 16 ) ( 63.125 16 16 ) edu_mauern/A_MIXRCK 235.1666564941 172 0 0.150000006 0.150000006 134217728 0 0
-( 71.125 16 16 ) ( 71.125 16 8 ) ( 71.125 -112 16 ) edu_mauern/A_MIXRCK 84 0 0 0.150000006 0.150000006 134217728 0 0
-( 71.125 16 16 ) ( 63.125 16 16 ) ( 71.125 16 8 ) edu_mauern/A_MIXRCK 235.1666564941 0 0 0.150000006 0.150000006 134217728 0 0
-}
-// brush 1
-{
-( 55.125 16 16 ) ( 55.125 8 16 ) ( -72.875 16 16 ) edu_mauern/A_MIXRCK 235.1666564941 172 0 0.150000006 0.150000006 134217728 0 0
-( 63.125 16 8 ) ( -64.875 16 8 ) ( 63.125 16 0 ) edu_mauern/A_MIXRCK 235.1666564941 0 0 0.150000006 0.150000006 134217728 0 0
-( 63.125 16 8 ) ( 63.125 16 0 ) ( 63.125 8 8 ) edu_mauern/A_MIXRCK 84 0 0 0.150000006 0.150000006 134217728 0 0
-( -64.875 8 0 ) ( 63.125 8 0 ) ( -64.875 16 0 ) edu_mauern/A_MIXRCK 235.1666564941 172 0 0.150000006 0.150000006 134217728 0 0
-( -64.875 8 0 ) ( -64.875 8 8 ) ( 63.125 8 0 ) edu_mauern/A_MIXRCK 235.1666564941 0 0 0.150000006 0.150000006 134217728 0 0
-( -56.875 8 0 ) ( -56.875 16 0 ) ( -56.875 8 8 ) edu_mauern/A_MIXRCK 84 0 0 0.150000006 0.150000006 134217728 0 0
-}
-// brush 2
-{
-( -64.875 -104 0 ) ( -56.875 -104 0 ) ( -64.875 24 0 ) edu_mauern/A_MIXRCK 235.1666564941 172 0 0.150000006 0.150000006 134217728 0 0
-( -64.875 -112 8 ) ( -64.875 16 8 ) ( -64.875 -112 16 ) edu_mauern/A_MIXRCK 84 0 0 0.150000006 0.150000006 134217728 0 0
-( -64.875 -112 8 ) ( -64.875 -112 16 ) ( -56.875 -112 8 ) edu_mauern/A_MIXRCK 235.1666564941 0 0 0.150000006 0.150000006 134217728 0 0
-( -56.875 16 16 ) ( -56.875 -112 16 ) ( -64.875 16 16 ) edu_mauern/A_MIXRCK 235.1666564941 172 0 0.150000006 0.150000006 134217728 0 0
-( -56.875 16 16 ) ( -56.875 16 8 ) ( -56.875 -112 16 ) edu_mauern/A_MIXRCK 84 0 0 0.150000006 0.150000006 134217728 0 0
-( -56.875 16 16 ) ( -64.875 16 16 ) ( -56.875 16 8 ) edu_mauern/A_MIXRCK 235.1666564941 0 0 0.150000006 0.150000006 134217728 0 0
-}
-// brush 3
-{
-( 55.125 -112 16 ) ( 55.125 -120 16 ) ( -72.875 -112 16 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 63.125 -112 8 ) ( -64.875 -112 8 ) ( 63.125 -112 0 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 63.125 -112 8 ) ( 63.125 -112 0 ) ( 63.125 -120 8 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -64.875 -120 0 ) ( 63.125 -120 0 ) ( -64.875 -112 0 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -64.875 -120 0 ) ( -64.875 -120 8 ) ( 63.125 -120 0 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -64.875 -120 0 ) ( -64.875 -112 0 ) ( -64.875 -120 8 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 4
-{
-( -48.875 -112 24 ) ( -48.875 -120 24 ) ( -72.875 -112 24 ) edu_holz/wood02 245.4736938477 341.3333740234 0 0.2968750298 0.046875 134217728 0 0
-( -48.875 -104 24 ) ( -72.875 -104 24 ) ( -48.875 -104 16 ) edu_holz/wood02 245.4736938477 511.9998779297 0 0.2968750298 0.0156250019 134217728 0 0
-( 79.125 -120 24 ) ( 79.125 -120 16 ) ( 79.125 -128 24 ) edu_holz/wood02 170.6666259766 511.9998779297 0 0.046875 0.0156250019 134217728 0 0
-( -72.875 -120 16 ) ( -48.875 -120 16 ) ( -72.875 -112 16 ) edu_holz/wood02 245.4736938477 341.3333740234 0 0.2968750298 0.046875 134217728 0 0
-( -72.875 -128 16 ) ( -72.875 -128 24 ) ( -48.875 -128 16 ) edu_holz/wood02 245.4736938477 0 0 0.2968750298 0.0156250019 134217728 0 0
-( -72.875 -120 16 ) ( -72.875 -112 16 ) ( -72.875 -120 24 ) edu_holz/wood02 170.6666259766 511.9998779297 0 0.046875 0.0156250019 134217728 0 0
-}
-// brush 5
-{
-( -48.875 16 24 ) ( -48.875 8 24 ) ( -72.875 16 24 ) edu_holz/wood02 245.4736785889 0 0 0.2968749702 0.046875 134217728 0 0
-( -48.875 24 24 ) ( -72.875 24 24 ) ( -48.875 24 16 ) edu_holz/wood02 245.4736785889 511.9998779297 0 0.2968749702 0.0156250019 134217728 0 0
-( 79.125 8 24 ) ( 79.125 8 16 ) ( 79.125 0 24 ) edu_holz/wood02 511.9999389648 511.9998779297 0 0.0468749963 0.0156250019 134217728 0 0
-( -72.875 8 16 ) ( -48.875 8 16 ) ( -72.875 16 16 ) edu_holz/wood02 245.4736785889 0 0 0.2968749702 0.046875 134217728 0 0
-( -72.875 0 16 ) ( -72.875 0 24 ) ( -48.875 0 16 ) edu_holz/wood02 245.4736785889 0 0 0.2968749702 0.0156250019 134217728 0 0
-( -72.875 8 16 ) ( -72.875 16 16 ) ( -72.875 8 24 ) edu_holz/wood02 511.9999389648 511.9998779297 0 0.0468749963 0.0156250019 134217728 0 0
-}
-// brush 6
-{
-( 199.125 0 24 ) ( 199.125 -104 24 ) ( 63.125 0 24 ) edu_holz/wood02 359.9998168945 0 0 0.0468749963 0.2031250149 134217728 0 0
-( 199.125 0 24 ) ( 63.125 0 24 ) ( 199.125 0 16 ) edu_holz/wood02 359.9998168945 511.9997558594 0 0.0468749963 0.0156250037 134217728 0 0
-( 79.125 0 24 ) ( 79.125 0 16 ) ( 79.125 -104 24 ) edu_holz/wood02 511.9999694824 511.9997558594 0 0.2031250149 0.0156250037 134217728 0 0
-( 63.125 -104 16 ) ( 199.125 -104 16 ) ( 63.125 0 16 ) edu_holz/wood02 359.9998168945 0 0 0.0468749963 0.2031250149 134217728 0 0
-( 63.125 -104 16 ) ( 63.125 -104 24 ) ( 199.125 -104 16 ) edu_holz/wood02 359.9998168945 511.9997558594 0 0.0468749963 0.0156250037 134217728 0 0
-( 55.125 -104 16 ) ( 55.125 0 16 ) ( 55.125 -104 24 ) edu_holz/wood02 511.9999694824 511.9997558594 0 0.2031250149 0.0156250037 134217728 0 0
-}
-// brush 7
-{
-( 71.125 0 24 ) ( 71.125 -104 24 ) ( -64.875 0 24 ) edu_holz/wood02 18.6668224335 0 0 0.0468749963 0.2031250149 134217728 0 0
-( 71.125 0 24 ) ( -64.875 0 24 ) ( 71.125 0 16 ) edu_holz/wood02 18.6668224335 511.9997558594 0 0.0468749963 0.0156250037 134217728 0 0
-( -48.875 0 24 ) ( -48.875 0 16 ) ( -48.875 -104 24 ) edu_holz/wood02 511.9999694824 511.9997558594 0 0.2031250149 0.0156250037 134217728 0 0
-( -64.875 -104 16 ) ( 71.125 -104 16 ) ( -64.875 0 16 ) edu_holz/wood02 18.6668224335 0 0 0.0468749963 0.2031250149 134217728 0 0
-( -64.875 -104 16 ) ( -64.875 -104 24 ) ( 71.125 -104 16 ) edu_holz/wood02 18.6668224335 511.9997558594 0 0.0468749963 0.0156250037 134217728 0 0
-( -72.875 -104 16 ) ( -72.875 0 16 ) ( -72.875 -104 24 ) edu_holz/wood02 511.9999694824 511.9997558594 0 0.2031250149 0.0156250037 134217728 0 0
-}
-// brush 8
-{
-( -56.875 -106 128 ) ( -56.875 -120 128 ) ( -68.875 -120 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -68.875 -120 24 ) ( -56.875 -120 24 ) ( -56.875 -106 24 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -55.875 -113 24 ) ( -55.875 -113 128 ) ( -55.875 -106 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -56.875 -109 24 ) ( -56.875 -109 128 ) ( -60.875 -103 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -60.875 -106 24 ) ( -60.875 -106 128 ) ( -67.875 -104 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -64.875 -106 24 ) ( -64.875 -106 128 ) ( -71.875 -108 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -68.875 -109 24 ) ( -68.875 -109 128 ) ( -72.875 -115 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -69.875 -113 24 ) ( -69.875 -113 128 ) ( -69.875 -120 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -117 24 ) ( -68.875 -117 128 ) ( -64.875 -123 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -64.875 -120 24 ) ( -64.875 -120 128 ) ( -57.875 -122 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -60.875 -120 24 ) ( -60.875 -120 128 ) ( -53.875 -118 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -56.875 -117 24 ) ( -56.875 -117 128 ) ( -52.875 -111 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 9
-{
-( -56.875 16 128 ) ( -56.875 2 128 ) ( -68.875 2 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -68.875 2 24 ) ( -56.875 2 24 ) ( -56.875 16 24 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -55.875 9 24 ) ( -55.875 9 128 ) ( -55.875 16 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -56.875 13 24 ) ( -56.875 13 128 ) ( -60.875 19 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -60.875 16 24 ) ( -60.875 16 128 ) ( -67.875 18 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -64.875 16 24 ) ( -64.875 16 128 ) ( -71.875 14 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -68.875 13 24 ) ( -68.875 13 128 ) ( -72.875 7 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -69.875 9 24 ) ( -69.875 9 128 ) ( -69.875 2 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 5 24 ) ( -68.875 5 128 ) ( -64.875 -1 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -64.875 2 24 ) ( -64.875 2 128 ) ( -57.875 0 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -60.875 2 24 ) ( -60.875 2 128 ) ( -53.875 4 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -56.875 5 24 ) ( -56.875 5 128 ) ( -52.875 11 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 10
-{
-( 75.125 -106 128 ) ( 75.125 -120 128 ) ( 63.125 -120 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 63.125 -120 24 ) ( 75.125 -120 24 ) ( 75.125 -106 24 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 76.125 -113 24 ) ( 76.125 -113 128 ) ( 76.125 -106 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -109 24 ) ( 75.125 -109 128 ) ( 71.125 -103 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 71.125 -106 24 ) ( 71.125 -106 128 ) ( 64.125 -104 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 67.125 -106 24 ) ( 67.125 -106 128 ) ( 60.125 -108 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 63.125 -109 24 ) ( 63.125 -109 128 ) ( 59.125 -115 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 62.125 -113 24 ) ( 62.125 -113 128 ) ( 62.125 -120 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 63.125 -117 24 ) ( 63.125 -117 128 ) ( 67.125 -123 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 67.125 -120 24 ) ( 67.125 -120 128 ) ( 74.125 -122 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 71.125 -120 24 ) ( 71.125 -120 128 ) ( 78.125 -118 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 75.125 -117 24 ) ( 75.125 -117 128 ) ( 79.125 -111 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 11
-{
-( 75.125 16 128 ) ( 75.125 2 128 ) ( 63.125 2 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 63.125 2 24 ) ( 75.125 2 24 ) ( 75.125 16 24 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 76.125 9 24 ) ( 76.125 9 128 ) ( 76.125 16 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 13 24 ) ( 75.125 13 128 ) ( 71.125 19 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 71.125 16 24 ) ( 71.125 16 128 ) ( 64.125 18 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 67.125 16 24 ) ( 67.125 16 128 ) ( 60.125 14 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 63.125 13 24 ) ( 63.125 13 128 ) ( 59.125 7 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 62.125 9 24 ) ( 62.125 9 128 ) ( 62.125 2 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 63.125 5 24 ) ( 63.125 5 128 ) ( 67.125 -1 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 67.125 2 24 ) ( 67.125 2 128 ) ( 74.125 0 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 71.125 2 24 ) ( 71.125 2 128 ) ( 78.125 4 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 75.125 5 24 ) ( 75.125 5 128 ) ( 79.125 11 128 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 12
-{
-( -58.875 -129 136 ) ( -58.875 -137 136 ) ( -65.875 -129 136 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -58.875 -115 270 ) ( -65.875 -115 270 ) ( -58.875 -115 72 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 72.125 -120 270 ) ( 72.125 -120 72 ) ( 72.125 -128 270 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -65.875 -114 128 ) ( -58.875 -114 128 ) ( -65.875 -106 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -65.875 -120 72 ) ( -65.875 -120 270 ) ( -58.875 -120 72 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -65.875 -123 72 ) ( -65.875 -115 72 ) ( -65.875 -123 270 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 13
-{
-( -58.875 2 136 ) ( -58.875 -6 136 ) ( -65.875 2 136 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -58.875 16 270 ) ( -65.875 16 270 ) ( -58.875 16 72 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 72.125 11 270 ) ( 72.125 11 72 ) ( 72.125 3 270 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -65.875 17 128 ) ( -58.875 17 128 ) ( -65.875 25 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -65.875 11 72 ) ( -65.875 11 270 ) ( -58.875 11 72 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -65.875 8 72 ) ( -65.875 16 72 ) ( -65.875 8 270 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 14
-{
-( 72.125 11 136 ) ( 72.125 -20 136 ) ( 67.125 11 136 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 72.125 11 136 ) ( 67.125 11 136 ) ( 72.125 11 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 72.125 11 136 ) ( 72.125 11 128 ) ( 72.125 -20 136 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 67.125 -20 128 ) ( 72.125 -20 128 ) ( 67.125 11 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 67.125 -115 128 ) ( 67.125 -115 136 ) ( 72.125 -115 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 67.125 -20 128 ) ( 67.125 11 128 ) ( 67.125 -20 136 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 15
-{
-( -60.875 11 136 ) ( -60.875 -20 136 ) ( -65.875 11 136 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -60.875 11 136 ) ( -65.875 11 136 ) ( -60.875 11 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -60.875 11 136 ) ( -60.875 11 128 ) ( -60.875 -20 136 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -65.875 -20 128 ) ( -60.875 -20 128 ) ( -65.875 11 128 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -65.875 -115 128 ) ( -65.875 -115 136 ) ( -60.875 -115 128 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -65.875 -20 128 ) ( -65.875 11 128 ) ( -65.875 -20 136 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 16
-{
-( 83.125 -123 180 ) ( 83.125 -131 180 ) ( -76.875 -123 180 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 29 156 ) ( -76.875 29 156 ) ( 83.125 29 148 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -123 156 ) ( 83.125 -123 148 ) ( 83.125 -131 156 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 148 ) ( -76.875 -131 156 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 148 ) ( -76.875 -123 148 ) ( -76.875 -131 156 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -123 172 ) ( 83.125 -131 172 ) ( 83.125 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 17
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 29 148 ) ( -76.875 29 148 ) ( 83.125 29 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 21 140 ) ( -76.875 21 148 ) ( 83.125 21 148 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 18
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -131 148 ) ( 83.125 -131 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -123 140 ) ( -76.875 -123 148 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 19
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 29 148 ) ( -76.875 29 148 ) ( 83.125 29 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 19 161 ) ( 83.125 19 150 ) ( -76.875 19 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 20
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 19 150 ) ( 83.125 19 150 ) ( 83.125 19 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 4 172 ) ( 83.125 14 166 ) ( -76.875 14 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 21
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 14 166 ) ( 83.125 14 166 ) ( 83.125 4 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -7 160 ) ( 83.125 3 166 ) ( -76.875 3 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -11 161 ) ( 83.125 -11 150 ) ( -76.875 -11 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 22
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -11 150 ) ( 83.125 -11 150 ) ( 83.125 -11 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -26 172 ) ( 83.125 -16 166 ) ( -76.875 -16 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 23
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -16 166 ) ( 83.125 -16 166 ) ( 83.125 -26 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -37 160 ) ( 83.125 -27 166 ) ( -76.875 -27 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -69 161 ) ( 83.125 -69 150 ) ( -76.875 -69 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 24
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -69 150 ) ( 83.125 -69 150 ) ( 83.125 -69 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -84 172 ) ( 83.125 -74 166 ) ( -76.875 -74 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 25
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -99 161 ) ( 83.125 -99 150 ) ( -76.875 -99 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -74 166 ) ( 83.125 -74 166 ) ( 83.125 -84 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -95 160 ) ( 83.125 -85 166 ) ( -76.875 -85 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 26
-{
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -99 161 ) ( 83.125 -99 150 ) ( -76.875 -99 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -85 166 ) ( 83.125 -85 166 ) ( 83.125 -95 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -91 139 ) ( 83.125 -91 150 ) ( -76.875 -91 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 27
-{
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -7 160 ) ( 83.125 3 166 ) ( -76.875 3 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -27 166 ) ( 83.125 -27 166 ) ( 83.125 -37 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -33 139 ) ( 83.125 -33 150 ) ( -76.875 -33 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -69 161 ) ( 83.125 -69 150 ) ( -76.875 -69 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 28
-{
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 3 166 ) ( 83.125 3 166 ) ( 83.125 -7 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -3 139 ) ( 83.125 -3 150 ) ( -76.875 -3 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -11 161 ) ( 83.125 -11 150 ) ( -76.875 -11 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 29
-{
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 3 166 ) ( 83.125 3 166 ) ( 83.125 -7 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -33 139 ) ( 83.125 -33 150 ) ( -76.875 -33 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 30
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -99 150 ) ( 83.125 -99 150 ) ( 83.125 -99 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -114 172 ) ( 83.125 -104 166 ) ( -76.875 -104 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 31
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -131 148 ) ( 83.125 -131 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -104 166 ) ( 83.125 -104 166 ) ( 83.125 -114 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -125 160 ) ( 83.125 -115 166 ) ( -76.875 -115 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 32
-{
-( 83.125 -123 148 ) ( 83.125 -123 140 ) ( 83.125 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -131 148 ) ( 83.125 -131 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 75.125 -131 148 ) ( 75.125 -123 140 ) ( 75.125 -123 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -115 166 ) ( 83.125 -115 166 ) ( 83.125 -125 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -121 139 ) ( 83.125 -121 150 ) ( -76.875 -121 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 33
-{
-( 84.125 29 140 ) ( -75.875 29 140 ) ( 84.125 29 132 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 84.125 -123 140 ) ( 84.125 -123 132 ) ( 84.125 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -131 140 ) ( 84.125 -131 132 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -120.5 150.9333343506 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -99 173.0666656494 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-}
-// brush 34
-{
-( 84.125 29 140 ) ( -75.875 29 140 ) ( 84.125 29 132 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 19 173 ) ( 83.125 19 162 ) ( -76.875 19 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 35
-{
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -7 172 ) ( 83.125 3 178 ) ( -76.875 3 178 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -69 173 ) ( 83.125 -69 162 ) ( -76.875 -69 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 36
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173 ) ( 83.125 -99 162 ) ( -76.875 -99 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -91 151 ) ( 83.125 -91 162 ) ( -76.875 -91 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 37
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -7 172 ) ( 83.125 3 178 ) ( -76.875 3 178 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -91 162 ) ( 83.125 -91 162 ) ( 83.125 -91 151 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -75 137 ) ( 83.125 -85 143 ) ( -76.875 -85 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 38
-{
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -7 172 ) ( 83.125 3 178 ) ( -76.875 3 178 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -69 162 ) ( 83.125 -69 162 ) ( 83.125 -69 173 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -85 143 ) ( 83.125 -85 143 ) ( 83.125 -75 137 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -64 149 ) ( 83.125 -74 143 ) ( -76.875 -74 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 39
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -3 151 ) ( 83.125 -3 162 ) ( -76.875 -3 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -11 173 ) ( 83.125 -11 162 ) ( -76.875 -11 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 40
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 3 178 ) ( 83.125 3 178 ) ( 83.125 -7 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -33 151 ) ( 83.125 -33 162 ) ( -76.875 -33 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 41
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -11 162 ) ( 83.125 -11 162 ) ( 83.125 -11 173 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -33 162 ) ( 83.125 -33 162 ) ( 83.125 -33 151 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -17 137 ) ( 83.125 -27 143 ) ( -76.875 -27 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 42
-{
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -11 162 ) ( 83.125 -11 162 ) ( 83.125 -11 173 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -27 143 ) ( 83.125 -27 143 ) ( 83.125 -17 137 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -6 149 ) ( 83.125 -16 143 ) ( -76.875 -16 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 43
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 19 162 ) ( 83.125 19 162 ) ( 83.125 19 173 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -3 162 ) ( 83.125 -3 162 ) ( 83.125 -3 151 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 13 137 ) ( 83.125 3 143 ) ( -76.875 3 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 44
-{
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 19 162 ) ( 83.125 19 162 ) ( 83.125 19 173 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 3 143 ) ( 83.125 3 143 ) ( 83.125 13 137 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 24 149 ) ( 83.125 14 143 ) ( -76.875 14 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 45
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -131 140 ) ( 84.125 -131 132 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -121 151 ) ( 83.125 -121 162 ) ( -76.875 -121 162 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 46
-{
-( -75.875 -131 132 ) ( 84.125 -131 132 ) ( -75.875 -123 132 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -99 162 ) ( 83.125 -99 162 ) ( 83.125 -99 173 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -121 162 ) ( 83.125 -121 162 ) ( 83.125 -121 151 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -105 137 ) ( 83.125 -115 143 ) ( -76.875 -115 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 47
-{
-( -75.875 -131 132 ) ( -75.875 -123 132 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -75.875 -123 140 ) ( 84.125 -131 140 ) ( -75.875 -131 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -99 173.0666656494 ) ( 83.125 -99 150.9333343506 ) ( 83.125 -120.5 150.9333343506 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -99 162 ) ( 83.125 -99 162 ) ( 83.125 -99 173 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -115 143 ) ( 83.125 -115 143 ) ( 83.125 -105 137 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -94 149 ) ( 83.125 -104 143 ) ( -76.875 -104 143 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 48
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 29 148 ) ( -76.875 29 148 ) ( 83.125 29 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 19 161 ) ( 83.125 19 150 ) ( -76.875 19 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 49
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 19 150 ) ( 83.125 19 150 ) ( 83.125 19 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 4 172 ) ( 83.125 14 166 ) ( -76.875 14 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 50
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 14 166 ) ( 83.125 14 166 ) ( 83.125 4 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -7 160 ) ( 83.125 3 166 ) ( -76.875 3 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -11 161 ) ( 83.125 -11 150 ) ( -76.875 -11 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 51
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -11 150 ) ( 83.125 -11 150 ) ( 83.125 -11 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -26 172 ) ( 83.125 -16 166 ) ( -76.875 -16 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 52
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -16 166 ) ( 83.125 -16 166 ) ( 83.125 -26 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -37 160 ) ( 83.125 -27 166 ) ( -76.875 -27 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -69 161 ) ( 83.125 -69 150 ) ( -76.875 -69 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 53
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -69 150 ) ( 83.125 -69 150 ) ( 83.125 -69 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -84 172 ) ( 83.125 -74 166 ) ( -76.875 -74 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 54
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -99 161 ) ( 83.125 -99 150 ) ( -76.875 -99 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -74 166 ) ( 83.125 -74 166 ) ( 83.125 -84 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -95 160 ) ( 83.125 -85 166 ) ( -76.875 -85 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 55
-{
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -99 161 ) ( 83.125 -99 150 ) ( -76.875 -99 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -85 166 ) ( 83.125 -85 166 ) ( 83.125 -95 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -91 139 ) ( 83.125 -91 150 ) ( -76.875 -91 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 56
-{
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( 83.125 -7 160 ) ( 83.125 3 166 ) ( -76.875 3 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -27 166 ) ( 83.125 -27 166 ) ( 83.125 -37 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -33 139 ) ( 83.125 -33 150 ) ( -76.875 -33 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -69 161 ) ( 83.125 -69 150 ) ( -76.875 -69 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 57
-{
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 3 166 ) ( 83.125 3 166 ) ( 83.125 -7 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -3 139 ) ( 83.125 -3 150 ) ( -76.875 -3 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -11 161 ) ( 83.125 -11 150 ) ( -76.875 -11 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 58
-{
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 3 166 ) ( 83.125 3 166 ) ( 83.125 -7 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -33 139 ) ( 83.125 -33 150 ) ( -76.875 -33 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 59
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -99 150 ) ( 83.125 -99 150 ) ( 83.125 -99 161 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( 83.125 -114 172 ) ( 83.125 -104 166 ) ( -76.875 -104 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 60
-{
-( 83.125 -123 172 ) ( 83.125 -131 172 ) ( -76.875 -123 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -131 148 ) ( 83.125 -131 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -104 166 ) ( 83.125 -104 166 ) ( 83.125 -114 172 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -125 160 ) ( 83.125 -115 166 ) ( -76.875 -115 166 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-}
-// brush 61
-{
-( -76.875 -131 140 ) ( 83.125 -131 140 ) ( -76.875 -123 140 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -131 148 ) ( 83.125 -131 140 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-( -76.875 -131 140 ) ( -76.875 -123 140 ) ( -76.875 -131 148 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -68.875 -131 148 ) ( -68.875 -123 140 ) ( -68.875 -131 140 ) edu_mauern/A_MIXRCK 102 0 0 0.5 0.5 134217728 0 0
-( -76.875 -115 166 ) ( 83.125 -115 166 ) ( 83.125 -125 160 ) edu_mauern/A_MIXRCK 249.75 154 0 0.5 0.5 134217728 0 0
-( 83.125 -121 139 ) ( 83.125 -121 150 ) ( -76.875 -121 150 ) edu_mauern/A_MIXRCK 249.75 0 0 0.5 0.5 134217728 0 0
-}
-// brush 62
-{
-( -108.875 -163 180 ) ( 115.125 -163 180 ) ( 115.125 60 180 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( 115.125 -50 201 ) ( 3.125 -50.5 252 ) ( 115.125 62 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( 89.125 21 201 ) ( 3.125 -50.5 252 ) ( 17.125 107 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( 22.125 60 201 ) ( 3.125 -50.5 252 ) ( -87.875 79 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( -52.875 46 201 ) ( 3.125 -50.5 252 ) ( -149.875 -10 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( -101.875 -12 201 ) ( 3.125 -50.5 252 ) ( -139.875 -117 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( -101.875 -89 201 ) ( 3.125 -50.5 252 ) ( -63.875 -194 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( -52.875 -147 201 ) ( 3.125 -50.5 252 ) ( 44.125 -203 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( 22.125 -161 201 ) ( 3.125 -50.5 252 ) ( 132.125 -142 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-( 89.125 -122 201 ) ( 3.125 -50.5 252 ) ( 161.125 -36 252 ) edu_holz/wood02 505.75 410 0 0.5 0.5 134217728 0 0
-}
-// brush 63
-{
-( -1200 -440 264 ) ( -1728 -440 264 ) ( -1200 104 264 ) edu_tapete/kacheln 23.5402526855 126.0307769775 0 0.150000006 0.150000006 134217728 0 0
-( -1328 -254 240 ) ( -1328 290 240 ) ( -1328 -254 232 ) edu_tapete/beige 0 0 0 0.5 0.5 134217728 0 0
-( -1608 -792 256 ) ( -1608 -792 248 ) ( -2136 -792 256 ) edu_boden/bluetile 0 0 0 0.5 0.5 134217728 0 0
-( -1728 184 240 ) ( -1728 -360 240 ) ( -1200 184 240 ) edu_tapete/decke 0 0 0 0.5 0.5 134217728 0 0
-( -2024 409 240 ) ( -2024 409 248 ) ( -2024 -135 240 ) edu_mauern/stonewall2 0 0 0 0.5 0.5 134217728 0 0
-( -1928 768 248 ) ( -1400 768 248 ) ( -1928 768 256 ) edu_boden/bluetile 0 0 0 0.5 0.5 134217728 0 0
-}
-// brush 64
-{
-( -1160 -696 464 ) ( -1688 -696 464 ) ( -1160 -152 464 ) edu_boden/bluetile 0 0 0 0.5 0.5 0 0 0
-( -1016 -648 440 ) ( -1016 -104 440 ) ( -1016 -648 432 ) edu_tapete/beige 148.2409667969 110.6694335938 0 0.8634589911 0.0722891316 0 0 0
-( -1208 -792 448 ) ( -1208 -792 440 ) ( -1736 -792 448 ) edu_boden/bluetile 0 0 0 0.5 0.5 0 0 0
-( -1688 -128 440 ) ( -1688 -672 440 ) ( -1160 -128 440 ) edu_tapete/decke 0 0 0 0.5 0.5 0 0 0
-( -2024 -160 440 ) ( -2024 -160 448 ) ( -2024 -704 440 ) edu_mauern/stonewall2 0 0 0 0.5 0.5 0 0 0
-( -1240 -128 456 ) ( -712 -128 456 ) ( -1240 -128 464 ) edu_tapete/decke 0 0 0 0.5 0.5 0 0 0
-}
-// brush 65
-{
-( -1016 -336 472 ) ( -1016 336 472 ) ( -1016 -336 88 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( -2112 328 136 ) ( -2112 -344 136 ) ( 192 328 136 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-( -1040 336 -64 ) ( -1040 336 320 ) ( -1040 -336 -64 ) edu_tapete/beige 384.5 295.1111450195 0 0.5409622788 0.2168674469 0 0 0
-( -2112 208 40 ) ( 192 208 40 ) ( -2112 208 424 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1016 -208 272 ) ( -1016 -208 208 ) ( -1040 -208 272 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1016 32 208 ) ( -1040 -96 208 ) ( -1040 32 208 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-}
-// brush 66
-{
-( -1016 -336 472 ) ( -1016 336 472 ) ( -1016 -336 88 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( -1040 336 -64 ) ( -1040 336 320 ) ( -1040 -336 -64 ) edu_tapete/beige 461.3999633789 99.5999145508 0 0.3120936155 0.4819277823 0 0 0
-( -2112 336 48 ) ( 192 336 48 ) ( -2112 336 432 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1016 -40 368 ) ( -1040 -40 368 ) ( -1016 88 368 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1040 32 208 ) ( -1040 -96 208 ) ( -1016 32 208 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1040 96 328 ) ( -1016 96 264 ) ( -1040 96 264 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-}
-// brush 67
-{
-( 192 -336 440 ) ( -2112 -336 440 ) ( 192 336 440 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1016 -336 472 ) ( -1016 336 472 ) ( -1016 -336 88 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( 192 -336 432 ) ( 192 -336 48 ) ( -2112 -336 432 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1040 336 -48 ) ( -1040 336 336 ) ( -1040 -336 -48 ) edu_tapete/beige 384.5 248.9951171875 0 0.8738621473 0.0963856652 0 0 0
-( -2112 336 48 ) ( 192 336 48 ) ( -2112 336 432 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1008 -128 408 ) ( -1008 0 408 ) ( -1048 0 408 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-}
-// brush 68
-{
-( -1016 -336 472 ) ( -1016 336 472 ) ( -1016 -336 88 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( 192 -336 432 ) ( 192 -336 48 ) ( -2112 -336 432 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1040 336 -64 ) ( -1040 336 320 ) ( -1040 -336 -64 ) edu_tapete/beige 23.5153198242 66.4006347656 0 0.4239665866 0.1204819158 0 0 0
-( -1016 88 368 ) ( -1040 -40 368 ) ( -1016 -40 368 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1048 0 408 ) ( -1008 0 408 ) ( -1008 -128 408 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1008 -149 371 ) ( -1008 -25 404 ) ( -1048 -25 404 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-}
-// brush 69
-{
-( -1016 -336 472 ) ( -1016 336 472 ) ( -1016 -336 88 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( -1040 336 -64 ) ( -1040 336 320 ) ( -1040 -336 -64 ) edu_tapete/beige 261.7469482422 187.37109375 0 0.155491814 0.0958490446 0 0 0
-( -1016 88 368 ) ( -1040 -40 368 ) ( -1016 -40 368 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1048 -25 404 ) ( -1008 -25 404 ) ( -1008 -149 371 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1008 -167 327 ) ( -1008 -56 391 ) ( -1048 -56 391 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-}
-// brush 70
-{
-( -1016 -336 472 ) ( -1016 336 472 ) ( -1016 -336 88 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( -1040 336 -64 ) ( -1040 336 320 ) ( -1040 -336 -64 ) edu_tapete/beige 702.4606933594 66.4006347656 0 0.4021354914 0.1204819158 0 0 0
-( -2112 336 48 ) ( 192 336 48 ) ( -2112 336 432 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1016 88 368 ) ( -1040 -40 368 ) ( -1016 -40 368 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1048 0 408 ) ( -1008 0 408 ) ( -1008 -128 408 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1008 -55.625 455.5 ) ( -1008 55.375 391.5 ) ( -1048 55.375 391.5 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-}
-// brush 71
-{
-( -1016 -336 472 ) ( -1016 336 472 ) ( -1016 -336 88 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1040 336 -64 ) ( -1040 336 320 ) ( -1040 -336 -64 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1048 0 408 ) ( -1008 0 408 ) ( -1008 -128 408 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1048 55.375 391.5 ) ( -1008 55.375 391.5 ) ( -1008 -55.625 455.5 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1008 -99 437 ) ( -1008 25 404 ) ( -1048 25 404 ) edu_tapete/beige 0 0 0 0.25 0.25 0 0 0
-}
-// brush 72
-{
-( -976 -96 308 ) ( -2512 -96 308 ) ( -976 96 308 ) edu_holz/wood02 0 0 0 0.5 0.5 134217728 0 0
-( -1024 -96 304 ) ( -1024 96 304 ) ( -1024 -96 300 ) edu_holz/schwarz 0 0 0 0.5 0.5 134217728 0 0
-( -1016 -96 308 ) ( -1016 -96 304 ) ( -2552 -96 308 ) edu_holz/wood02 0 0 0 0.5 0.5 134217728 0 0
-( -1068 96 304 ) ( -1068 -96 304 ) ( 468 96 304 ) edu_holz/wood02 0 0 0 0.5 0.5 134217728 0 0
-( -1032 96 288 ) ( -1032 96 292 ) ( -1032 -96 288 ) edu_holz/wood02 0 0 0 0.5 0.5 134217728 0 0
-( -2552 96 304 ) ( -1016 96 304 ) ( -2552 96 308 ) edu_holz/wood02 0 0 0 0.5 0.5 134217728 0 0
-}
-// brush 73
-{
-( -976 -2 222 ) ( -2512 -2 222 ) ( -976 -2 414 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -1024 2 248 ) ( -1024 2 440 ) ( -1024 6 248 ) edu_holz/schwarz 0 0 90 0.5 0.5 134217728 0 0
-( -1016 0 308 ) ( -1016 4 308 ) ( -2552 0 308 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -1068 2 440 ) ( -1068 2 248 ) ( 468 2 440 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -1032 18 440 ) ( -1032 14 440 ) ( -1032 18 248 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -2552 2 408 ) ( -1016 2 408 ) ( -2552 -2 408 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-}
-// brush 74
-{
-( -976 -2 118 ) ( -2512 -2 118 ) ( -976 -2 310 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -1024 2 144 ) ( -1024 2 336 ) ( -1024 6 144 ) edu_holz/schwarz 0 0 90 0.5 0.5 134217728 0 0
-( -1016 2 208 ) ( -1016 6 208 ) ( -2552 2 208 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -1068 2 336 ) ( -1068 2 144 ) ( 468 2 336 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -1032 18 336 ) ( -1032 14 336 ) ( -1032 18 144 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-( -2552 2 304 ) ( -1016 2 304 ) ( -2552 -2 304 ) edu_holz/wood02 0 0 90 0.5 0.5 134217728 0 0
-}
-// brush 75
-{
-( -1024 -2 416 ) ( -1026 -2 416 ) ( -1024 2 416 ) sav-liquids/glass_tube 0 0 0 0.5 0.5 0 0 0
-( -1026 -112 292 ) ( -1026 -108 292 ) ( -1026 -112 208 ) sav-liquids/glass_tube 0 0 0 0.5 0.5 0 0 0
-( -1024 -94 292 ) ( -1024 -94 208 ) ( -1026 -94 292 ) sav-liquids/glass_tube 0 0 0 0.5 0.5 0 0 0
-( -1030 2 208 ) ( -1030 -2 208 ) ( -1028 2 208 ) sav-liquids/glass_tube 0 0 0 0.5 0.5 0 0 0
-( -1030 20 208 ) ( -1030 20 292 ) ( -1030 16 208 ) sav-liquids/glass_tube 0 0 0 0.5 0.5 0 0 0
-( -1022 94 208 ) ( -1020 94 208 ) ( -1022 94 292 ) sav-liquids/glass_tube 0 0 0 0.5 0.5 0 0 0
-}
-// brush 76
-{
-( -1016 336 440 ) ( -2456 336 440 ) ( -1016 768 440 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1016 336 424 ) ( -1016 768 424 ) ( -1016 336 48 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( -1016 336 424 ) ( -1016 336 48 ) ( -2456 336 424 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -2456 768 0 ) ( -2456 336 0 ) ( -1016 768 0 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1040 872 64 ) ( -1040 872 440 ) ( -1040 440 64 ) edu_tapete/beige 170.8888549805 331.9999694824 0 0.5617685318 1.3253012896 0 0 0
-( -2456 768 48 ) ( -1016 768 48 ) ( -2456 768 424 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-}
-// brush 77
-{
-( -1016 -768 440 ) ( -2456 -768 440 ) ( -1016 -336 440 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1016 -768 424 ) ( -1016 -336 424 ) ( -1016 -768 48 ) edu_martin/d_wall01 0 0 0 0.25 0.25 0 0 0
-( -1016 -768 424 ) ( -1016 -768 48 ) ( -2456 -768 424 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -2456 -336 0 ) ( -2456 -768 0 ) ( -1016 -336 0 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1040 -232 64 ) ( -1040 -232 440 ) ( -1040 -664 64 ) edu_tapete/beige 598.1110839844 331.9999694824 0 0.5617685318 1.3253012896 0 0 0
-( -2456 -336 48 ) ( -1016 -336 48 ) ( -2456 -336 424 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-}
-// brush 78
-{
-( -2000 -392 440 ) ( -2000 1048 440 ) ( -1568 -392 440 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -2000 -384 440 ) ( -1568 -384 440 ) ( -2000 -384 64 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -2008 -392 440 ) ( -2008 -392 64 ) ( -2008 1048 440 ) edu_mauern/brck14M 0 0 0 0.2499999851 0.25 0 0 0
-( -1560 1048 264 ) ( -1992 1048 264 ) ( -1560 -392 264 ) edu_mauern/brck14M 0 0 0 0.25 0.25 0 0 0
-( -1464 -368 64 ) ( -1464 -368 440 ) ( -1896 -368 64 ) edu_tapete/blau 863.9990234375 255.9998779297 0 0.2500000596 0.3437500298 0 0 0
-( -1752 1048 72 ) ( -1752 -392 72 ) ( -1752 1048 448 ) edu_tapete/beige 768.990234375 165.9999389648 0 0.020806253 0.5301205516 0 0 0
-}
-// brush 79
-{
-( -1330 8 440 ) ( -2770 8 440 ) ( -1330 440 440 ) edu_mauern/brck14M 8 0 0 0.2499999851 0.25 0 0 0
-( -1328 7.875 440 ) ( -1328 439.875 440 ) ( -1328 7.875 64 ) edu_tapete/beige 307.6000976563 165.9999389648 0 0.4161248207 0.5301205516 0 0 0
-( -1330 -448 440 ) ( -1330 -448 64 ) ( -2770 -448 440 ) edu_tapete/tapete_eier 8 0 0 0.2499999851 0.25 0 0 0
-( -2770 448 264 ) ( -2770 16 264 ) ( -1330 448 264 ) edu_mauern/brck14M 8 0 0 0.2499999851 0.25 0 0 0
-( -1354 544 64 ) ( -1354 544 440 ) ( -1354 112 64 ) edu_tapete/normal 308.0207519531 166 0 0.4159622788 0.530120492 0 0 0
-( -2768 -128.125 52.5 ) ( -1328 -128.125 52.5 ) ( -2768 -128.125 428.5 ) edu_mauern/brck14M 8 0 0 0.2499999851 0.25 0 0 0
-}
-// brush 80
-{
-( 752 96 8 ) ( -1296 96 8 ) ( 752 128 8 ) edu_tapete/kacheln 0 0 0 0.150000006 0.150000006 0 0 0
-( -1168 224 16 ) ( -1168 256 16 ) ( -1168 224 0 ) edu_tapete/kacheln 0 0 0 0.150000006 0.150000006 0 0 0
-( 752 0 40 ) ( 752 0 24 ) ( -1296 0 40 ) edu_tapete/kacheln 0 0 0 0.150000006 0.150000006 0 0 0
-( -3320 64 0 ) ( -3320 32 0 ) ( -1272 64 0 ) edu_tapete/kacheln 0 0 0 0.150000006 0.150000006 0 0 0
-( -1192 144 24 ) ( -1192 144 40 ) ( -1192 112 24 ) edu_tapete/kacheln 0 0 0 0.150000006 0.150000006 0 0 0
-( -1...
[truncated message content] |
|
From: <bl...@us...> - 2008-03-01 09:41:10
|
Revision: 444
http://edu2.svn.sourceforge.net/edu2/?rev=444&view=rev
Author: blackhc
Date: 2008-03-01 01:40:57 -0800 (Sat, 01 Mar 2008)
Log Message:
-----------
Lots of changes from the past days.
Modified Paths:
--------------
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2/progs.dat
edu2/edu2/progs.lno
edu2/edu2/quake.rc
edu2/id1/maps/map_16_02.map
edu2/id1/qcsrc/game/g_triggers.qc
edu2/id1/qcsrc/game/progs.src
edu2/id1/qcsrc/menu/classes.c
edu2/id1/qcsrc/menu/edu2/dialog_login.c
edu2/id1/qcsrc/menu/edu2/gamelist.c
edu2/id1/qcsrc/menu/gamecommand.qc
edu2/id1/qcsrc/menu/nexuiz/mainwindow.c
Added Paths:
-----------
edu2/edu2_start.bat
edu2/id1/qcsrc/menu/edu2/dialog_buy.c
edu2/id1/qcsrc/menu/edu2/dialog_gamestub.c
edu2/start-edu1.bat
edu2/start-edu2.bat
Removed Paths:
-------------
edu2/edu2_start.exe
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/quake.rc
===================================================================
--- edu2/edu2/quake.rc 2008-02-28 03:12:54 UTC (rev 443)
+++ edu2/edu2/quake.rc 2008-03-01 09:40:57 UTC (rev 444)
@@ -1,6 +1,5 @@
-set edu2map abg_licht2
-set edu1params ""
-set edu2logincommands ""
+//set edu2map map_16_02
+set edu2map test
// set maxplayers here
maxplayers 64
@@ -14,19 +13,12 @@
//startdemos
//play announcer/male/welcome.ogg
-loadfont console gfx/font_user0
-loadfont sbar gfx/font_user0
-loadfont notify gfx/font_user0
-loadfont chat gfx/font_user0
-loadfont centerprint gfx/font_user0
-loadfont infobar gfx/font_user0
-loadfont menu gfx/vera-sans
-loadfont user0 gfx/font_user0
+exec loadfonts.cfg
// use +set edu2logincommands to set what to do after login
// edu1 port 26666
-// +set edu1params (\n seperated list of params to pass to edu1)
-// precache the map
+// +set edu1params (list of commands to exec in edu1)
+// precache the mapd
map $edu2map
disconnect
wait
Added: edu2/edu2_start.bat
===================================================================
--- edu2/edu2_start.bat (rev 0)
+++ edu2/edu2_start.bat 2008-03-01 09:40:57 UTC (rev 444)
@@ -0,0 +1,15 @@
+:eduloop
+@del edu2\data\edu1launch.txt
+@call start-edu2 %*
+
+@if exist edu2\data\edu1launch.txt goto :launchedu1
+
+@goto :eof
+:launchedu1
+@copy edu2\data\edu1launch.txt edu1\autoexec.cfg /Y
+@del edu2\data\edu1launch.txt
+@call start-edu1
+@del edu1\autoexec.cfg
+@goto :eduloop
+
+
Deleted: edu2/edu2_start.exe
===================================================================
(Binary files differ)
Modified: edu2/id1/maps/map_16_02.map
===================================================================
--- edu2/id1/maps/map_16_02.map 2008-02-28 03:12:54 UTC (rev 443)
+++ edu2/id1/maps/map_16_02.map 2008-03-01 09:40:57 UTC (rev 444)
@@ -33363,776 +33363,769 @@
// entity 1
{
"classname" "misc_model"
-"origin" "-168.128 1015.77 13.375"
-"model" "models/mapobjects/mensa/stuhl.ase"
-"angle" "147.559"
-}
-// entity 2
-{
-"classname" "misc_model"
"origin" "-80 1008.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 3
+// entity 2
{
"classname" "misc_model"
"origin" "-137.496 923.34 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90.3696"
}
-// entity 4
+// entity 3
{
"classname" "misc_model"
"origin" "-72 992 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 5
+// entity 4
{
"classname" "misc_model"
"origin" "-80 968.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 6
+// entity 5
{
"classname" "misc_model"
"origin" "-136 968.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 7
+// entity 6
{
"classname" "misc_model"
"origin" "-52.4817 914.485 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-111.412"
}
-// entity 8
+// entity 7
{
"classname" "misc_model"
"origin" "72 904.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "126.89"
}
-// entity 9
+// entity 8
{
"classname" "misc_model"
"origin" "136 992 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 10
+// entity 9
{
"classname" "misc_model"
"origin" "40 1008.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 11
+// entity 10
{
"classname" "misc_model"
"origin" "40 960.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "59.271"
}
-// entity 12
+// entity 11
{
"classname" "misc_model"
"origin" "128 920.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 13
+// entity 12
{
"classname" "misc_model"
"origin" "136 992 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 14
+// entity 13
{
"classname" "misc_model"
"origin" "328 1008.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 15
+// entity 14
{
"classname" "misc_model"
"origin" "272 904.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "126.89"
}
-// entity 16
+// entity 15
{
"classname" "misc_model"
"origin" "336 992 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 17
+// entity 16
{
"classname" "misc_model"
"origin" "328 968.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 18
+// entity 17
{
"classname" "misc_model"
"origin" "240 1008.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 19
+// entity 18
{
"classname" "misc_model"
"origin" "276.719 945.695 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "96.084"
}
-// entity 20
+// entity 19
{
"classname" "misc_model"
"origin" "328 920.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 21
+// entity 20
{
"classname" "misc_model"
"origin" "536 1032.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 22
+// entity 21
{
"classname" "misc_model"
"origin" "474.165 920.298 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "51.6962"
}
-// entity 23
+// entity 22
{
"classname" "misc_model"
"origin" "544 1016 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 24
+// entity 23
{
"classname" "misc_model"
"origin" "536 992.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 25
+// entity 24
{
"classname" "misc_model"
"origin" "483.782 1033.09 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "87.9736"
}
-// entity 26
+// entity 25
{
"classname" "misc_model"
"origin" "536 944.125 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 27
+// entity 26
{
"classname" "misc_model"
"origin" "-272 1248.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 28
+// entity 27
{
"classname" "misc_model"
"origin" "-328 1144.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "126.89"
}
-// entity 29
+// entity 28
{
"classname" "misc_model"
"origin" "-264 1232 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 30
+// entity 29
{
"classname" "misc_model"
"origin" "-272 1208.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 31
+// entity 30
{
"classname" "misc_model"
"origin" "-328 1240.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 32
+// entity 31
{
"classname" "misc_model"
"origin" "-360 1200.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "59.271"
}
-// entity 33
+// entity 32
{
"classname" "misc_model"
"origin" "-272 1160.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 34
+// entity 33
{
"classname" "misc_model"
"origin" "-72 1248.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 35
+// entity 34
{
"classname" "misc_model"
"origin" "-128 1144.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "126.89"
}
-// entity 36
+// entity 35
{
"classname" "misc_model"
"origin" "-64 1232 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 37
+// entity 36
{
"classname" "misc_model"
"origin" "-72 1208.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 38
+// entity 37
{
"classname" "misc_model"
"origin" "-124.219 1225.1 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "87.9811"
}
-// entity 39
+// entity 38
{
"classname" "misc_model"
"origin" "-72 1160.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 40
+// entity 39
{
"classname" "misc_model"
"origin" "344 1248.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 41
+// entity 40
{
"classname" "misc_model"
"origin" "288 1144.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "126.89"
}
-// entity 42
+// entity 41
{
"classname" "misc_model"
"origin" "352 1232 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 43
+// entity 42
{
"classname" "misc_model"
"origin" "344 1208.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 44
+// entity 43
{
"classname" "misc_model"
"origin" "256 1248.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 45
+// entity 44
{
"classname" "misc_model"
"origin" "256 1200.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "59.271"
}
-// entity 46
+// entity 45
{
"classname" "misc_model"
"origin" "355.896 1154.64 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-113.449"
}
-// entity 47
+// entity 46
{
"classname" "misc_model"
"origin" "536 1232.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 48
+// entity 47
{
"classname" "misc_model"
"origin" "480 1128.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "126.89"
}
-// entity 49
+// entity 48
{
"classname" "misc_model"
"origin" "544 1216 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 50
+// entity 49
{
"classname" "misc_model"
"origin" "536 1192.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 51
+// entity 50
{
"classname" "misc_model"
"origin" "448 1232.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 52
+// entity 51
{
"classname" "misc_model"
"origin" "448 1184.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "59.271"
}
-// entity 53
+// entity 52
{
"classname" "misc_model"
"origin" "536 1144.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 54
+// entity 53
{
"classname" "misc_model"
"origin" "272 616 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "-90"
}
-// entity 55
+// entity 54
{
"classname" "misc_model"
"origin" "208 527.87 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "126.89"
}
-// entity 56
+// entity 55
{
"classname" "misc_model"
"origin" "264 631.875 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 57
+// entity 56
{
"classname" "misc_model"
"origin" "264 591.875 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 58
+// entity 57
{
"classname" "misc_model"
"origin" "264 543.87 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 59
+// entity 58
{
"classname" "misc_model"
"origin" "176 631.875 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 60
+// entity 59
{
"classname" "misc_model"
"origin" "206.22 578.772 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "109.224"
}
-// entity 61
+// entity 60
{
"classname" "misc_model"
"origin" "768 1152 21"
"model" "models/mapobjects/mensa/tisch.ase"
"angle" "90"
}
-// entity 62
+// entity 61
{
"classname" "misc_model"
"origin" "833.654 1244.87 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-89.6942"
}
-// entity 63
+// entity 62
{
"classname" "misc_model"
"origin" "776 1136.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 64
+// entity 63
{
"classname" "misc_model"
"origin" "776 1176.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 65
+// entity 64
{
"classname" "misc_model"
"origin" "776 1224.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 66
+// entity 65
{
"classname" "misc_model"
"origin" "864 1136.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 67
+// entity 66
{
"classname" "misc_model"
"origin" "864 1184.13 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-120.729"
}
-// entity 68
+// entity 67
{
"classname" "misc_model"
"origin" "-1051.25 1412.75 242"
"model" "models/mapobjects/kopierer/kopierer.ase"
"angle" "90"
}
-// entity 69
+// entity 68
{
"classname" "misc_model"
"origin" "-1433.25 1051.25 242"
"model" "models/mapobjects/kopierer/kopierer.ase"
}
-// entity 70
+// entity 69
{
"classname" "misc_model"
"origin" "-1158.25 1051.5 242"
"model" "models/mapobjects/kopierer/kopierer.ase"
}
-// entity 71
+// entity 70
{
"classname" "misc_model"
"origin" "-1051.25 1218.5 242"
"model" "models/mapobjects/kopierer/kopierer.ase"
"angle" "90"
}
-// entity 72
+// entity 71
{
"classname" "misc_model"
"origin" "-375.875 1474.13 471.75"
"model" "models/mapobjects/kleiderhaken/klieder.ase"
"angle" "-180"
}
-// entity 73
+// entity 72
{
"classname" "misc_model"
"origin" "-1975.71 314.63 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "2.50448e-006"
}
-// entity 74
+// entity 73
{
"classname" "misc_model"
"origin" "-1830.6 314.63 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "2.50448e-006"
}
-// entity 75
+// entity 74
{
"classname" "misc_model"
"origin" "-1733.85 314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "2.50448e-006"
}
-// entity 76
+// entity 75
{
"classname" "misc_model"
"origin" "-1927.34 314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "2.50448e-006"
}
-// entity 77
+// entity 76
{
"classname" "misc_model"
"origin" "-1878.97 314.63 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "2.50448e-006"
}
-// entity 78
+// entity 77
{
"classname" "misc_model"
"origin" "-1730.64 553.52 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 79
+// entity 78
{
"classname" "misc_model"
"origin" "-1730.64 360.025 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 80
+// entity 79
{
"classname" "misc_model"
"origin" "-1733.54 -314.635 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "-180"
}
-// entity 81
+// entity 80
{
"classname" "misc_model"
"origin" "-1730.64 408.395 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 82
+// entity 81
{
"classname" "misc_model"
"origin" "-1730.66 698.885 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 83
+// entity 82
{
"classname" "misc_model"
"origin" "-1878.77 -314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "-180"
}
-// entity 84
+// entity 83
{
"classname" "misc_model"
"origin" "-1782.03 -314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "-180"
}
-// entity 85
+// entity 84
{
"classname" "misc_model"
"origin" "-1975.76 -314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "-180"
}
-// entity 86
+// entity 85
{
"classname" "misc_model"
"origin" "-1830.4 -314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "-180"
}
-// entity 87
+// entity 86
{
"classname" "misc_model"
"origin" "-1927.26 -314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "-180"
}
-// entity 88
+// entity 87
{
"classname" "misc_model"
"origin" "-1730.64 456.775 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 89
+// entity 88
{
"classname" "misc_model"
"origin" "-1730.63 505.145 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 90
+// entity 89
{
"classname" "misc_model"
"origin" "-1782.23 314.625 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "2.50448e-006"
}
-// entity 91
+// entity 90
{
"classname" "misc_model"
"origin" "-1730.64 -456.98 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 92
+// entity 91
{
"classname" "misc_model"
"origin" "-1730.64 -650.475 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 93
+// entity 92
{
"classname" "misc_model"
"origin" "-1730.63 -360.115 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 94
+// entity 93
{
"classname" "misc_model"
"origin" "-1730.64 -553.725 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 95
+// entity 94
{
"classname" "misc_model"
"origin" "-1730.63 -505.355 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 96
+// entity 95
{
"classname" "misc_model"
"origin" "-1730.64 -602.105 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 97
+// entity 96
{
"classname" "misc_model"
"origin" "-1730.64 -408.49 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 98
+// entity 97
{
"classname" "misc_model"
"origin" "-1364.29 801.75 88.875"
"model" "models/mapobjects/schrank/spint1.ase"
}
-// entity 99
+// entity 98
{
"classname" "misc_model"
"origin" "-1086.39 801.75 88.875"
"model" "models/mapobjects/schrank/spint1.ase"
}
-// entity 100
+// entity 99
{
"classname" "misc_model"
"origin" "-1179.03 801.75 88.875"
"model" "models/mapobjects/schrank/spint1.ase"
}
-// entity 101
+// entity 100
{
"classname" "misc_model"
"origin" "-1271.66 801.75 88.875"
"model" "models/mapobjects/schrank/spint1.ase"
}
-// entity 102
+// entity 101
{
"classname" "misc_model"
"origin" "-1730.63 650.385 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 103
+// entity 102
{
"classname" "misc_model"
"origin" "-1730.64 602.01 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 104
+// entity 103
{
"classname" "misc_model"
"origin" "-1730.65 747.26 88.875"
"model" "models/mapobjects/schrank/spint.ase"
"angle" "90"
}
-// entity 105
+// entity 104
{
"classname" "misc_model"
"origin" "745.125 -433.625 20.375"
"model" "models/mapobjects/innenhof/hocker_tisch.ase"
}
-// entity 106
+// entity 105
{
"classname" "misc_model"
"origin" "849.125 -433.625 20.375"
"model" "models/mapobjects/innenhof/hocker_tisch.ase"
}
-// entity 107
+// entity 106
{
"classname" "misc_model"
"origin" "-751 624.625 12.375"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
"angle" "-90"
}
-// entity 108
+// entity 107
{
"classname" "misc_model"
"origin" "852.875 -383 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
}
-// entity 109
+// entity 108
{
"classname" "misc_model"
"origin" "851.25 -481.875 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
}
-// entity 110
+// entity 109
{
"classname" "misc_model"
"origin" "852.125 -565.375 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
}
-// entity 111
+// entity 110
{
"classname" "misc_model"
"origin" "-850.125 624.625 12.375"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
"angle" "-90"
}
-// entity 112
+// entity 111
{
"classname" "misc_model"
"origin" "743 -565.375 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
}
-// entity 113
+// entity 112
{
"classname" "misc_model"
"origin" "-1149.04 1644.02 19.5"
@@ -34140,56 +34133,56 @@
"angle" "-90"
"modelscale_vec" "0.808055 1 1"
}
-// entity 114
+// entity 113
{
"classname" "misc_model"
"origin" "-1235.57 1568.61 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-140.21"
}
-// entity 115
+// entity 114
{
"classname" "misc_model"
"origin" "-1137.08 1583.04 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 116
+// entity 115
{
"classname" "misc_model"
"origin" "-1236.04 1647.34 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 117
+// entity 116
{
"classname" "misc_model"
"origin" "-1135.71 1647.66 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 118
+// entity 117
{
"classname" "misc_model"
"origin" "-1449.1 1648.9 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 119
+// entity 118
{
"classname" "misc_model"
"origin" "-1549.4 1648.6 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 120
+// entity 119
{
"classname" "misc_model"
"origin" "-1450.47 1584.28 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 121
+// entity 120
{
"classname" "misc_model"
"origin" "-1462.4 1645.26 19.5"
@@ -34197,35 +34190,35 @@
"angle" "-90"
"modelscale_vec" "0.808055 1 1"
}
-// entity 122
+// entity 121
{
"classname" "misc_model"
"origin" "-1549.04 1569.88 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "39.7902"
}
-// entity 123
+// entity 122
{
"classname" "misc_model"
"origin" "-1293.84 1648.9 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 124
+// entity 123
{
"classname" "misc_model"
"origin" "-1394.16 1648.6 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "90"
}
-// entity 125
+// entity 124
{
"classname" "misc_model"
"origin" "-1295.21 1584.28 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "-90"
}
-// entity 126
+// entity 125
{
"classname" "misc_model"
"origin" "-1307.16 1645.26 19.5"
@@ -34233,95 +34226,95 @@
"angle" "-90"
"modelscale_vec" "0.808055 1 1"
}
-// entity 127
+// entity 126
{
"classname" "misc_model"
"origin" "-1393.8 1569.88 13.375"
"model" "models/mapobjects/mensa/stuhl.ase"
"angle" "39.7902"
}
-// entity 128
+// entity 127
{
"classname" "misc_model"
"origin" "-57.245 2079.72 14"
"model" "models/mapobjects/mensa/theke1.ase"
"angle" "2.50448e-006"
}
-// entity 129
+// entity 128
{
"classname" "misc_model"
"origin" "-57.245 2018.36 14"
"model" "models/mapobjects/mensa/theke1.ase"
"angle" "2.50448e-006"
}
-// entity 130
+// entity 129
{
"classname" "misc_model"
"origin" "-401.25 1754.77 14"
"model" "models/mapobjects/mensa/theke2.ase"
"angle" "-180"
}
-// entity 131
+// entity 130
{
"classname" "misc_model"
"origin" "-401.25 1816.14 14"
"model" "models/mapobjects/mensa/theke2.ase"
"angle" "-180"
}
-// entity 132
+// entity 131
{
"classname" "misc_model"
"origin" "-401.25 1877.51 14"
"model" "models/mapobjects/mensa/theke2.ase"
"angle" "-180"
}
-// entity 133
+// entity 132
{
"classname" "misc_model"
"origin" "-401.25 2000.14 14"
"model" "models/mapobjects/mensa/theke1.ase"
"angle" "-180"
}
-// entity 134
+// entity 133
{
"classname" "misc_model"
"origin" "-401.25 2061.5 14"
"model" "models/mapobjects/mensa/theke1.ase"
"angle" "-180"
}
-// entity 135
+// entity 134
{
"classname" "misc_model"
"origin" "-401.25 1938.88 14"
"model" "models/mapobjects/mensa/theke2.ase"
"angle" "-180"
}
-// entity 136
+// entity 135
{
"classname" "misc_model"
"origin" "1890.87 121.34 109.75"
"model" "models/mapobjects/mensa/kasse.ase"
"angle" "90"
}
-// entity 137
+// entity 136
{
"classname" "misc_model"
"origin" "743.75 -383 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
}
-// entity 138
+// entity 137
{
"classname" "misc_model"
"origin" "742.125 -481.875 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
}
-// entity 139
+// entity 138
{
"classname" "misc_model"
"origin" "-803.125 568.75 12.375"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
}
-// entity 140
+// entity 139
{
"classname" "misc_model"
"origin" "-993.875 1224.75 321.25"
@@ -34329,64 +34322,64 @@
"angle" "-90"
"modelscale_vec" "1 1 1.25333"
}
-// entity 141
+// entity 140
{
"classname" "misc_model"
"origin" "1019.78 201.755 5.625"
"model" "models/mapobjects/innenhof/papierkorb.ase"
"angle" "90"
}
-// entity 142
+// entity 141
{
"classname" "misc_model"
"origin" "53.74 173.625 5.625"
"model" "models/mapobjects/innenhof/papierkorb.ase"
"angle" "-90"
}
-// entity 143
+// entity 142
{
"classname" "misc_model"
"origin" "1010.65 -199.995 5.625"
"model" "models/mapobjects/innenhof/papierkorb.ase"
"angle" "90"
}
-// entity 144
+// entity 143
{
"classname" "misc_model"
"origin" "-628.25 2063.88 224.125"
"model" "models/mapobjects/papierkorb/papierkorb_blau.ase"
}
-// entity 145
+// entity 144
{
"classname" "misc_model"
"origin" "1230.62 943.9 224.125"
"model" "models/mapobjects/papierkorb/papierkorb_blau.ase"
}
-// entity 146
+// entity 145
{
"classname" "misc_model"
"origin" "-1264.38 1051.28 224.125"
"model" "models/mapobjects/papierkorb/papierkorb_blau.ase"
}
-// entity 147
+// entity 146
{
"classname" "misc_model"
"origin" "-1048.38 1051.27 224.125"
"model" "models/mapobjects/papierkorb/papierkorb_blau.ase"
}
-// entity 148
+// entity 147
{
"classname" "misc_model"
"origin" "-1048.38 1051.27 224.125"
"model" "models/mapobjects/papierkorb/papierkorb_blau.ase"
}
-// entity 149
+// entity 148
{
"classname" "misc_model"
"origin" "-1737.01 -405.875 264.125"
"model" "models/mapobjects/papierkorb/korb_orange.ase"
}
-// entity 150
+// entity 149
{
"classname" "info_null"
"origin" "2140 825 391"
@@ -34395,7 +34388,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 151
+// entity 150
{
"classname" "info_null"
"origin" "2108 921 391"
@@ -34404,7 +34397,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 152
+// entity 151
{
"classname" "info_null"
"origin" "2124 873 385"
@@ -34413,7 +34406,7 @@
"radius" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 153
+// entity 152
{
"classname" "info_null"
"origin" "2124 185 401"
@@ -34422,7 +34415,7 @@
"radius" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 154
+// entity 153
{
"classname" "info_null"
"origin" "2108 233 407"
@@ -34431,7 +34424,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 155
+// entity 154
{
"classname" "info_null"
"origin" "2140 137 407"
@@ -34440,7 +34433,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 156
+// entity 155
{
"classname" "info_null"
"origin" "2124 377 401"
@@ -34449,7 +34442,7 @@
"radius" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 157
+// entity 156
{
"classname" "info_null"
"origin" "2108 425 407"
@@ -34458,7 +34451,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 158
+// entity 157
{
"classname" "info_null"
"origin" "2140 329 407"
@@ -34467,7 +34460,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 159
+// entity 158
{
"classname" "info_null"
"origin" "2124 681 401"
@@ -34476,7 +34469,7 @@
"radius" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 160
+// entity 159
{
"classname" "info_null"
"origin" "2108 729 407"
@@ -34485,7 +34478,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 161
+// entity 160
{
"classname" "info_null"
"origin" "2140 633 407"
@@ -34494,7 +34487,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 162
+// entity 161
{
"classname" "info_null"
"origin" "2124 -7 401"
@@ -34503,7 +34496,7 @@
"radius" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 163
+// entity 162
{
"classname" "info_null"
"origin" "2108 41 407"
@@ -34512,7 +34505,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 164
+// entity 163
{
"classname" "info_null"
"origin" "2140 -55 407"
@@ -34521,7 +34514,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 165
+// entity 164
{
"classname" "info_null"
"origin" "2124 -207 401"
@@ -34530,7 +34523,7 @@
"radius" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 166
+// entity 165
{
"classname" "info_null"
"origin" "2108 -159 407"
@@ -34539,7 +34532,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 167
+// entity 166
{
"classname" "info_null"
"origin" "2140 -255 407"
@@ -34548,7 +34541,7 @@
"radius" "100"
"_color" "1 0.998428 0.97438"
}
-// entity 168
+// entity 167
{
"classname" "info_null"
"origin" "-855 1928 385"
@@ -34558,7 +34551,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 169
+// entity 168
{
"classname" "info_null"
"origin" "-807 1944 391"
@@ -34568,7 +34561,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 170
+// entity 169
{
"classname" "info_null"
"origin" "1921 1060 391"
@@ -34578,7 +34571,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 171
+// entity 170
{
"classname" "info_null"
"origin" "1825 1028 391"
@@ -34588,7 +34581,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 172
+// entity 171
{
"classname" "info_null"
"origin" "2025 1028 391"
@@ -34598,7 +34591,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 173
+// entity 172
{
"classname" "info_null"
"origin" "2121 1060 391"
@@ -34608,7 +34601,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 174
+// entity 173
{
"classname" "info_null"
"origin" "2073 1044 385"
@@ -34618,7 +34611,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 175
+// entity 174
{
"classname" "info_null"
"origin" "1148 1463 385"
@@ -34628,7 +34621,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 176
+// entity 175
{
"classname" "info_null"
"origin" "1164 1415 391"
@@ -34638,7 +34631,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 177
+// entity 176
{
"classname" "info_null"
"origin" "1132 1511 391"
@@ -34648,7 +34641,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 178
+// entity 177
{
"classname" "info_null"
"origin" "1681 1044 385"
@@ -34658,7 +34651,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 179
+// entity 178
{
"classname" "info_null"
"origin" "1729 1060 391"
@@ -34668,7 +34661,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 180
+// entity 179
{
"classname" "info_null"
"origin" "1633 1028 391"
@@ -34678,7 +34671,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 181
+// entity 180
{
"classname" "info_null"
"origin" "1873 1044 385"
@@ -34688,7 +34681,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 182
+// entity 181
{
"classname" "info_null"
"origin" "886 2061 391"
@@ -34698,7 +34691,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 183
+// entity 182
{
"classname" "info_null"
"origin" "790 2029 391"
@@ -34708,7 +34701,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 184
+// entity 183
{
"classname" "info_null"
"origin" "1057 1612 391"
@@ -34718,7 +34711,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 185
+// entity 184
{
"classname" "info_null"
"origin" "1153 1644 391"
@@ -34728,7 +34721,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 186
+// entity 185
{
"classname" "info_null"
"origin" "1105 1628 385"
@@ -34738,7 +34731,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 187
+// entity 186
{
"classname" "info_null"
"origin" "521 1628 385"
@@ -34748,7 +34741,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 188
+// entity 187
{
"classname" "info_null"
"origin" "569 1644 391"
@@ -34758,7 +34751,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 189
+// entity 188
{
"classname" "info_null"
"origin" "473 1612 391"
@@ -34768,7 +34761,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 190
+// entity 189
{
"classname" "info_null"
"origin" "713 1628 385"
@@ -34778,7 +34771,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 191
+// entity 190
{
"classname" "info_null"
"origin" "761 1644 391"
@@ -34788,7 +34781,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 192
+// entity 191
{
"classname" "info_null"
"origin" "665 1612 391"
@@ -34798,7 +34791,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 193
+// entity 192
{
"classname" "info_null"
"origin" "838 2045 385"
@@ -34808,7 +34801,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 194
+// entity 193
{
"classname" "info_null"
"origin" "153 1644 391"
@@ -34818,7 +34811,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 195
+// entity 194
{
"classname" "info_null"
"origin" "57 1612 391"
@@ -34828,7 +34821,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 196
+// entity 195
{
"classname" "info_null"
"origin" "257 1612 391"
@@ -34838,7 +34831,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 197
+// entity 196
{
"classname" "info_null"
"origin" "353 1644 391"
@@ -34848,7 +34841,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 198
+// entity 197
{
"classname" "info_null"
"origin" "305 1628 385"
@@ -34858,7 +34851,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 199
+// entity 198
{
"classname" "info_null"
"origin" "-279 1628 385"
@@ -34868,7 +34861,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 200
+// entity 199
{
"classname" "info_null"
"origin" "-231 1644 391"
@@ -34878,7 +34871,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 201
+// entity 200
{
"classname" "info_null"
"origin" "-327 1612 391"
@@ -34888,7 +34881,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 202
+// entity 201
{
"classname" "info_null"
"origin" "-87 1628 385"
@@ -34898,7 +34891,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 203
+// entity 202
{
"classname" "info_null"
"origin" "-39 1644 391"
@@ -34908,7 +34901,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 204
+// entity 203
{
"classname" "info_null"
"origin" "-135 1612 391"
@@ -34918,7 +34911,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 205
+// entity 204
{
"classname" "info_null"
"origin" "105 1628 385"
@@ -34928,7 +34921,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 206
+// entity 205
{
"classname" "info_null"
"origin" "-631 1644 391"
@@ -34938,7 +34931,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 207
+// entity 206
{
"classname" "info_null"
"origin" "-727 1612 391"
@@ -34948,7 +34941,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 208
+// entity 207
{
"classname" "info_null"
"origin" "-527 1612 391"
@@ -34958,7 +34951,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 209
+// entity 208
{
"classname" "info_null"
"origin" "-431 1644 391"
@@ -34968,7 +34961,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 210
+// entity 209
{
"classname" "info_null"
"origin" "-479 1628 385"
@@ -34978,7 +34971,7 @@
"_color" "1 0.998428 0.97438"
"angle" "-90"
}
-// entity 211
+// entity 210
{
"classname" "info_null"
"origin" "-1063 1628 385"
@@ -34988,7 +34981,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 212
+// entity 211
{
"classname" "info_null"
"origin" "-1015 1644 391"
@@ -34998,7 +34991,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 213
+// entity 212
{
"classname" "info_null"
"origin" "-1111 1612 391"
@@ -35008,7 +35001,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 214
+// entity 213
{
"classname" "info_null"
"origin" "-871 1628 385"
@@ -35018,7 +35011,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 215
+// entity 214
{
"classname" "info_null"
"origin" "-823 1644 391"
@@ -35028,7 +35021,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 216
+// entity 215
{
"classname" "info_null"
"origin" "-919 1612 391"
@@ -35038,7 +35031,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 217
+// entity 216
{
"classname" "info_null"
"origin" "-679 1628 385"
@@ -35048,7 +35041,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 218
+// entity 217
{
"classname" "info_null"
"origin" "-1847 1628 385"
@@ -35058,7 +35051,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 219
+// entity 218
{
"classname" "info_null"
"origin" "-1799 1644 391"
@@ -35068,7 +35061,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 220
+// entity 219
{
"classname" "info_null"
"origin" "-1895 1612 391"
@@ -35078,7 +35071,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 221
+// entity 220
{
"classname" "info_null"
"origin" "-1632 1039 391"
@@ -35088,7 +35081,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 222
+// entity 221
{
"classname" "info_null"
"origin" "-1664 1135 391"
@@ -35098,7 +35091,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 223
+// entity 222
{
"classname" "info_null"
"origin" "-1473 1128 385"
@@ -35108,7 +35101,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 224
+// entity 223
{
"classname" "info_null"
"origin" "-1521 1112 391"
@@ -35118,7 +35111,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 225
+// entity 224
{
"classname" "info_null"
"origin" "-1425 1144 391"
@@ -35128,7 +35121,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 226
+// entity 225
{
"classname" "info_null"
"origin" "-1648 1087 385"
@@ -35138,7 +35131,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 227
+// entity 226
{
"classname" "info_null"
"origin" "-1648 -449 385"
@@ -35148,7 +35141,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 228
+// entity 227
{
"classname" "info_null"
"origin" "-1632 -497 391"
@@ -35158,7 +35151,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 229
+// entity 228
{
"classname" "info_null"
"origin" "-1664 -401 391"
@@ -35168,7 +35161,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 230
+// entity 229
{
"classname" "info_null"
"origin" "-209 1096 391"
@@ -35178,7 +35171,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 231
+// entity 230
{
"classname" "info_null"
"origin" "-113 1128 391"
@@ -35188,7 +35181,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 232
+// entity 231
{
"classname" "info_null"
"origin" "-401 1096 391"
@@ -35198,7 +35191,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 233
+// entity 232
{
"classname" "info_null"
"origin" "-305 1128 391"
@@ -35208,7 +35201,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 234
+// entity 233
{
"classname" "info_null"
"origin" "-903 1912 391"
@@ -35218,7 +35211,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 235
+// entity 234
{
"classname" "info_null"
"origin" "-697 1344 391"
@@ -35228,7 +35221,7 @@
"_color" "1 0.998428 0.97438"
"angle" "90"
}
-// entity 236
+// entity 235
{
"classname" "info_null"
"origin" "-793 1312 391"
@@ -35238,7 +35231,7 @@
"_color" "1 0.998428 0.97438"
"angle" "90"
}
-// entity 237
+// entity 236
{
"classname" "info_null"
"origin" "-209 1312 391"
@@ -35248,7 +35241,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 238
+// entity 237
{
"classname" "info_null"
"origin" "-113 1344 391"
@@ -35258,7 +35251,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 239
+// entity 238
{
"classname" "info_null"
"origin" "-593 1312 391"
@@ -35268,7 +35261,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 240
+// entity 239
{
"classname" "info_null"
"origin" "-401 1312 391"
@@ -35278,7 +35271,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 241
+// entity 240
{
"classname" "info_null"
"origin" "-305 1344 391"
@@ -35288,7 +35281,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 242
+// entity 241
{
"classname" "info_null"
"origin" "-497 1344 391"
@@ -35298,7 +35291,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 243
+// entity 242
{
"classname" "info_null"
"origin" "-697 1128 391"
@@ -35308,7 +35301,7 @@
"_color" "1 0.998428 0.97438"
"angle" "90"
}
-// entity 244
+// entity 243
{
"classname" "info_null"
"origin" "-793 1096 391"
@@ -35318,7 +35311,7 @@
"_color" "1 0.998428 0.97438"
"angle" "90"
}
-// entity 245
+// entity 244
{
"classname" "info_null"
"origin" "-593 1096 391"
@@ -35328,7 +35321,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 246
+// entity 245
{
"classname" "info_null"
"origin" "-497 1128 391"
@@ -35338,7 +35331,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 247
+// entity 246
{
"classname" "info_null"
"origin" "-1136 1431 385"
@@ -35348,7 +35341,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 248
+// entity 247
{
"classname" "info_null"
"origin" "-1120 1383 391"
@@ -35358,7 +35351,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 249
+// entity 248
{
"classname" "info_null"
"origin" "-1152 1479 391"
@@ -35368,7 +35361,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 250
+// entity 249
{
"classname" "info_null"
"origin" "-1136 1223 385"
@@ -35378,7 +35371,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 251
+// entity 250
{
"classname" "info_null"
"origin" "-1120 1175 391"
@@ -35388,7 +35381,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 252
+// entity 251
{
"classname" "info_null"
"origin" "-1152 1271 391"
@@ -35398,7 +35391,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 253
+// entity 252
{
"classname" "info_null"
"origin" "-1265 1128 385"
@@ -35408,7 +35401,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 254
+// entity 253
{
"classname" "info_null"
"origin" "-1313 1112 391"
@@ -35418,7 +35411,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 255
+// entity 254
{
"classname" "info_null"
"origin" "-1217 1144 391"
@@ -35428,7 +35421,7 @@
"angle" "90"
"_color" "1 0.998428 0.97438"
}
-// entity 256
+// entity 255
{
"classname" "info_null"
"origin" "1489 1044 385"
@@ -35438,7 +35431,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 257
+// entity 256
{
"classname" "info_null"
"origin" "1537 1060 391"
@@ -35448,7 +35441,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 258
+// entity 257
{
"classname" "info_null"
"origin" "1441 1028 391"
@@ -35458,7 +35451,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 259
+// entity 258
{
"classname" "info_null"
"origin" "1297 1044 385"
@@ -35468,7 +35461,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 260
+// entity 259
{
"classname" "info_null"
"origin" "1345 1060 391"
@@ -35478,7 +35471,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 261
+// entity 260
{
"classname" "info_null"
"origin" "1249 1028 391"
@@ -35488,7 +35481,7 @@
"angle" "-90"
"_color" "1 0.998428 0.97438"
}
-// entity 262
+// entity 261
{
"classname" "info_null"
"origin" "1148 1047 385"
@@ -35498,7 +35491,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 263
+// entity 262
{
"classname" "info_null"
"origin" "1164 999 391"
@@ -35508,7 +35501,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 264
+// entity 263
{
"classname" "info_null"
"origin" "1132 1095 391"
@@ -35518,7 +35511,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 265
+// entity 264
{
"classname" "info_null"
"origin" "1148 1255 385"
@@ -35528,7 +35521,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 266
+// entity 265
{
"classname" "info_null"
"origin" "1164 1207 391"
@@ -35538,7 +35531,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 267
+// entity 266
{
"classname" "info_null"
"origin" "1132 1303 391"
@@ -35548,7 +35541,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 268
+// entity 267
{
"classname" "info_null"
"origin" "-1664 935 391"
@@ -35558,7 +35551,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 269
+// entity 268
{
"classname" "info_null"
"origin" "-1632 839 391"
@@ -35568,7 +35561,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 270
+// entity 269
{
"classname" "info_null"
"origin" "-1648 887 385"
@@ -35578,7 +35571,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 271
+// entity 270
{
"classname" "info_null"
"origin" "-1208 479 391"
@@ -35588,7 +35581,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 272
+// entity 271
{
"classname" "info_null"
"origin" "-1176 383 391"
@@ -35598,7 +35591,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 273
+// entity 272
{
"classname" "info_null"
"origin" "-1192 431 385"
@@ -35608,7 +35601,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 274
+// entity 273
{
"classname" "info_null"
"origin" "-1208 687 391"
@@ -35618,7 +35611,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 275
+// entity 274
{
"classname" "info_null"
"origin" "-1192 639 385"
@@ -35628,7 +35621,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 276
+// entity 275
{
"classname" "info_null"
"origin" "-1176 591 391"
@@ -35638,7 +35631,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 277
+// entity 276
{
"classname" "info_null"
"origin" "-1208 63 391"
@@ -35648,7 +35641,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 278
+// entity 277
{
"classname" "info_null"
"origin" "-1176 -33 391"
@@ -35658,7 +35651,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 279
+// entity 278
{
"classname" "info_null"
"origin" "-1192 15 385"
@@ -35668,7 +35661,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 280
+// entity 279
{
"classname" "info_null"
"origin" "-1208 271 391"
@@ -35678,7 +35671,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 281
+// entity 280
{
"classname" "info_null"
"origin" "-1192 223 385"
@@ -35688,7 +35681,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 282
+// entity 281
{
"classname" "info_null"
"origin" "-1176 175 391"
@@ -35698,7 +35691,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 283
+// entity 282
{
"classname" "info_null"
"origin" "-1208 -353 391"
@@ -35708,7 +35701,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 284
+// entity 283
{
"classname" "info_null"
"origin" "-1176 -449 391"
@@ -35718,7 +35711,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 285
+// entity 284
{
"classname" "info_null"
"origin" "-1192 -401 385"
@@ -35728,7 +35721,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 286
+// entity 285
{
"classname" "info_null"
"origin" "-1208 -145 391"
@@ -35738,7 +35731,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 287
+// entity 286
{
"classname" "info_null"
"origin" "-1192 -193 385"
@@ -35748,7 +35741,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 288
+// entity 287
{
"classname" "info_null"
"origin" "-1176 -241 391"
@@ -35758,7 +35751,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 289
+// entity 288
{
"classname" "info_null"
"origin" "-1208 -577 391"
@@ -35768,7 +35761,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 290
+// entity 289
{
"classname" "info_null"
"origin" "-748 1176 145"
@@ -35778,7 +35771,7 @@
"_color" "1 0.997223 0.970871"
"angle" "180"
}
-// entity 291
+// entity 290
{
"classname" "info_null"
"origin" "-732 1128 151"
@@ -35788,7 +35781,7 @@
"_color" "1 0.997223 0.970871"
"angle" "180"
}
-// entity 292
+// entity 291
{
"classname" "info_null"
"origin" "-764 1224 151"
@@ -35798,7 +35791,7 @@
"_color" "1 0.997223 0.970871"
"angle" "180"
}
-// entity 293
+// entity 292
{
"classname" "info_null"
"origin" "-1528 912 145"
@@ -35807,7 +35800,7 @@
"radius" "180"
"_color" "1 0.997223 0.970871"
}
-// entity 294
+// entity 293
{
"classname" "info_null"
"origin" "-1544 960 151"
@@ -35816,7 +35809,7 @@
"radius" "100"
"_color" "1 0.997223 0.970871"
}
-// entity 295
+// entity 294
{
"classname" "info_null"
"origin" "-1512 864 151"
@@ -35825,7 +35818,7 @@
"radius" "100"
"_color" "1 0.997223 0.970871"
}
-// entity 296
+// entity 295
{
"classname" "info_null"
"origin" "-1528 1292 145"
@@ -35835,7 +35828,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 297
+// entity 296
{
"classname" "info_null"
"origin" "-1480 1308 151"
@@ -35845,7 +35838,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 298
+// entity 297
{
"classname" "info_null"
"origin" "-1576 1276 151"
@@ -35855,7 +35848,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 299
+// entity 298
{
"classname" "info_null"
"origin" "-1332 1292 145"
@@ -35865,7 +35858,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 300
+// entity 299
{
"classname" "info_null"
"origin" "-1284 1308 151"
@@ -35875,7 +35868,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 301
+// entity 300
{
"classname" "info_null"
"origin" "-1380 1276 151"
@@ -35885,7 +35878,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 302
+// entity 301
{
"classname" "info_null"
"origin" "-1140 1292 145"
@@ -35895,7 +35888,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 303
+// entity 302
{
"classname" "info_null"
"origin" "-1092 1308 151"
@@ -35905,7 +35898,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 304
+// entity 303
{
"classname" "info_null"
"origin" "-1188 1276 151"
@@ -35915,7 +35908,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 305
+// entity 304
{
"classname" "info_null"
"origin" "-1188 1076 151"
@@ -35925,7 +35918,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 306
+// entity 305
{
"classname" "info_null"
"origin" "-1092 1108 151"
@@ -35935,7 +35928,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 307
+// entity 306
{
"classname" "info_null"
"origin" "-1140 1092 145"
@@ -35945,7 +35938,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 308
+// entity 307
{
"classname" "info_null"
"origin" "-1380 1076 151"
@@ -35955,7 +35948,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 309
+// entity 308
{
"classname" "info_null"
"origin" "-1284 1108 151"
@@ -35965,7 +35958,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 310
+// entity 309
{
"classname" "info_null"
"origin" "-1332 1092 145"
@@ -35975,7 +35968,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 311
+// entity 310
{
"classname" "info_null"
"origin" "-1576 1076 151"
@@ -35985,7 +35978,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 312
+// entity 311
{
"classname" "info_null"
"origin" "-1480 1108 151"
@@ -35995,7 +35988,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 313
+// entity 312
{
"classname" "info_null"
"origin" "-1528 1092 145"
@@ -36005,7 +35998,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 314
+// entity 313
{
"classname" "info_null"
"origin" "-924 1092 145"
@@ -36015,7 +36008,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 315
+// entity 314
{
"classname" "info_null"
"origin" "-876 1108 151"
@@ -36025,7 +36018,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 316
+// entity 315
{
"classname" "info_null"
"origin" "-972 1076 151"
@@ -36035,75 +36028,75 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 317
+// entity 316
{
"classname" "info_null"
"origin" "-192 1184 80"
"targetname" "mens1"
"radius" "100"
}
-// entity 318
+// entity 317
{
"classname" "info_null"
"origin" "688 1184 80"
"targetname" "mens6"
"radius" "100"
}
-// entity 319
+// entity 318
{
"classname" "info_null"
"origin" "472 1184 80"
"targetname" "mens7"
"radius" "100"
}
-// entity 320
+// entity 319
{
"classname" "info_null"
"origin" "272 1184 80"
"targetname" "mens8"
"radius" "100"
}
-// entity 321
+// entity 320
{
"classname" "info_null"
"origin" "72 1184 80"
"targetname" "mens9"
"radius" "100"
}
-// entity 322
+// entity 321
{
"classname" "misc_model"
"origin" "-429.625 -236.375 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
"angle" "-90"
}
-// entity 323
+// entity 322
{
"classname" "misc_model"
"origin" "-429.625 -345.5 10"
"model" "models/mapobjects/innenhof/hocker_bank.ase"
"angle" "-90"
}
-// entity 324
+// entity 323
{
"classname" "misc_model"
"origin" "746.5 -613 20.375"
"model" "models/mapobjects/innenhof/hocker_tisch.ase"
}
-// entity 325
+// entity 324
{
"classname" "misc_model"
"origin" "850.5 -613 20.375"
"model" "models/mapobjects/innenhof/hocker_tisch.ase"
}
-// entity 326
+// entity 325
{
"classname" "misc_model"
"origin" "132.375 -763.64 5.625"
"model" "models/mapobjects/innenhof/papierkorb.ase"
"angle" "2.50448e-006"
}
-// entity 327
+// entity 326
{
"classname" "info_null"
"origin" "-1648 -641 385"
@@ -36113,7 +36106,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 328
+// entity 327
{
"classname" "info_null"
"origin" "-1632 -689 391"
@@ -36123,7 +36116,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 329
+// entity 328
{
"classname" "info_null"
"origin" "-1664 -593 391"
@@ -36133,7 +36126,7 @@
"angle" "180"
"_color" "1 0.998428 0.97438"
}
-// entity 330
+// entity 329
{
"classname" "info_null"
"origin" "-1176 -673 391"
@@ -36143,7 +36136,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 331
+// entity 330
{
"classname" "info_null"
"origin" "-1192 -625 385"
@@ -36153,7 +36146,7 @@
"_color" "1 0.998428 0.97438"
"angle" "180"
}
-// entity 332
+// entity 331
{
"classname" "info_null"
"origin" "-1664 -824 135"
@@ -36162,7 +36155,7 @@
"radius" "100"
"_color" "1 0.997223 0.970871"
}
-// entity 333
+// entity 332
{
"classname" "info_null"
"origin" "-924 1292 145"
@@ -36172,7 +36165,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 334
+// entity 333
{
"classname" "info_null"
"origin" "-876 1308 151"
@@ -36182,7 +36175,7 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 335
+// entity 334
{
"classname" "info_null"
"origin" "-972 1276 151"
@@ -36192,37 +36185,37 @@
"_color" "1 0.997223 0.970871"
"angle" "-90"
}
-// entity 336
+// entity 335
{
"classname" "info_null"
"origin" "-440 -848 320"
"targetname" "info_null1"
}
-// entity 337
+// entity 336
{
"classname" "info_null"
"origin" "-336 -944 320"
"targetname" "info_null2"
}
-// entity 338
+// entity 337
{
"classname" "info_null"
"origin" "-336 -736 320"
"targetname" "info_null4"
}
-// entity 339
+// entity 338
{
"classname" "info_null"
"origin" "-232 -848 320"
"targetname" "info_null6"
}
-// entity 340
+// entity 339
{
"classname" "info_null"
"origin" "-232 -848 320"
"targetname" "info_null7"
}
-// entity 341
+// entity 340
{
"classname" "misc_model"
"origin" "1055 -1543.63 227.625"
@@ -36230,76 +36223,76 @@
"modelscale_vec" "0.8 0.8 0.833333"
"angles" "1.00179e-005 -90 1.00179e-005"
}
-// entity 342
+// entity 341
{
"classname" "misc_model"
"origin" "1068.7 -1611.78 229.25"
"model" "models/mapobjects/bibo/stuhl2.ase"
"angles" "1.00179e-005 -91.686 1.00179e-005"
}
-// entity 343
+// entity 342
{
"classname" "misc_model"
"origin" "1066.75 -1559.38 229.375"
"model" "models/mapobjects/bibo/stuhl2.ase"
"angles" "1.00179e-005 -90 1.00179e-005"
}
-// entity 344
+// entity 343
{
"classname" "misc_model"
"origin" "1890.72 -1375.72 234"
"model" "models/mapobjects/kopierer/kopierer.ase"
"angle" "90"
}
-// entity 345
+// entity 344
{
"classname" "misc_model"
"origin" "1892.72 -1235.97 234"
"model" "models/mapobjects/kopierer/kopierer.ase"
"angle" "90"
}
-// entity 346
+// entity 345
{
"classname" "misc_model"
"origin" "1630.64 -819.125 18"
"model" "models/mapobjects/kopierer/kopierer.ase"
"angle" "2.50448e-006"
}
-// entity 347
+// entity 346
{
"classname" "misc_model"
"origin" "1819.26 -819 18"
"model" "models/mapobjects/kopierer/kopierer.ase"
"angle" "2.50448e-006"
}
-// entity 348
+// entity 347
{
"classname" "misc_model"
"origin" "1894.13 -1304.51 216.125"
"model" "models/mapobjects/papierkorb/korb_orange.ase"
}
-// entity 349
+// entity 348
{
"classname" "misc_model"
"origin" "1028.88 -1637.74 251.75"
"model" "models/mapobjects/monitor/monitor.ase"
"angle" "90"
}
-// entity 350
+// entity 349
{
"classname" "misc_model"
"origin" "1035.63 -1645.39 216.125"
"model" "models/mapobjects/monitor/tower.ase"
"angle" "2.50448e-006"
}
-// entity 351
+// entity 350
{
"classname" "misc_model"
"origin" "1036.75 -1627.14 242.625"
"model" "models/mapobjects/monitor/tastatur.ase"
"angle" "-90"
}
-// entity 352
+// entity 351
{
"classname" "info_null"
"origin" "272 -993 142"
@@ -36309,7 +36302,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 353
+// entity 352
{
"classname" "info_null"
"origin" "240 -897 142"
@@ -36319,7 +36312,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 354
+// entity 353
{
"classname" "info_null"
"origin" "256 -945 136"
@@ -36329,7 +36322,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 355
+// entity 354
{
"classname" "info_null"
"origin" "1024 -1745 143"
@@ -36339,7 +36332,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 356
+// entity 355
{
"classname" "info_null"
"origin" "1024 -1649 143"
@@ -36349,7 +36342,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 357
+// entity 356
{
"classname" "info_null"
"origin" "1024 -1697 137"
@@ -36359,7 +36352,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 358
+// entity 357
{
"classname" "info_null"
"origin" "272 -1377 142"
@@ -36369,7 +36362,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 359
+// entity 358
{
"classname" "info_null"
"origin" "240 -1281 142"
@@ -36379,7 +36372,7 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 360
+// entity 359
{
"classname" "info_null"
"origin" "256 -1329 136"
@@ -36389,27 +36382,27 @@
"_color" "1 0.996368 0.972549"
"angle" "180"
}
-// entity 361
+// entity 360
{
"classname" "misc_model"
"origin" "983.38 -911.12 251.75"
"model" "models/mapobjects/monitor/monitor.ase"
"angle" "90"
}
-// entity 362
+// entity 361
{
"classname" "misc_model"
"origin" "990.13 -918.76 216.125"
"model" "models/mapobjects/monitor/tower.ase"
}
-// entity 363
+// entity 362
{
"classname" "misc_model"
"origin" "991.25 -900.51 242.625"
"model" "models/mapobjects/monitor/tastatur.ase"
"angle" "-90"
}
-// entity 364
+// entity 363
{
"classname" "misc_model"
"origin" "1009.5 -817 227.625"
@@ -36417,41 +36410,41 @@
"modelscale_vec" "0.8 0.8 0.833333"
"angles" "1.00179e-005 -90 2.50448e-006"
}
-// entity 365
+// entity 364
{
"classname" "misc_model"
"origin" "1021.26 -886.87 229.25"
"model" "models/mapobjects/bibo/stuhl2.ase"
"angles" "1.00179e-005 -39.8256 1.41097e-005"
}
-// entity 366
+// entity 365
{
"classname" "misc_model"
"origin" "1021.25 -832.75 229.375"
"model" "models/mapobjects/bibo/stuhl2.ase"
"angles" "6.83245e-007 -90 2.50448e-006"
}
-// entity 367
+// entity 366
{
"classname" "misc_model"
"origin" "85...
[truncated message content] |
|
From: <bl...@us...> - 2008-02-28 03:12:56
|
Revision: 443
http://edu2.svn.sourceforge.net/edu2/?rev=443&view=rev
Author: blackhc
Date: 2008-02-27 19:12:54 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Make abg_licht2 the default map again.
Add a batch file to start an edu2 dedicated server.
Modified Paths:
--------------
edu2/edu2/quake.rc
Added Paths:
-----------
edu2/start-edu2-server.bat
Modified: edu2/edu2/quake.rc
===================================================================
--- edu2/edu2/quake.rc 2008-02-28 03:08:18 UTC (rev 442)
+++ edu2/edu2/quake.rc 2008-02-28 03:12:54 UTC (rev 443)
@@ -1,4 +1,4 @@
-set edu2map test
+set edu2map abg_licht2
set edu1params ""
set edu2logincommands ""
// set maxplayers here
Added: edu2/start-edu2-server.bat
===================================================================
--- edu2/start-edu2-server.bat (rev 0)
+++ edu2/start-edu2-server.bat 2008-02-28 03:12:54 UTC (rev 443)
@@ -0,0 +1 @@
+@edu2p-dedicated.exe -game edu2 -port 26000 +set sv_public 1 +map $edu2map
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-28 03:08:20
|
Revision: 442
http://edu2.svn.sourceforge.net/edu2/?rev=442&view=rev
Author: blackhc
Date: 2008-02-27 19:08:18 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Edu2 now launches Edu1 (passing edu1params as parameters).
Add a batch file to start an edu1 dedicated server.
Modified Paths:
--------------
edu2/edu1/quake.rc
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2/progs.dat
edu2/edu2/progs.lno
edu2/edu2/quake.rc
edu2/edu2_start.exe
edu2/id1/qcsrc/common/player.qc
edu2/id1/qcsrc/common/player.qh
edu2/id1/qcsrc/common/playermodel.qc
edu2/id1/qcsrc/common/util.qh
edu2/id1/qcsrc/menu/edu2/gamelist.c
Added Paths:
-----------
edu2/start-edu1-server.bat
Modified: edu2/edu1/quake.rc
===================================================================
--- edu2/edu1/quake.rc 2008-02-28 00:31:03 UTC (rev 441)
+++ edu2/edu1/quake.rc 2008-02-28 03:08:18 UTC (rev 442)
@@ -1,3 +1,4 @@
+maxplayers 10
exec default.cfg
exec config.cfg
exec autoexec.cfg
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/quake.rc
===================================================================
--- edu2/edu2/quake.rc 2008-02-28 00:31:03 UTC (rev 441)
+++ edu2/edu2/quake.rc 2008-02-28 03:08:18 UTC (rev 442)
@@ -1,4 +1,8 @@
-set edu2map abg_licht2
+set edu2map test
+set edu1params ""
+set edu2logincommands ""
+// set maxplayers here
+maxplayers 64
exec default.cfg
exec config.cfg
@@ -19,7 +23,9 @@
loadfont menu gfx/vera-sans
loadfont user0 gfx/font_user0
-// use +set edu2logincommands to set what to do after login
+// use +set edu2logincommands to set what to do after login
+// edu1 port 26666
+// +set edu1params (\n seperated list of params to pass to edu1)
// precache the map
map $edu2map
disconnect
Modified: edu2/edu2_start.exe
===================================================================
(Binary files differ)
Modified: edu2/id1/qcsrc/common/player.qc
===================================================================
--- edu2/id1/qcsrc/common/player.qc 2008-02-28 00:31:03 UTC (rev 441)
+++ edu2/id1/qcsrc/common/player.qc 2008-02-28 03:08:18 UTC (rev 442)
@@ -2,8 +2,6 @@
const float PLAYERUPD_NEWMODEL = 2;
const float PLAYERUPD_CLIENTNUM = 4;
-.float clientNum;
-
#ifdef CLIENT
// TODO: instead of requiring the sqc to send so many coords optimize it to send just some flags, maybe? And only send the angles that are necessary
// and use input_angles for the local player?
@@ -201,7 +199,7 @@
if (self.playermodel != viewer.(playermodelCache[self.clientNum]))
{
playerFlags |= PLAYERUPD_NEWMODEL;
- //print( "new model!\n" );
+ //print( "Viewer: ", ftos( viewer.clientNum ), " Other: ", ftos( viewer.clientNum ), " - new model!\n" );
}
WriteByte( MSG_ENTITY, ET_PLAYER );
Modified: edu2/id1/qcsrc/common/player.qh
===================================================================
--- edu2/id1/qcsrc/common/player.qh 2008-02-28 00:31:03 UTC (rev 441)
+++ edu2/id1/qcsrc/common/player.qh 2008-02-28 03:08:18 UTC (rev 442)
@@ -1,6 +1,8 @@
// Enable for clientside player models
#define CLIENTSIDE_PLAYERMODELS
+.float clientNum;
+
#ifdef CLIENT
.vector v_angle;
Modified: edu2/id1/qcsrc/common/playermodel.qc
===================================================================
--- edu2/id1/qcsrc/common/playermodel.qc 2008-02-28 00:31:03 UTC (rev 441)
+++ edu2/id1/qcsrc/common/playermodel.qc 2008-02-28 03:08:18 UTC (rev 442)
@@ -26,7 +26,7 @@
void PlayerModel_SetModel (entity player, string legsModel, float legsSkin, string torsoModel, float torsoSkin, string headModel, float headSkin)
{
local string fullname;
-
+
fullname = PlayerModel_GetSubModelPath( legsModel, PM_LEGS );
precache_model(fullname);
setmodel(player.legs, fullname);
Modified: edu2/id1/qcsrc/common/util.qh
===================================================================
--- edu2/id1/qcsrc/common/util.qh 2008-02-28 00:31:03 UTC (rev 441)
+++ edu2/id1/qcsrc/common/util.qh 2008-02-28 03:08:18 UTC (rev 442)
@@ -49,6 +49,9 @@
float buf_load(string filename);
void buf_save(float buf, string filename);
+string str_load(string filename);
+void str_save(string lContent, string pFilename);
+
// modulo function
#ifndef MENUQC
float mod(float a, float b) { return a - (floor(a / b) * b); }
Modified: edu2/id1/qcsrc/menu/edu2/gamelist.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/gamelist.c 2008-02-28 00:31:03 UTC (rev 441)
+++ edu2/id1/qcsrc/menu/edu2/gamelist.c 2008-02-28 03:08:18 UTC (rev 442)
@@ -56,9 +56,9 @@
};
void( entity button ) Edu1_Start = {
- entity lDialog;
- lDialog = findstring( NULL, name, "LoginDialog" );
- DialogOpenButton_Click( button, lDialog );
+ registercvar( "edu1params", "", 0 );
+ str_save( strcat( cvar_string( "edu1params" ), "\n" ), "edu1launch.txt" );
+ localcmd( "quit\n" );
};
void( entity button ) DummyGame_Start = {
Added: edu2/start-edu1-server.bat
===================================================================
--- edu2/start-edu1-server.bat (rev 0)
+++ edu2/start-edu1-server.bat 2008-02-28 03:08:18 UTC (rev 442)
@@ -0,0 +1 @@
+@edu1-dedicated.exe -game edu1 -port 26666 +set sv_public 1 +map level1
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-28 00:31:07
|
Revision: 441
http://edu2.svn.sourceforge.net/edu2/?rev=441&view=rev
Author: blackhc
Date: 2008-02-27 16:31:03 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Fix a typo that caused gestures to be played to the viewer instead to the player who gestured.
New DP builds.
Modified Paths:
--------------
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2p-dedicated.exe
edu2/edu2p.exe
edu2/id1/qcsrc/common/player.qc
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2p-dedicated.exe
===================================================================
(Binary files differ)
Modified: edu2/edu2p.exe
===================================================================
(Binary files differ)
Modified: edu2/id1/qcsrc/common/player.qc
===================================================================
--- edu2/id1/qcsrc/common/player.qc 2008-02-27 23:46:07 UTC (rev 440)
+++ edu2/id1/qcsrc/common/player.qc 2008-02-28 00:31:03 UTC (rev 441)
@@ -135,7 +135,7 @@
headSkin = readbyte();
// @@@ Bit of abuse: see sending
self.clientNum = readbyte() + 1;
-
+
PlayerModel_SetModel (self,
legsModel, legsSkin,
torsoModel, torsoSkin,
@@ -172,12 +172,12 @@
entity Player_EntityForClientNum (float clientnum)
{
- return findchainfloat (clientNum, clientnum + 1);
+ return findfloat (world, clientNum, clientnum + 1);
}
void Player_DoAction (entity player, float action)
{
- PlayerModel_StartAnimation(self, action, Player_OnFrameChange_Legs, Player_OnFrameChange_Torso);
+ PlayerModel_StartAnimation(player, action, Player_OnFrameChange_Legs, Player_OnFrameChange_Torso);
}
#endif
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 23:46:08
|
Revision: 440
http://edu2.svn.sourceforge.net/edu2/?rev=440&view=rev
Author: blackhc
Date: 2008-02-27 15:46:07 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Commit a patch from res2k.
Don't remove or respawn terminals.
Don't save the edu2logincommands cvar.
Modified Paths:
--------------
edu2/OffscreenGecko.dll
edu2/OffscreenGecko.pdb
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2/progs.dat
edu2/edu2/progs.lno
edu2/id1/qcsrc/cgame/cgame.qc
edu2/id1/qcsrc/cgame/csqc_builtins.qh
edu2/id1/qcsrc/common/geckoterminal.qc
edu2/id1/qcsrc/common/playermodel.qc
edu2/id1/qcsrc/menu/edu2/dialog_login.c
Modified: edu2/OffscreenGecko.dll
===================================================================
(Binary files differ)
Modified: edu2/OffscreenGecko.pdb
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/progs.lno
===================================================================
(Binary files differ)
Modified: edu2/id1/qcsrc/cgame/cgame.qc
===================================================================
--- edu2/id1/qcsrc/cgame/cgame.qc 2008-02-27 22:20:00 UTC (rev 439)
+++ edu2/id1/qcsrc/cgame/cgame.qc 2008-02-27 23:46:07 UTC (rev 440)
@@ -123,6 +123,20 @@
// --------------------------------------------------------------------------
// BEGIN OPTIONAL CSQC FUNCTIONS
+// EDU2 handling:
+// entities who dont want to be deleted simply dont remove themself on Ent_Remove
+entity CSQC_Ent_Spawn(float realentnum) {
+ // try to find the entity (if it already exists)
+ entity lEntity;
+ lEntity = findfloat( world, entnum, realentnum );
+ if( lEntity == world ) {
+ dprint( "Couldnt find ", ftos( realentnum ), "\n" );
+ lEntity = spawn();
+ lEntity.entnum = realentnum;
+ }
+ return lEntity;
+}
+
// CSQC_Ent_Update : Called every frame that the server has indicated an update to the SSQC / CSQC entity has occured.
// The only parameter reflects if the entity is "new" to the client, meaning it just came into the client's PVS.
void CSQC_Ent_Update(float isNew)
@@ -154,6 +168,7 @@
if( self.RemoveEvent ) {
self.RemoveEvent();
} else {
+ print( "Removing for real: ", self.targetURL, "\n" );
remove(self);
}
}
Modified: edu2/id1/qcsrc/cgame/csqc_builtins.qh
===================================================================
--- edu2/id1/qcsrc/cgame/csqc_builtins.qh 2008-02-27 22:20:00 UTC (rev 439)
+++ edu2/id1/qcsrc/cgame/csqc_builtins.qh 2008-02-27 23:46:07 UTC (rev 440)
@@ -73,7 +73,7 @@
void(vector v1, vector min, vector max, vector v2, float nomonsters, entity forent) tracebox = #90;
vector() randomvec = #91;
vector(vector org) getlight = #92;
-float(string name, string value) registercvar = #93;
+float(string name, string value, float flags) registercvar = #93;
float( float a, ... ) min = #94;
float( float b, ... ) max = #95;
float(float minimum, float val, float maximum) bound = #96;
Modified: edu2/id1/qcsrc/common/geckoterminal.qc
===================================================================
--- edu2/id1/qcsrc/common/geckoterminal.qc 2008-02-27 22:20:00 UTC (rev 439)
+++ edu2/id1/qcsrc/common/geckoterminal.qc 2008-02-27 23:46:07 UTC (rev 440)
@@ -11,6 +11,10 @@
return true;
}
+void() gecko_terminal_reset_flags = {
+ self.effects = 0;
+}
+
void() gecko_terminal = {
self.solid = SOLID_BSP;
self.movetype = MOVETYPE_NONE;
@@ -18,10 +22,14 @@
self.classname = "gecko_terminal";
setorigin (self, self.origin);
setmodel (self, self.model);
-
+
self.SendEntity = gecko_terminal_send;
// send it once
self.Version = 1;
+
+ self.effects = EF_NODEPTHTEST;
+ self.think = gecko_terminal_reset_flags;
+ self.nextthink = time + 0.01;
};
#endif
#ifdef CLIENT
@@ -37,9 +45,6 @@
// used to determine the correct distance from the terminal - is there a better solution? (origin is always 0 0 0)
.vector centroid;
-void() gecko_terminal_think = {
-};
-
void() gecko_terminal_update =
{
setmodelindex( self, readshort() );
@@ -56,12 +61,16 @@
}
void() gecko_terminal_removeEvent = {
- gecko_destroy( self.geckoInstanceName );
- strunzone( self.targetURL );
- remove( self );
+ // dont delete terminals
+ // they are static
}
void() gecko_terminal_spawnFromMessage = {
+ // dont respawn if the terminal only reenters the view
+ if( self.solid == 4 ) {
+ gecko_terminal_update();
+ return;
+ }
self.solid = 4;
setmodelindex( self, readshort() );
@@ -100,7 +109,7 @@
// remove the "textures/"
self.geckoInstanceName = strzone( substring( lTextureName, 9, 1000 ) );
- print( self.geckoInstanceName, ": ", self.targetURL, "\n" );
+ dprint( self.geckoInstanceName, ": ", self.targetURL, "\n" );
gecko_create( self.geckoInstanceName );
if( substring( self.targetURL, 0, 7 ) != "http://" ) {
@@ -118,9 +127,6 @@
self.classname = "gecko_terminal";
self.RemoveEvent = gecko_terminal_removeEvent;
self.UpdateEntity = gecko_terminal_update;
- self.think = gecko_terminal_think;
- // sucky..
- self.nextthink = time;
};
// only x and y are used
Modified: edu2/id1/qcsrc/common/playermodel.qc
===================================================================
--- edu2/id1/qcsrc/common/playermodel.qc 2008-02-27 22:20:00 UTC (rev 439)
+++ edu2/id1/qcsrc/common/playermodel.qc 2008-02-27 23:46:07 UTC (rev 440)
@@ -250,7 +250,7 @@
playerPart.(animData[ lAnimIndex ]) = lAnimData;
//print( vtos( lAnimData ), "\n" );
}
- print( "Loaded animfile '", modelDir, "/animation.cfg'\n" );
+ dprint( "Loaded animfile '", modelDir, "/animation.cfg'\n" );
}
string( float type ) _PlayerModel_GetModelSuffix = {
Modified: edu2/id1/qcsrc/menu/edu2/dialog_login.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 22:20:00 UTC (rev 439)
+++ edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 23:46:07 UTC (rev 440)
@@ -48,7 +48,7 @@
menu_delayed_time = time + 3.0;
menu_delayed_function = LoginDialog_ReloadProfile;
- registercvar( "edu2logincommands", "map $edu2map", CVAR_SAVE );
+ registercvar( "edu2logincommands", "map $edu2map", 0 );
localcmd( cvar_string( "edu2logincommands" ), "\n" );
Edu2InfoTabsDialog_onLoggedIn();
me.close( me );
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 22:20:08
|
Revision: 439
http://edu2.svn.sourceforge.net/edu2/?rev=439&view=rev
Author: blackhc
Date: 2008-02-27 14:20:00 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
quake.rc sets a default map (edu2map) and precaches it before toggling the menu. This is bad for delays when you want to enter and quit the game quickly but its good for response times when clicking on OK in the login button at game start.
Modified Paths:
--------------
edu2/edu2/quake.rc
Modified: edu2/edu2/quake.rc
===================================================================
--- edu2/edu2/quake.rc 2008-02-27 22:14:13 UTC (rev 438)
+++ edu2/edu2/quake.rc 2008-02-27 22:20:00 UTC (rev 439)
@@ -1,3 +1,5 @@
+set edu2map abg_licht2
+
exec default.cfg
exec config.cfg
exec autoexec.cfg
@@ -2,2 +4,4 @@
+stuffcmds
+
//startdemos demos/demo1 demos/demo2 demos/demo3
@@ -15,13 +19,9 @@
loadfont menu gfx/vera-sans
loadfont user0 gfx/font_user0
-//map test
-set edu2map abg_licht2
// use +set edu2logincommands to set what to do after login
// precache the map
map $edu2map
disconnect
-// show the menu
+wait
togglemenu
-
-stuffcmds
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 22:14:17
|
Revision: 438
http://edu2.svn.sourceforge.net/edu2/?rev=438&view=rev
Author: blackhc
Date: 2008-02-27 14:14:13 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
New release build.
Modified Paths:
--------------
edu2/edu2p.exe
Modified: edu2/edu2p.exe
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 21:58:39
|
Revision: 437
http://edu2.svn.sourceforge.net/edu2/?rev=437&view=rev
Author: blackhc
Date: 2008-02-27 13:58:30 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Commit a dedicated edu2p build.
Modified Paths:
--------------
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2/quake.rc
edu2/id1/qcsrc/menu/edu2/dialog_login.c
Added Paths:
-----------
edu2/edu2p-dedicated.exe
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/quake.rc
===================================================================
--- edu2/edu2/quake.rc 2008-02-27 21:21:09 UTC (rev 436)
+++ edu2/edu2/quake.rc 2008-02-27 21:58:30 UTC (rev 437)
@@ -1,7 +1,7 @@
exec default.cfg
exec config.cfg
exec autoexec.cfg
-stuffcmds
+
//startdemos demos/demo1 demos/demo2 demos/demo3
//startdemos
//play announcer/male/welcome.ogg
@@ -16,3 +16,12 @@
loadfont user0 gfx/font_user0
//map test
+set edu2map abg_licht2
+// use +set edu2logincommands to set what to do after login
+// precache the map
+map $edu2map
+disconnect
+// show the menu
+togglemenu
+
+stuffcmds
Added: edu2/edu2p-dedicated.exe
===================================================================
(Binary files differ)
Property changes on: edu2/edu2p-dedicated.exe
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: edu2/id1/qcsrc/menu/edu2/dialog_login.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 21:21:09 UTC (rev 436)
+++ edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 21:58:30 UTC (rev 437)
@@ -48,7 +48,8 @@
menu_delayed_time = time + 3.0;
menu_delayed_function = LoginDialog_ReloadProfile;
- localcmd( "map test\n" );
+ registercvar( "edu2logincommands", "map $edu2map", CVAR_SAVE );
+ localcmd( cvar_string( "edu2logincommands" ), "\n" );
Edu2InfoTabsDialog_onLoggedIn();
me.close( me );
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 21:21:14
|
Revision: 436
http://edu2.svn.sourceforge.net/edu2/?rev=436&view=rev
Author: blackhc
Date: 2008-02-27 13:21:09 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Update the login state automatically.
Login now performs a facebook login, too.
Logout logs you out of facebook.
Reload campus and profile on logout.
Add menu_delayed_function/time to menu.qc/qh, which allows us to perform a delayed function call (useful for reloading webpages).
Modified Paths:
--------------
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c
edu2/id1/qcsrc/menu/edu2/dialog_infotabs.c
edu2/id1/qcsrc/menu/edu2/dialog_login.c
edu2/id1/qcsrc/menu/edu2/dialog_logout.c
edu2/id1/qcsrc/menu/edu2/dialog_profile.c
edu2/id1/qcsrc/menu/item/gecko.c
edu2/id1/qcsrc/menu/menu.qc
edu2/id1/qcsrc/menu/menu.qh
edu2/id1/qcsrc/menu/nexuiz/dialog_news.c
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c 2008-02-27 21:21:09 UTC (rev 436)
@@ -8,11 +8,11 @@
ATTRIB(GameListDialog, rows, float, 21)
ATTRIB(GameListDialog, columns, float, 5)
ATTRIB(GameListDialog, campaignBox, entity, NULL)
+ ATTRIB(GameListDialog, name, string, "GameListDialog")
ENDCLASS(GameListDialog)
#endif
#ifdef IMPLEMENTATION
-
void fillGameListDialog(entity me)
{
entity e;
Modified: edu2/id1/qcsrc/menu/edu2/dialog_infotabs.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_infotabs.c 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/edu2/dialog_infotabs.c 2008-02-27 21:21:09 UTC (rev 436)
@@ -15,11 +15,29 @@
void() Edu2InfoTabsDialog_onLoggedIn;
void() Edu2InfoTabsDialog_onLoggedOut;
+void() Edu2InfoTabsDialog_updateLoginState;
+
+entity loginout_browser;
#endif
#ifdef IMPLEMENTATION
entity Edu2InfoTabsDialog_logInOutButton;
+float Edu2InfoTabsDialog_isLoggedIn;
+void() Edu2InfoTabsDialog_updateLoginState = {
+ if( gamestatus & GAME_CONNECTED ) {
+ if( !Edu2InfoTabsDialog_isLoggedIn ) {
+ Edu2InfoTabsDialog_onLoggedIn();
+ }
+ Edu2InfoTabsDialog_isLoggedIn = true;
+ } else {
+ if( Edu2InfoTabsDialog_isLoggedIn ) {
+ Edu2InfoTabsDialog_onLoggedOut();
+ }
+ Edu2InfoTabsDialog_isLoggedIn = false;
+ }
+};
+
void() Edu2InfoTabsDialog_onLoggedIn = {
entity e;
e = Edu2InfoTabsDialog_logInOutButton;
@@ -78,3 +96,4 @@
me.TD(me, me.rows - 2, me.columns, mc);
}
#endif
+
Modified: edu2/id1/qcsrc/menu/edu2/dialog_login.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 21:21:09 UTC (rev 436)
@@ -10,9 +10,9 @@
ATTRIB(LoginDialog, titleHeight, float, SKINFONTSIZE_NORMAL * SKINHEIGHT_NORMAL * 1.2 ) // pixels
ATTRIB(LoginDialog, titleFontSize, float, SKINFONTSIZE_NORMAL * 1.2 ) // pixels
- ATTRIB(LoginDialog, intendedWidth, float, 0.4)
- ATTRIB(LoginDialog, rows, float, 4)
- ATTRIB(LoginDialog, columns, float, 3)
+ ATTRIB(LoginDialog, intendedWidth, float, 0.4) // 0.4
+ ATTRIB(LoginDialog, rows, float, 4) // 4
+ ATTRIB(LoginDialog, columns, float, 3) // 3
ATTRIB(LoginDialog, name, string, "LoginDialog")
ATTRIB(LoginDialog, closable, float, 0)
@@ -25,21 +25,29 @@
#endif
#ifdef IMPLEMENTATION
-void LoginDialog_onOasdasdkClick(entity button, entity me)
+#define REG_EDU2_USERNAME "edu2/login/username"
+#define REG_EDU2_PASSWORD "edu2/login/password"
+
+void LoginDialog_ReloadProfile()
{
- // TODO: rewrite this to use gecko builtins but Im not sure whether its ok timing-wise
- localcmd( "gecko_create loginProcess; gecko_navigate loginProcess http://www.facebook.com; wait; wait; wait; wait;",
- "gecko_navigate loginProcess \"javascript:document.loginform.email.value=\\\"", me.username.text,
- "\\\"; document.loginform.pass.value=\\\"", me.password.text, "\\\"; login_form_change(); document.loginform.submit();\"\n");
+ profile_browser.goHome( profile_browser );
}
-#define REG_EDU2_USERNAME "edu2/login/username"
-#define REG_EDU2_PASSWORD "edu2/login/password"
-
void LoginDialog_onOkClick(entity button, entity me)
{
+ // TODO: delay the whole thing? Black
db_put( menu_registry, REG_EDU2_USERNAME, me.username.text );
db_put( menu_registry, REG_EDU2_PASSWORD, me.password.text );
+ loginout_browser.executeScript( loginout_browser,
+ strcat(
+"document.loginform.email.value%3D%22", me.username.text, "%22%3B%0Adocument.loginform.pass.value%3D%22", me.password.text,
+"%22%3B%0Adocument.loginform.persistent.checked%3Dtrue%3B%0Aif%28%20document.loginform.persistent.checked.dialog%20%21%3D%20null%20%29%0A%09document.loginform.persistent.checked.dialog.hide%28%29%3B%0Alogin_form_change%28%29%3B%0A%0Athis.disabled%3Dtrue%3B%20document.loginform.submit%28%29%3B%0Adocument.loginform.submit%28%29%3B"
+ ) );
+
+ // TODO: needs to be delayed Black!!
+ menu_delayed_time = time + 3.0;
+ menu_delayed_function = LoginDialog_ReloadProfile;
+
localcmd( "map test\n" );
Edu2InfoTabsDialog_onLoggedIn();
me.close( me );
@@ -82,6 +90,11 @@
me.TD( me, 1, 1, makeNexuizTextLabel( 0, _("Password:") ) );
me.TD( me, 1, 2, me.password );
me.TR( me );
+
+ loginout_browser = spawnGecko();
+ //me.TD( me, 16, 10, loginout_browser );
+ loginout_browser.configureBrowser( loginout_browser, "http://www.facebook.com", false );
+
me.TR( me );
me.TDempty( me, 1 );
me.TD( me, 1, 1, me.okButton );
Modified: edu2/id1/qcsrc/menu/edu2/dialog_logout.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-02-27 21:21:09 UTC (rev 436)
@@ -15,7 +15,14 @@
#ifdef IMPLEMENTATION
void LogoutDialog_onYesClick(entity button, entity me)
{
+ loginout_browser.executeScript( loginout_browser,
+ "for%28%20var%20i%20%3D%200%20%3B%20i%20%3C%20document.links.length%20%3B%20i++%20%29%20%7B%0A%20%20%20%20var%20str%20%3D%20String%28%20document.links%5Bi%5D.href%20%29%3B%0A%20%20%20%20if%28%20str.search%28%20%22www.facebook.com/logout.php%22%20%29%20%21%3D%20-1%20%29%20%7B%0A%20%20%20%20%20%20%20%20location.assign%28%20str%20+%20%22%26confirm%3D1%22%20%29%3B%0A%0A%20%20%20%20%7D%0A%7D%0A"
+ );
+ profile_browser.goHome( profile_browser );
+ campus_browser.goHome( campus_browser );
+
localcmd( "disconnect\n" );
+
Edu2InfoTabsDialog_onLoggedOut();
me.close( me );
}
Modified: edu2/id1/qcsrc/menu/edu2/dialog_profile.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_profile.c 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/edu2/dialog_profile.c 2008-02-27 21:21:09 UTC (rev 436)
@@ -7,6 +7,7 @@
ATTRIB(Edu2ProfileDialog, rows, float, 24)
ATTRIB(Edu2ProfileDialog, columns, float, 1)
ENDCLASS(Edu2ProfileDialog)
+entity profile_browser;
#endif
#ifdef IMPLEMENTATION
@@ -22,7 +23,7 @@
{
entity e;
me.TR(me);
- me.TD(me, 24, 1, e = spawnGecko());
- e.configureBrowser( e, "http://www.facebook.com" );
+ me.TD(me, 24, 1, e = profile_browser = spawnGecko());
+ e.configureBrowser( e, "http://www.facebook.com", true );
}
#endif
Modified: edu2/id1/qcsrc/menu/item/gecko.c
===================================================================
--- edu2/id1/qcsrc/menu/item/gecko.c 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/item/gecko.c 2008-02-27 21:21:09 UTC (rev 436)
@@ -1,15 +1,19 @@
// Andreas Kirsch Gecko item (to test it)
#ifdef INTERFACE
CLASS(Gecko) EXTENDS(Item)
- METHOD( Gecko, configureBrowser, void( entity, string ) )
+ METHOD( Gecko, configureBrowser, void( entity, string, float ) )
+ METHOD( Gecko, navigate, void( entity, string, float ) )
+ METHOD( Gecko, goHome, void(entity) )
METHOD( Gecko, draw, void(entity))
METHOD( Gecko, keyDown, float(entity, float, float, float))
METHOD( Gecko, keyUp, float(entity, float, float, float))
+ METHOD( Gecko, executeScript, void(entity, string))
METHOD( Gecko, mouseMove, float(entity, vector))
METHOD( Gecko, mouseDrag, float(entity, vector))
METHOD( Gecko, resizeNotify, void(entity, vector, vector, vector, vector))
ATTRIB( Gecko, texturePath, string, string_null )
ATTRIB( Gecko, textureExtent, vector, '0 0 0')
+ ATTRIB( Gecko, homeURI, string, string_null )
ENDCLASS(Item)
#endif
@@ -17,7 +21,7 @@
// define static members
float _gecko_instanceNumber;
-void configureBrowserGecko( entity me, string URI ) {
+void configureBrowserGecko( entity me, string URI, float useTerminalBrowser ) {
me.focusable = 1;
//create a new gecko object if needed
@@ -27,11 +31,41 @@
// TODO: add error checks
gecko_create( me.texturePath );
}
- gecko_navigate( me.texturePath, strcat( "http://www.icculus.org/~black/stuff/terminalbrowser.html?", URI ) );
+ string lFullURI;
+ if( useTerminalBrowser ) {
+ lFullURI = strcat( "http://www.icculus.org/~black/stuff/terminalbrowser.html?", URI );
+ } else {
+ lFullURI = URI;
+ }
+ // TODO: FIXME possible leak!
+ me.homeURI = strzone( lFullURI );
+ gecko_navigate( me.texturePath, lFullURI);
//gecko_navigate( me.texturePath, "about:blank" );
//gecko_navigate( me.texturePath, "javascript:Darkplaces.query( 123 );" );
}
+void navigateGecko( entity me, string URI, float useTerminalBrowser) {
+ string lFullURI;
+ if( useTerminalBrowser ) {
+ lFullURI = strcat( "http://www.icculus.org/~black/stuff/terminalbrowser.html?", URI );
+ } else {
+ lFullURI = URI;
+ }
+ if not( me.homeURI ) {
+ strunzone( me.homeURI );
+ }
+ me.homeURI = strzone( lFullURI );
+ gecko_navigate( me.texturePath, lFullURI);
+}
+
+void goHomeGecko( entity me ) {
+ gecko_navigate( me.texturePath, me.homeURI );
+}
+
+void executeScriptGecko( entity me, string pCode ) {
+ gecko_navigate( me.texturePath, strcat( "javascript:", pCode ) );
+}
+
void drawGecko(entity me)
{
vector drawSize;
Modified: edu2/id1/qcsrc/menu/menu.qc
===================================================================
--- edu2/id1/qcsrc/menu/menu.qc 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/menu.qc 2008-02-27 21:21:09 UTC (rev 436)
@@ -279,7 +279,7 @@
//m_hide();
//}
}
-
+
if(cvar("cl_capturevideo"))
frametime = cvar("menu_slowmo") / cvar("cl_capturevideo_fps"); // make capturevideo work smoothly
@@ -331,6 +331,15 @@
if(menuAlpha > 0)
drawBackground(SKINGFX_BACKGROUND_INGAME, menuAlpha * SKINALPHA_BACKGROUND_INGAME);
}
+
+ // TODO: move this somewhere else - doesnt really make sense to have that here BlackHC
+ Edu2InfoTabsDialog_updateLoginState();
+
+ // TODO: move this somewhere else - Black
+ if( menu_delayed_time != -1 && menu_delayed_time < time ) {
+ menu_delayed_function();
+ menu_delayed_time = -1;
+ }
draw_reset();
preMenuDraw();
Modified: edu2/id1/qcsrc/menu/menu.qh
===================================================================
--- edu2/id1/qcsrc/menu/menu.qh 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/menu.qh 2008-02-27 21:21:09 UTC (rev 436)
@@ -60,5 +60,8 @@
string( float index ) MessageLog_Get;
+var void() menu_delayed_function = SUB_Null;
+var float menu_delayed_time = -1;
+
float menu_registry;
const string MENU_REGISTRY_FILE = "menu.registry";
Modified: edu2/id1/qcsrc/menu/nexuiz/dialog_news.c
===================================================================
--- edu2/id1/qcsrc/menu/nexuiz/dialog_news.c 2008-02-27 19:27:34 UTC (rev 435)
+++ edu2/id1/qcsrc/menu/nexuiz/dialog_news.c 2008-02-27 21:21:09 UTC (rev 436)
@@ -7,6 +7,7 @@
ATTRIB(NexuizNewsDialog, rows, float, 24)
ATTRIB(NexuizNewsDialog, columns, float, 1)
ENDCLASS(NexuizNewsDialog)
+entity campus_browser;
#endif
#ifdef IMPLEMENTATION
@@ -22,7 +23,7 @@
{
entity e;
me.TR(me);
- me.TD(me, 24, 1, e = spawnGecko());
- e.configureBrowser( e, "http://campus.edu-shooter.de" );
+ me.TD(me, 24, 1, e = campus_browser = spawnGecko());
+ e.configureBrowser( e, "http://campus.edu-shooter.de", true );
}
#endif
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 19:28:49
|
Revision: 435
http://edu2.svn.sourceforge.net/edu2/?rev=435&view=rev
Author: blackhc
Date: 2008-02-27 11:27:34 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Commit new engine build.
Modified Paths:
--------------
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/edu2p.exe
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2p.exe
===================================================================
(Binary files differ)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <re...@us...> - 2008-02-27 17:12:26
|
Revision: 434
http://edu2.svn.sourceforge.net/edu2/?rev=434&view=rev
Author: res2002
Date: 2008-02-27 09:12:23 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Updated OSGK, using latest XULrunner
Modified Paths:
--------------
edu2/OffscreenGecko.dll
edu2/OffscreenGecko.pdb
edu2/xulrunner-win32/AccessibleMarshal.dll
edu2/xulrunner-win32/IA2Marshal.dll
edu2/xulrunner-win32/README.txt
edu2/xulrunner-win32/chrome/classic.jar
edu2/xulrunner-win32/chrome/comm.jar
edu2/xulrunner-win32/chrome/en-US.jar
edu2/xulrunner-win32/chrome/pippki.jar
edu2/xulrunner-win32/chrome/toolkit.jar
edu2/xulrunner-win32/components/FeedProcessor.js
edu2/xulrunner-win32/components/accessibility.xpt
edu2/xulrunner-win32/components/autocomplete.xpt
edu2/xulrunner-win32/components/caps.xpt
edu2/xulrunner-win32/components/content_base.xpt
edu2/xulrunner-win32/components/contentprefs.xpt
edu2/xulrunner-win32/components/docshell_base.xpt
edu2/xulrunner-win32/components/dom_base.xpt
edu2/xulrunner-win32/components/dom_events.xpt
edu2/xulrunner-win32/components/dom_offline.xpt
edu2/xulrunner-win32/components/dom_storage.xpt
edu2/xulrunner-win32/components/dom_svg.xpt
edu2/xulrunner-win32/components/dom_xul.xpt
edu2/xulrunner-win32/components/downloads.xpt
edu2/xulrunner-win32/components/editor.xpt
edu2/xulrunner-win32/components/extensions.xpt
edu2/xulrunner-win32/components/exthandler.xpt
edu2/xulrunner-win32/components/imglib2.xpt
edu2/xulrunner-win32/components/inspector.xpt
edu2/xulrunner-win32/components/loginmgr.xpt
edu2/xulrunner-win32/components/necko.xpt
edu2/xulrunner-win32/components/necko_cache.xpt
edu2/xulrunner-win32/components/necko_dns.xpt
edu2/xulrunner-win32/components/nsBlocklistService.js
edu2/xulrunner-win32/components/nsContentDispatchChooser.js
edu2/xulrunner-win32/components/nsContentPrefService.js
edu2/xulrunner-win32/components/nsDownloadManagerUI.js
edu2/xulrunner-win32/components/nsExtensionManager.js
edu2/xulrunner-win32/components/nsHandlerService.js
edu2/xulrunner-win32/components/nsHelperAppDlg.js
edu2/xulrunner-win32/components/nsLivemarkService.js
edu2/xulrunner-win32/components/nsLoginInfo.js
edu2/xulrunner-win32/components/nsLoginManager.js
edu2/xulrunner-win32/components/nsLoginManagerPrompter.js
edu2/xulrunner-win32/components/nsTaggingService.js
edu2/xulrunner-win32/components/nsURLFormatter.js
edu2/xulrunner-win32/components/nsUpdateService.js
edu2/xulrunner-win32/components/pipnss.xpt
edu2/xulrunner-win32/components/places.xpt
edu2/xulrunner-win32/components/prefetch.xpt
edu2/xulrunner-win32/components/storage-Legacy.js
edu2/xulrunner-win32/components/storage.xpt
edu2/xulrunner-win32/components/txEXSLTRegExFunctions.js
edu2/xulrunner-win32/components/update.xpt
edu2/xulrunner-win32/components/widget.xpt
edu2/xulrunner-win32/components/windowds.xpt
edu2/xulrunner-win32/components/xpcom_io.xpt
edu2/xulrunner-win32/components/xpcom_system.xpt
edu2/xulrunner-win32/components/xpconnect.xpt
edu2/xulrunner-win32/components/xpinstall.xpt
edu2/xulrunner-win32/components/xultmpl.xpt
edu2/xulrunner-win32/crashreporter.exe
edu2/xulrunner-win32/crashreporter.ini
edu2/xulrunner-win32/dependentlibs.list
edu2/xulrunner-win32/dictionaries/en-US.aff
edu2/xulrunner-win32/dictionaries/en-US.dic
edu2/xulrunner-win32/freebl3.chk
edu2/xulrunner-win32/freebl3.dll
edu2/xulrunner-win32/greprefs/all.js
edu2/xulrunner-win32/javaxpcom.jar
edu2/xulrunner-win32/javaxpcomglue.dll
edu2/xulrunner-win32/js3250.dll
edu2/xulrunner-win32/modules/Microformats.js
edu2/xulrunner-win32/mozctl.dll
edu2/xulrunner-win32/mozctlx.dll
edu2/xulrunner-win32/nspr4.dll
edu2/xulrunner-win32/nss3.dll
edu2/xulrunner-win32/nssckbi.dll
edu2/xulrunner-win32/nssdbm3.dll
edu2/xulrunner-win32/platform.ini
edu2/xulrunner-win32/plc4.dll
edu2/xulrunner-win32/plds4.dll
edu2/xulrunner-win32/plugins/npnul32.dll
edu2/xulrunner-win32/res/arrow.gif
edu2/xulrunner-win32/res/arrowd.gif
edu2/xulrunner-win32/res/dtd/mathml.dtd
edu2/xulrunner-win32/res/entityTables/mathml20.properties
edu2/xulrunner-win32/res/fonts/mathfont.properties
edu2/xulrunner-win32/res/fonts/mathfontSTIXNonUnicode.properties
edu2/xulrunner-win32/res/forms.css
edu2/xulrunner-win32/res/html.css
edu2/xulrunner-win32/res/language.properties
edu2/xulrunner-win32/res/mathml.css
edu2/xulrunner-win32/res/table-add-column-after-active.gif
edu2/xulrunner-win32/res/table-add-column-before-active.gif
edu2/xulrunner-win32/res/table-add-row-after-active.gif
edu2/xulrunner-win32/res/table-add-row-before-active.gif
edu2/xulrunner-win32/smime3.dll
edu2/xulrunner-win32/softokn3.chk
edu2/xulrunner-win32/softokn3.dll
edu2/xulrunner-win32/sqlite3.dll
edu2/xulrunner-win32/ssl3.dll
edu2/xulrunner-win32/updater.exe
edu2/xulrunner-win32/xpcom.dll
edu2/xulrunner-win32/xpidl.exe
edu2/xulrunner-win32/xpt_dump.exe
edu2/xulrunner-win32/xpt_link.exe
edu2/xulrunner-win32/xul.dll
edu2/xulrunner-win32/xulrunner-stub.exe
edu2/xulrunner-win32/xulrunner.exe
Added Paths:
-----------
edu2/xulrunner-win32/components/dom_json.xpt
edu2/xulrunner-win32/components/nsAddonRepository.js
edu2/xulrunner-win32/modules/DownloadUtils.jsm
edu2/xulrunner-win32/modules/PluralForm.jsm
edu2/xulrunner-win32/nssutil3.dll
edu2/xulrunner-win32/xpcshell.exe
Modified: edu2/OffscreenGecko.dll
===================================================================
(Binary files differ)
Modified: edu2/OffscreenGecko.pdb
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/AccessibleMarshal.dll
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/IA2Marshal.dll
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/README.txt
===================================================================
--- edu2/xulrunner-win32/README.txt 2008-02-27 16:39:23 UTC (rev 433)
+++ edu2/xulrunner-win32/README.txt 2008-02-27 17:12:23 UTC (rev 434)
@@ -1,306 +1,20 @@
-==============================================================
+For information on how to build Mozilla from the source code, see:
-= = = = = = = = = = Mozilla Read Me = = = = = = = = = = =
+ http://developer.mozilla.org/en/docs/Build_Documentation
-==============================================================
+To have your bug fix / feature added to Mozilla, you should create a patch and
+submit it to Bugzilla (http://bugzilla.mozilla.org). Instructions are at:
-Mozilla is subject to the terms detailed in the license
-agreement accompanying it.
+ http://developer.mozilla.org/en/docs/Creating_a_patch
+ http://developer.mozilla.org/en/docs/Getting_your_patch_in_the_tree
-This Read Me file contains information about system
-requirements and installation instructions for the Windows,
-Mac OS, and Linux builds of Mozilla.
+If you have a question about developing Mozilla, and can't find the solution
+on http://developer.mozilla.org, you can try asking your question in a
+mozilla.* Usenet group, or on IRC at irc.mozilla.org. [The Mozilla news groups
+are accessible on Google Groups, or news.mozilla.org with a NNTP reader.]
-For more info on Mozilla, see www.mozilla.org. To submit bugs
-or other feedback, see the Navigator QA menu and check out
-Bugzilla at http://bugzilla.mozilla.org for links to known
-bugs, bug-writing guidelines, and more. You can also get help
-with Bugzilla by pointing your IRC client to #mozillazine
-at irc.mozilla.org.
+You can download nightly development builds from the the Mozilla FTP server.
+Keep in mind that nightly builds, which are used by Mozilla developers for
+testing, may be buggy. Firefox nightlies, for example, can be found at:
-
-==============================================================
-
- Getting Mozilla
-
-==============================================================
-
-You can download nightly builds of Mozilla from the
-Mozilla.org FTP site at
-
- ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/nightly/
-
-For the very latest builds, see
-
- ftp://ftp.mozilla.org/pub/mozilla.org/mozilla/nightly/latest-trunk
-
-Keep in mind that nightly builds, which are used by
-Mozilla.org developers for testing, may be buggy. If you are
-looking for a more polished version of Mozilla, Mozilla.org
-releases Milestone builds of Mozilla every six weeks or so
-that you can download from
-
- http://www.mozilla.org/releases
-
-Be sure to read the Mozilla release notes for information
-on known problems and installation issues with Mozilla.
-The release notes can be found at the preceding URL along
-with the milestone releases themselves.
-
-Note: Please use Talkback builds whenever possible. These
-builds allow transmission of crash data back to Mozilla
-developers, improved crash analysis, and posting of crash
-information to our crash-data newsgroup.
-
-
-==============================================================
-
- System Requirements
-
-==============================================================
-
-*All Platforms
-
- To view and use the new streamlined "Modern" theme,
- your display monitor should be set to display
- thousands of colors. For users who cannot set their
- displays to use more than 256 colors, Mozilla.org
- recommends using the "Classic" theme for Mozilla.
-
- To select the Modern theme after you have installed
- Mozilla, from the Navigator browser, open the View
- menu, and then open then open the Apply Theme submenu
- and choose Modern.
-
-*Mac OS
-
- -Mac OS X or later
- -PowerPC processor (266 MHz or faster recommended)
- -64 MB RAM
- -36 MB of free hard disk space
-
-*Windows
-
- -Windows 95, 98, Me, NT4, 2000 or XP
- -Intel Pentium class processor (233 MHz or faster
- recommended)
- -64 MB RAM
- -26 MB free hard disk space
-
-*Linux
-
- -The following library versions (or compatible) are
- required: glibc 2.1, XFree86 3.3.x, GTK 1.2.x, Glib
- 1.2.x, Libstdc++ 2.9.0. Red Hat Linux 6.0,
- Debian 2.1, and SuSE 6.2 (or later) installations
- should work.
- -Red Hat 6.x users who want to install the Mozilla
- RPM must have at least version 4.0.2 of rpm
- installed.
- -Intel Pentium class processor (233 MHz or faster
- recommended)
- -64MB RAM
- -26MB free hard disk space
-
-
-==============================================================
-
- Installation Instructions
-
-==============================================================
-
-For Mac OS and Windows users, it is strongly recommended that
-you exit all programs before running the setup program. Also,
-you should temporarily disable virus-detection software.
-
-For Linux users, note that the installation instructions use
-the bash shell. If you're not using bash, adjust the commands
-accordingly.
-
-For all platforms, install into a clean (new) directory.
-Installing on top of previously released builds may cause
-problems.
-
-Note: These instructions do not tell you how to build Mozilla.
-For info on building the Mozilla source, see
-
- http://www.mozilla.org/source.html
-
-
-Windows Installation Instructions
----------------------------------
-
-Note: For Windows NT/2000/XP systems, you need Administrator
-privileges to install Mozilla. If you see an "Error 5" message
-during installation, make sure you're running the installation
-with Administrator privileges.
-
-
- To install Mozilla by downloading the Mozilla installer,
- follow these steps:
-
- 1. Click the the mozilla-win32-installer.exe link on
- the site you're downloading Mozilla from to download
- the installer file to your machine.
-
- 2. Navigate to where you downloaded the file and
- double-click the Mozilla program icon on your machine
- to begin the Setup program.
-
- 3. Follow the on-screen instructions in the setup
- program. The program starts automatically the first
- time.
-
-
- To install Mozilla by downloading the .zip file and
- installing manually, follow these steps:
-
- 1. Click the mozilla-win32-talkback.zip link or the
- mozilla-win32.zip link on the site you're down-
- loading Mozilla from to download the .zip file to
- your machine.
-
- 2. Navigate to where you downloaded the file and
- double-click the compressed file.
-
- Note: This step assumes you already have a recent
- version of WinZip installed, and that you know how to
- use it. If not, you can get WinZip and information
- about the program at www.winzip.com.
-
- 3. Extract the .zip file to a directory such as
- C:\Program Files\mozilla.org\Mozilla.
-
- 4. To start Mozilla, navigate to the directory you
- extracted Mozilla to and double-click the Mozilla.exe
- icon.
-
-
-Mac OS X Installation Instructions
-----------------------------------
-
- To install Mozilla by downloading the Mozilla disk image,
- follow these steps:
-
- 1. Click the mozilla-mac-MachO.dmg.gz link to download
- it to your machine. By default, the download file is
- downloaded to your desktop.
-
- 2. Once you have downloaded the .dmg.gz file, drag it
- onto Stuffit Expander to decompress it. If the disk
- image doesn't mount automatically, double-click on the
- .dmg file to mount it. If that fails, and the file
- does not look like a disk image file, do a "Show Info"
- on the file, and, in the "Open with application"
- category, choose Disk Copy. In Mac OS 10.2, you can
- use "Open with" from the context menu.
-
- 3. Once the disk image mounts, open it, and drag the
- Mozilla icon onto your hard disk.
-
- 4. We recommend that you copy it to the Applications
- folder.
-
- 5. Now Eject the disk image.
-
- 6. If you like, you can drag Mozilla to your dock to
- have it easily accessible at all times. You might also
- wish to select Mozilla as your default browser in the
- Internet system preferences pane (under the Web tab).
-
-
-Linux Installation Instructions
--------------------------------
-
-Note: If you install in the default directory (which is
-usually /usr/local/mozilla), or any other directory where
-only the root user normally has write-access, you must
-start Mozilla first as root before other users can start
-the program. Doing so generates a set of files required
-for later use by other users.
-
-
- To install Mozilla by downloading the Mozilla installer,
- follow these steps:
-
- 1. Create a directory named mozilla (mkdir mozilla)
- and change to that directory (cd mozilla).
-
- 2. Click the link on the site you're downloading
- Mozilla from to download the installer file
- (called mozilla-1686-pc-linux-gnu-installer.tar.gz)
- to your machine.
-
- 3. Change to the mozilla directory (cd mozilla) and
- decompress the archive with the following command:
-
- tar zxvf moz*.tar.gz
-
- The installer is now located in a subdirectory of
- Mozilla named mozilla-installer.
-
- 4. Change to the mozilla-installer directory
- (cd mozilla-installer) and run the installer with the
- ./mozilla-installer command.
-
- 5. Follow the instructions in the install wizard for
- installing Mozilla.
-
- Note: If you have a slower machine, be aware that the
- installation may take some time. In this case, the
- installation progress may appear to hang indefinitely,
- even though the installation is still in process.
-
- 6. To start Mozilla, change to the directory where you
- installed it and run the ./mozilla command.
-
-
- To install Mozilla by downloading the tar.gz file:
-
- 1. Create a directory named "mozilla" (mkdir mozilla)
- and change to that directory (cd mozilla).
-
- 2. Click the link on the site you're downloading
- Mozilla from to download the non-installer
- (mozilla*.tar.gz) file into the mozilla directory.
-
- 3. Change to the mozilla directory (cd mozilla) and
- decompress the file with the following command:
-
- tar zxvf moz*.tar.gz
-
- This creates a "mozilla" directory under your mozilla
- directory.
-
- 4. Change to the mozilla directory (cd mozilla).
-
- 5. Run Mozilla with the following run script:
-
- ./mozilla
-
-
- To hook up Mozilla complete with icon to the GNOME Panel,
- follow these steps:
-
- 1. Click the GNOME Main Menu button, open the Panel menu,
- and then open the Add to Panel submenu and choose Launcher.
-
- 2. Right-click the icon for Mozilla on the Panel and
- enter the following command:
- directory_name./mozilla
-
- where directory_name is the name of the directory
- you downloaded mozilla to. For example, the default
- directory that Mozilla suggests is /usr/local/mozilla.
-
- 3. Type in a name for the icon, and type in a comment
- if you wish.
-
- 4. Click the icon button and type in the following as
- the icon's location:
-
- directory_name/icons/mozicon50.xpm
-
- where directory name is the directory where you
- installed Mozilla. For example, the default directory
- is /usr/local/mozilla/icons/mozicon50.xpm.
+ ftp://ftp.mozilla.org/pub/firefox/nightly/latest-trunk/
Modified: edu2/xulrunner-win32/chrome/classic.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/comm.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/en-US.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/pippki.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/chrome/toolkit.jar
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/FeedProcessor.js
===================================================================
--- edu2/xulrunner-win32/components/FeedProcessor.js 2008-02-27 16:39:23 UTC (rev 433)
+++ edu2/xulrunner-win32/components/FeedProcessor.js 2008-02-27 17:12:23 UTC (rev 434)
@@ -22,6 +22,7 @@
* Ben Goodger <be...@go...>
* Myk Melez <my...@mo...>
* Michael Ventnor <m.v...@gm...>
+ * Will Guaraldi <wil...@pc...>
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
@@ -220,7 +221,9 @@
"http://my.netscape.com/rdf/simple/0.9/":"rss1",
"http://wellformedweb.org/CommentAPI/":"wfw",
"http://purl.org/rss/1.0/modules/wiki/":"wiki",
- "http://www.w3.org/XML/1998/namespace":"xml"
+ "http://www.w3.org/XML/1998/namespace":"xml",
+ "http://search.yahoo.com/mrss/":"media",
+ "http://search.yahoo.com/mrss":"media"
}
// We allow a very small set of namespaces in XHTML content,
@@ -264,6 +267,8 @@
this.authors = Cc[ARRAY_CONTRACTID].createInstance(Ci.nsIMutableArray);
this.contributors = Cc[ARRAY_CONTRACTID].createInstance(Ci.nsIMutableArray);
this.baseURI = null;
+ this.enclosureCount = 0;
+ this.type = Ci.nsIFeed.TYPE_FEED;
}
Feed.prototype = {
@@ -303,6 +308,8 @@
if (bagHasKey(this.fields, "links"))
this._atomLinksToURI();
+ this._calcEnclosureCountAndFeedType();
+
// Resolve relative image links
if (this.image && bagHasKey(this.image, "url"))
this._resolveImageLink();
@@ -311,6 +318,67 @@
this.searchLists.title]);
},
+ _calcEnclosureCountAndFeedType: function Feed_calcEnclosureCountAndFeedType() {
+ var entries_with_enclosures = 0;
+ var audio_count = 0;
+ var image_count = 0;
+ var video_count = 0;
+ var other_count = 0;
+
+ for (var i = 0; i < this.items.length; ++i) {
+ var entry = this.items.queryElementAt(i, Ci.nsIFeedEntry);
+ entry.QueryInterface(Ci.nsIFeedContainer);
+
+ if (entry.enclosures && entry.enclosures.length > 0) {
+ ++entries_with_enclosures;
+
+ for (var e = 0; e < entry.enclosures.length; ++e) {
+ var enc = entry.enclosures.queryElementAt(e, Ci.nsIWritablePropertyBag2);
+ if (enc.hasKey("type")) {
+ var enctype = enc.get("type");
+
+ if (/^audio/.test(enctype)) {
+ ++audio_count;
+ } else if (/^image/.test(enctype)) {
+ ++image_count;
+ } else if (/^video/.test(enctype)) {
+ ++video_count;
+ } else {
+ ++other_count;
+ }
+ } else {
+ ++other_count;
+ }
+ }
+ }
+ }
+
+ var feedtype = Ci.nsIFeed.TYPE_FEED;
+
+ // For a feed to be marked as TYPE_VIDEO, TYPE_AUDIO and TYPE_IMAGE,
+ // we enforce two things:
+ //
+ // 1. all entries must have at least one enclosure
+ // 2. all enclosures must be video for TYPE_VIDEO, audio for TYPE_AUDIO or image
+ // for TYPE_IMAGE
+ //
+ // Otherwise it's a TYPE_FEED.
+ if (entries_with_enclosures == this.items.length && other_count == 0) {
+ if (audio_count > 0 && !video_count && !image_count) {
+ feedtype = Ci.nsIFeed.TYPE_AUDIO;
+
+ } else if (image_count > 0 && !audio_count && !video_count) {
+ feedtype = Ci.nsIFeed.TYPE_IMAGE;
+
+ } else if (video_count > 0 && !audio_count && !image_count) {
+ feedtype = Ci.nsIFeed.TYPE_VIDEO;
+ }
+ }
+
+ this.type = feedtype;
+ this.enclosureCount = other_count + video_count + audio_count + image_count;
+ },
+
_atomLinksToURI: function Feed_linkToURI() {
var links = this.fields.getPropertyAsInterface("links", Ci.nsIArray);
var alternates = findAtomLinks("alternate", links);
@@ -396,7 +464,7 @@
"atom03:summary", "atom:summary"],
content: ["content:encoded","atom03:content","atom:content"],
rights: ["atom03:rights","atom:rights"],
- published: ["atom03:issued", "dcterms:issued", "atom:published"],
+ published: ["pubDate", "atom03:issued", "dcterms:issued", "atom:published"],
updated: ["pubDate", "atom03:modified", "dc:date", "dcterms:modified",
"atom:updated"]
},
@@ -407,7 +475,10 @@
// Assign Atom link if needed
if (bagHasKey(this.fields, "links"))
this._atomLinksToURI();
-
+
+ // Populate enclosures array
+ this._populateEnclosures();
+
// The link might be a guid w/ permalink=true
if (!this.link && bagHasKey(this.fields, "guid")) {
var guid = this.fields.getProperty("guid");
@@ -430,6 +501,133 @@
this.searchLists.title]);
},
+ _populateEnclosures: function Entry_populateEnclosures() {
+ if (bagHasKey(this.fields, "links"))
+ this._atomLinksToEnclosures();
+
+ // Add RSS2 enclosure to enclosures
+ if (bagHasKey(this.fields, "enclosure"))
+ this._enclosureToEnclosures();
+
+ // Add media:content to enclosures
+ if (bagHasKey(this.fields, "mediacontent"))
+ this._mediacontentToEnclosures();
+
+ // Add media:content in media:group to enclosures
+ if (bagHasKey(this.fields, "mediagroup"))
+ this._mediagroupToEnclosures();
+ },
+
+ __enclosure_map: null,
+
+ _addToEnclosures: function Entry_addToEnclosures(new_enc) {
+ if (!bagHasKey(new_enc, "url"))
+ return;
+
+ if (this.__enclosure_map == null)
+ this.__enclosure_map = {};
+
+ var previous_enc = this.__enclosure_map[new_enc.getPropertyAsAString("url")];
+
+ if (previous_enc != undefined) {
+ previous_enc.QueryInterface(Ci.nsIWritablePropertyBag2);
+
+ if (!bagHasKey(previous_enc, "type") && bagHasKey(new_enc, "type"))
+ previous_enc.setPropertyAsAString("type", new_enc.getPropertyAsAString("type"));
+
+ if (!bagHasKey(previous_enc, "length") && bagHasKey(new_enc, "length"))
+ previous_enc.setPropertyAsAString("length", new_enc.getPropertyAsAString("length"));
+
+ return;
+ }
+
+ if (this.enclosures == null) {
+ this.enclosures = Cc[ARRAY_CONTRACTID].createInstance(Ci.nsIMutableArray);
+ this.enclosures.QueryInterface(Ci.nsIMutableArray);
+ }
+
+ this.enclosures.appendElement(new_enc, false);
+ this.__enclosure_map[new_enc.getPropertyAsAString("url")] = new_enc;
+ },
+
+ _atomLinksToEnclosures: function Entry_linkToEnclosure() {
+ var links = this.fields.getPropertyAsInterface("links", Ci.nsIArray);
+ var enc_links = findAtomLinks("enclosure", links);
+ if (enc_links.length == 0)
+ return;
+
+ for (var i = 0; i < enc_links.length; ++i) {
+ var link = enc_links[i];
+
+ // an enclosure must have an href
+ if (!(link.getProperty("href")))
+ return;
+
+ var enc = Cc[BAG_CONTRACTID].createInstance(Ci.nsIWritablePropertyBag2);
+
+ // copy Atom bits over to equivalent enclosure bits
+ enc.setPropertyAsAString("url", link.getPropertyAsAString("href"));
+ if (bagHasKey(link, "type"))
+ enc.setPropertyAsAString("type", link.getPropertyAsAString("type"));
+ if (bagHasKey(link, "length"))
+ enc.setPropertyAsAString("length", link.getPropertyAsAString("length"));
+
+ this._addToEnclosures(enc);
+ }
+ },
+
+ _enclosureToEnclosures: function Entry_enclosureToEnclosures() {
+ var enc = this.fields.getPropertyAsInterface("enclosure", Ci.nsIPropertyBag2);
+
+ if (!(enc.getProperty("url")))
+ return;
+
+ this._addToEnclosures(enc);
+ },
+
+ _mediacontentToEnclosures: function Entry_mediacontentToEnclosures() {
+ var mc = this.fields.getPropertyAsInterface("mediacontent", Ci.nsIPropertyBag2);
+
+ if (!(mc.getProperty("url")))
+ return;
+
+ var enc = Cc[BAG_CONTRACTID].createInstance(Ci.nsIWritablePropertyBag2);
+
+ enc.setPropertyAsAString("url", mc.getPropertyAsAString("url"));
+ if (bagHasKey(mc, "fileSize"))
+ enc.setPropertyAsAString("length", mc.getPropertyAsAString("fileSize"));
+ if (bagHasKey(mc, "type"))
+ enc.setPropertyAsAString("type", mc.getPropertyAsAString("type"));
+
+ this._addToEnclosures(enc);
+ },
+
+ _mediagroupToEnclosures: function Entry_mediagroupToEnclosures() {
+ var group = this.fields.getPropertyAsInterface("mediagroup", Ci.nsIPropertyBag2);
+
+ var content = group.getPropertyAsInterface("mediacontent", Ci.nsIArray);
+ for (var i = 0; i < content.length; ++i) {
+ var contentElement = content.queryElementAt(i, Ci.nsIWritablePropertyBag2);
+ // media:content don't require url, but if it's not there, we should
+ // skip it.
+ if (!bagHasKey(contentElement, "url"))
+ continue;
+
+ var enc = Cc[BAG_CONTRACTID].createInstance(Ci.nsIWritablePropertyBag2);
+
+ // copy media:content bits over to equivalent enclosure bits
+ enc.setPropertyAsAString("url", contentElement.getPropertyAsAString("url"));
+ if (bagHasKey(contentElement, "type")) {
+ enc.setPropertyAsAString("type", contentElement.getPropertyAsAString("type"));
+ }
+ if (bagHasKey(contentElement, "fileSize")) {
+ enc.setPropertyAsAString("length", contentElement.getPropertyAsAString("fileSize"));
+ }
+
+ this._addToEnclosures(enc);
+ }
+ },
+
// XPCOM stuff
classDescription: ENTRY_CLASSNAME,
classID: ENTRY_CLASSID,
@@ -1063,7 +1261,9 @@
"dc:contributor": new ElementInfo("contributors", Cc[PERSON_CONTRACTID],
rssAuthor, true),
"category": new ElementInfo("categories", null, rssCatTerm, true),
- "enclosure": new ElementInfo("enclosure", null, null, true),
+ "enclosure": new ElementInfo("enclosure", null, null, false),
+ "media:content": new ElementInfo("mediacontent", null, null, false),
+ "media:group": new ElementInfo("mediagroup", null, null, false),
"guid": new ElementInfo("guid", null, rssGuid, false)
},
@@ -1075,6 +1275,10 @@
"hour": new ElementInfo("hours", null, rssArrayElement, true)
},
+ "IN_MEDIAGROUP": {
+ "media:content": new ElementInfo("mediacontent", null, null, true)
+ },
+
/********* RSS1 **********/
"IN_RDF": {
// If we hit a rss1:channel, we can verify that we have RSS1
Modified: edu2/xulrunner-win32/components/accessibility.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/autocomplete.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/caps.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/content_base.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/contentprefs.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/docshell_base.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_base.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_events.xpt
===================================================================
(Binary files differ)
Added: edu2/xulrunner-win32/components/dom_json.xpt
===================================================================
(Binary files differ)
Property changes on: edu2/xulrunner-win32/components/dom_json.xpt
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: edu2/xulrunner-win32/components/dom_offline.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_storage.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_svg.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/dom_xul.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/downloads.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/editor.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/extensions.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/exthandler.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/imglib2.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/inspector.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/loginmgr.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/necko.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/necko_cache.xpt
===================================================================
(Binary files differ)
Modified: edu2/xulrunner-win32/components/necko_dns.xpt
===================================================================
(Binary files differ)
Added: edu2/xulrunner-win32/components/nsAddonRepository.js
===================================================================
--- edu2/xulrunner-win32/components/nsAddonRepository.js (rev 0)
+++ edu2/xulrunner-win32/components/nsAddonRepository.js 2008-02-27 17:12:23 UTC (rev 434)
@@ -0,0 +1,333 @@
+/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/*
+//@line 38 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsAddonRepository.js"
+*/
+
+const Cc = Components.classes;
+const Ci = Components.interfaces;
+const Cr = Components.results;
+
+Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
+
+const PREF_GETADDONS_BROWSEADDONS = "extensions.getAddons.browseAddons";
+const PREF_GETADDONS_BROWSERECOMMENDED = "extensions.getAddons.recommended.browseURL";
+const PREF_GETADDONS_GETRECOMMENDED = "extensions.getAddons.recommended.url";
+const PREF_GETADDONS_BROWSESEARCHRESULTS = "extensions.getAddons.search.browseURL";
+const PREF_GETADDONS_GETSEARCHRESULTS = "extensions.getAddons.search.url";
+
+const XMLURI_PARSE_ERROR = "http://www.mozilla.org/newlayout/xml/parsererror.xml"
+
+function AddonSearchResult() {
+}
+
+AddonSearchResult.prototype = {
+ id: null,
+ name: null,
+ version: null,
+ summary: null,
+ description: null,
+ rating: null,
+ iconURL: null,
+ thumbnailURL: null,
+ homepageURL: null,
+ eula: null,
+ type: null,
+ xpiURL: null,
+ xpiHash: null,
+
+ QueryInterface: XPCOMUtils.generateQI([Ci.nsIAddonSearchResult])
+}
+
+function AddonRepository() {
+}
+
+AddonRepository.prototype = {
+ // The current set of results
+ _addons: [],
+
+ // Whether we are currently searching or not
+ _searching: false,
+
+ // Is this a search for recommended add-ons
+ _recommended: false,
+
+ // XHR associated with the current request
+ _request: null,
+
+ // How many times in succession has a search yielded no new results. Stops
+ // us trying to find more results indefinately
+ _emptyCount: null,
+
+ // Callback object to notify on completion
+ _callback: null,
+
+ // The uri to pull results from
+ _retrieveURI: null,
+
+ // Maximum number of results to return
+ _maxResults: null,
+
+ get homepageURL() {
+ return Components.classes["@mozilla.org/toolkit/URLFormatterService;1"]
+ .getService(Components.interfaces.nsIURLFormatter)
+ .formatURLPref(PREF_GETADDONS_BROWSEADDONS);
+ },
+
+ get isSearching() {
+ return this._searching;
+ },
+
+ getRecommendedURL: function() {
+ var urlf = Components.classes["@mozilla.org/toolkit/URLFormatterService;1"]
+ .getService(Components.interfaces.nsIURLFormatter);
+
+ return urlf.formatURLPref(PREF_GETADDONS_BROWSERECOMMENDED);
+ },
+
+ getSearchURL: function(aSearchTerms) {
+ var prefs = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+ var urlf = Components.classes["@mozilla.org/toolkit/URLFormatterService;1"]
+ .getService(Components.interfaces.nsIURLFormatter);
+
+ var url = prefs.getCharPref(PREF_GETADDONS_BROWSESEARCHRESULTS);
+ url = url.replace(/%TERMS%/g, encodeURIComponent(aSearchTerms));
+ return urlf.formatURL(url);
+ },
+
+ cancelSearch: function() {
+ this._searching = false;
+ if (this._request) {
+ this._request.abort();
+ this._request = null;
+ }
+ },
+
+ retrieveRecommendedAddons: function(aMaxResults, aCallback) {
+ if (this._searching)
+ return;
+
+ this._searching = true;
+ this._addons = [];
+ this._callback = aCallback;
+ this._recommended = true;
+ this._emptyCount = 0;
+ this._maxResults = aMaxResults;
+
+ var urlf = Components.classes["@mozilla.org/toolkit/URLFormatterService;1"]
+ .getService(Components.interfaces.nsIURLFormatter);
+
+ this._retrieveURI = urlf.formatURLPref(PREF_GETADDONS_GETRECOMMENDED);
+ this._loadList();
+ },
+
+ searchAddons: function(aSearchTerms, aMaxResults, aCallback) {
+ if (this._searching)
+ return;
+
+ this._searching = true;
+ this._addons = [];
+ this._callback = aCallback;
+ this._recommended = false;
+ this._emptyCount = 0;
+ this._maxResults = aMaxResults;
+
+ var prefs = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+ var urlf = Components.classes["@mozilla.org/toolkit/URLFormatterService;1"]
+ .getService(Components.interfaces.nsIURLFormatter);
+
+ this._retrieveURI = prefs.getCharPref(PREF_GETADDONS_GETSEARCHRESULTS);
+ this._retrieveURI = this._retrieveURI.replace(/%TERMS%/g, encodeURIComponent(aSearchTerms));
+ this._retrieveURI = urlf.formatURL(this._retrieveURI);
+ this._loadList();
+ },
+
+ // Posts results to the callback
+ _reportSuccess: function(aCount) {
+ this._searching = false;
+ this._request = null;
+ this._callback.searchSucceeded(this._addons, this._addons.length,
+ this._recommended ? -1 : aCount);
+ },
+
+ // Notifies the callback of a failure
+ _reportFailure: function(aEvent) {
+ this._searching = false;
+ this._request = null;
+ this._callback.searchFailed();
+ },
+
+ // Parses an add-on entry from an <addon> element
+ _parseAddon: function(element) {
+ var em = Cc["@mozilla.org/extensions/manager;1"].
+ getService(Ci.nsIExtensionManager);
+ var app = Cc["@mozilla.org/xre/app-info;1"].
+ getService(Ci.nsIXULAppInfo).
+ QueryInterface(Ci.nsIXULRuntime);
+
+ var guid = element.getElementsByTagName("guid");
+ if (guid.length != 1)
+ return;
+
+ // Ignore add-ons already seen in the results
+ for (var i = 0; i < this._addons.length; i++)
+ if (this._addons[i].id == guid[0].textContent)
+ return;
+
+ // Ignore installed add-ons
+ if (em.getItemForID(guid[0].textContent) != null)
+ return;
+
+ // Ignore sandboxed add-ons
+ var status = element.getElementsByTagName("status");
+ // The status element has a unique id for each status type. 4 is Public.
+ if (status.length != 1 || status[0].getAttribute("id") != 4)
+ return;
+
+ // Ignore add-ons not compatible with this OS
+ var compatible = false;
+ var os = element.getElementsByTagName("compatible_os");
+ var i = 0;
+ while (i < os.length && !compatible) {
+ if (os[i].textContent == "ALL" || os[i].textContent == app.OS) {
+ compatible = true;
+ break;
+ }
+ i++;
+ }
+ if (!compatible)
+ return;
+
+ // Ignore add-ons not compatible with this Application
+ compatible = false;
+ var tags = element.getElementsByTagName("compatible_applications");
+ if (tags.length != 1)
+ return;
+ var vc = Cc["@mozilla.org/xpcom/version-comparator;1"].
+ getService(Ci.nsIVersionComparator);
+ var apps = tags[0].getElementsByTagName("name");
+ var i = 0;
+ while (i < apps.length) {
+ if (apps[i].textContent.toLowerCase() == app.name.toLowerCase()) {
+ var minversion = apps[i].parentNode.getElementsByTagName("min_version")[0].textContent;
+ var maxversion = apps[i].parentNode.getElementsByTagName("max_version")[0].textContent;
+ if ((vc.compare(minversion, app.version) > 0) ||
+ (vc.compare(app.version, maxversion) > 0))
+ return;
+ compatible = true;
+ break;
+ }
+ i++;
+ }
+ if (!compatible)
+ return;
+
+ var addon = new AddonSearchResult();
+ addon.id = guid[0].textContent;
+ addon.rating = -1;
+ var node = element.firstChild;
+ while (node) {
+ if (node instanceof Ci.nsIDOMElement) {
+ switch (node.localName) {
+ case "name":
+ case "version":
+ case "summary":
+ case "description":
+ case "eula":
+ addon[node.localName] = node.textContent;
+ break;
+ case "rating":
+ if (node.textContent.length > 0)
+ addon.rating = parseInt(node.textContent);
+ break;
+ case "thumbnail":
+ addon.thumbnailURL = node.textContent;
+ break;
+ case "icon":
+ addon.iconURL = node.textContent;
+ break;
+ case "learnmore":
+ addon.homepageURL = node.textContent;
+ break;
+ case "type":
+ // The type element has an id attribute that is the id from AMO's
+ // database. This doesn't match our type values to perform a mapping
+ if (node.getAttribute("id") == 2)
+ addon.type = Ci.nsIUpdateItem.TYPE_THEME;
+ else
+ addon.type = Ci.nsIUpdateItem.TYPE_EXTENSION;
+ break;
+ case "install":
+ addon.xpiURL = node.textContent;
+ if (node.hasAttribute("hash"))
+ addon.xpiHash = node.getAttribute("hash");
+ break;
+ }
+ }
+ node = node.nextSibling;
+ }
+
+ this._addons.push(addon);
+ },
+
+ // Called when a single request has completed, parses out any add-ons and
+ // either notifies the callback or does a new request for more results
+ _listLoaded: function(aEvent) {
+ var request = aEvent.target;
+ var responseXML = request.responseXML;
+
+ if (!responseXML || responseXML.documentElement.namespaceURI == XMLURI_PARSE_ERROR ||
+ (request.status != 200 && request.status != 0)) {
+ this._reportFailure();
+ return;
+ }
+ var elements = responseXML.documentElement.getElementsByTagName("addon");
+ var oldcount = this._addons.length;
+ for (var i = 0; i < elements.length; i++) {
+ this._parseAddon(elements[i]);
+
+ var prefs = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+ if (this._addons.length == this._maxResults) {
+ this._reportSuccess(elements.length);
+ return;
+ }
+ }
+
+ // We didn't find any new add-ons this pass
+ if (oldcount == this._addons.length)
+ this._emptyCount++;
+ else
+ this._emptyCount = 0;
+
+ /* We should keep trying to find new recommended add-ons, but bail if we
+ don't get a new result for a few passes. */
+ if (this._recommended && this._emptyCount < 5)
+ this._loadList();
+ else
+ this._reportSuccess(elements.length);
+ },
+
+ // Performs a new request for results
+ _loadList: function() {
+ this._request = Cc["@mozilla.org/xmlextras/xmlhttprequest;1"].
+ createInstance(Ci.nsIXMLHttpRequest);
+ this._request.open("GET", this._retrieveURI, true);
+ this._request.overrideMimeType("text/xml");
+
+ var self = this;
+ this._request.onerror = function(event) { self._reportFailure(event); };
+ this._request.onload = function(event) { self._listLoaded(event); };
+ this._request.send(null);
+ },
+
+ classDescription: "Addon Repository",
+ contractID: "@mozilla.org/extensions/addon-repository;1",
+ classID: Components.ID("{8eaaf524-7d6d-4f7d-ae8b-9277b324008d}"),
+ QueryInterface: XPCOMUtils.generateQI([Ci.nsIAddonRepository])
+}
+
+function NSGetModule(aCompMgr, aFileSpec) {
+ return XPCOMUtils.generateModule([AddonRepository]);
+}
Modified: edu2/xulrunner-win32/components/nsBlocklistService.js
===================================================================
--- edu2/xulrunner-win32/components/nsBlocklistService.js 2008-02-27 16:39:23 UTC (rev 433)
+++ edu2/xulrunner-win32/components/nsBlocklistService.js 2008-02-27 17:12:23 UTC (rev 434)
@@ -76,6 +76,16 @@
checkCert(oldChannel);
},
+ // Suppress any certificate errors
+ notifyCertProblem: function(socketInfo, status, targetSite) {
+ return true;
+ },
+
+ // Suppress any ssl errors
+ notifySSLError: function(socketInfo, error, targetSite) {
+ return true;
+ },
+
// nsIInterfaceRequestor
getInterface: function(iid) {
return this.QueryInterface(iid);
@@ -84,6 +94,8 @@
// nsISupports
QueryInterface: function(iid) {
if (!iid.equals(Components.interfaces.nsIChannelEventSink) &&
+ !iid.equals(Components.interfaces.nsIBadCertListener2) &&
+ !iid.equals(Components.interfaces.nsISSLErrorListener) &&
!iid.equals(Components.interfaces.nsIInterfaceRequestor) &&
!iid.equals(Components.interfaces.nsISupports))
throw Components.results.NS_ERROR_NO_INTERFACE;
Modified: edu2/xulrunner-win32/components/nsContentDispatchChooser.js
===================================================================
--- edu2/xulrunner-win32/components/nsContentDispatchChooser.js 2008-02-27 16:39:23 UTC (rev 433)
+++ edu2/xulrunner-win32/components/nsContentDispatchChooser.js 2008-02-27 17:12:23 UTC (rev 434)
@@ -86,6 +86,7 @@
bundle.GetStringFromName("protocol.choices.label"),
bundle.formatStringFromName("protocol.checkbox.label",
[aURI.scheme], 1),
+ bundle.GetStringFromName("protocol.checkbox.accesskey"),
bundle.formatStringFromName("protocol.checkbox.extra",
[xai.name], 1)];
Modified: edu2/xulrunner-win32/components/nsContentPrefService.js
===================================================================
--- edu2/xulrunner-win32/components/nsContentPrefService.js 2008-02-27 16:39:23 UTC (rev 433)
+++ edu2/xulrunner-win32/components/nsContentPrefService.js 2008-02-27 17:12:23 UTC (rev 434)
@@ -270,7 +270,11 @@
return this._grouper;
},
+ get DBConnection ContentPrefService_get_DBConnection() {
+ return this._dbConnection;
+ },
+
//**************************************************************************//
// Data Retrieval & Modification
@@ -691,32 +695,26 @@
if (!dbFile.exists())
dbConnection = this._dbCreate(dbService, dbFile);
else {
- try {
- dbConnection = dbService.openDatabase(dbFile);
+ dbConnection = dbService.openDatabase(dbFile);
- // Get the version of the database in the file.
- var version = dbConnection.schemaVersion;
+ // If the connection isn't ready after we open the database, that means
+ // the database has been corrupted, so we back it up and then recreate it.
+ if (!dbConnection.connectionReady)
+ dbConnection = this._dbBackUpAndRecreate(dbService, dbFile, dbConnection);
- if (version != this._dbVersion)
+ // Get the version of the schema in the file.
+ var version = dbConnection.schemaVersion;
+
+ // Try to migrate the schema in the database to the current schema used by
+ // the service. If migration fails, back up the database and recreate it.
+ if (version != this._dbVersion) {
+ try {
this._dbMigrate(dbConnection, version, this._dbVersion);
- }
- catch (ex) {
- // If the database file is corrupted, I'm not sure whether we should
- // just delete the corrupted file or back it up. For now I'm just
- // deleting it, but here's some code that backs it up (but doesn't limit
- // the number of backups, which is probably necessary, thus I'm not
- // using this code):
- //var backup = this._dbFile.clone();
- //backup.createUnique(Ci.nsIFile.NORMAL_FILE_TYPE, PERMS_FILE);
- //backup.remove(false);
- //this._dbFile.moveTo(null, backup.leafName);
- if (ex.result == Cr.NS_ERROR_FILE_CORRUPTED) {
- // Remove the corrupted file, then recreate it.
- dbFile.remove(false);
- dbConnection = this._dbCreate(dbService, dbFile);
}
- else
- throw ex;
+ catch(ex) {
+ Cu.reportError("error migrating DB: " + ex + "; backing up and recreating");
+ dbConnection = this._dbBackUpAndRecreate(dbService, dbFile, dbConnection);
+ }
}
}
@@ -725,13 +723,33 @@
_dbCreate: function ContentPrefService__dbCreate(aDBService, aDBFile) {
var dbConnection = aDBService.openDatabase(aDBFile);
- for (let name in this._dbSchema.tables)
- dbConnection.createTable(name, this._dbSchema.tables[name]);
- this._dbCreateIndices(dbConnection);
- dbConnection.schemaVersion = this._dbVersion;
+
+ try {
+ this._dbCreateSchema(dbConnection);
+ dbConnection.schemaVersion = this._dbVersion;
+ }
+ catch(ex) {
+ // If we failed to create the database (perhaps because the disk ran out
+ // of space), then remove the database file so we don't leave it in some
+ // half-created state from which we won't know how to recover.
+ dbConnection.close();
+ aDBFile.remove(false);
+ throw ex;
+ }
+
return dbConnection;
},
+ _dbCreateSchema: function ContentPrefService__dbCreateSchema(aDBConnection) {
+ this._dbCreateTables(aDBConnection);
+ this._dbCreateIndices(aDBConnection);
+ },
+
+ _dbCreateTables: function ContentPrefService__dbCreateTables(aDBConnection) {
+ for (let name in this._dbSchema.tables)
+ aDBConnection.createTable(name, this._dbSchema.tables[name]);
+ },
+
_dbCreateIndices: function ContentPrefService__dbCreateIndices(aDBConnection) {
for (let name in this._dbSchema.indices) {
let index = this._dbSchema.indices[name];
@@ -741,6 +759,23 @@
}
},
+ _dbBackUpAndRecreate: function ContentPrefService__dbBackUpAndRecreate(aDBService,
+ aDBFile,
+ aDBConnection) {
+ aDBConnection.backupDB("content-prefs.sqlite.corrupt");
+
+ // Close the database, ignoring the "already closed" exception, if any.
+ // It'll be open if we're here because of a migration failure but closed
+ // if we're here because of database corruption.
+ try { aDBConnection.close() } catch(ex) {}
+
+ aDBFile.remove(false);
+
+ let dbConnection = this._dbCreate(aDBService, aDBFile);
+
+ return dbConnection;
+ },
+
_dbMigrate: function ContentPrefService__dbMigrate(aDBConnection, aOldVersion, aNewVersion) {
if (this["_dbMigrate" + aOldVersion + "To" + aNewVersion]) {
aDBConnection.beginTransaction();
@@ -755,34 +790,19 @@
}
}
else
- throw("can't migrate database from v" + aOldVersion +
- " to v" + aNewVersion + ": no migrator function");
+ throw("no migrator function from version " + aOldVersion +
+ " to version " + aNewVersion);
},
+ /**
+ * If the schema version is 0, that means it was never set, which means
+ * the database was somehow created without the schema being applied, perhaps
+ * because the system ran out of disk space (although we check for this
+ * in _createDB) or because some other code created the database file without
+ * applying the schema. In any case, recover by simply reapplying the schema.
+ */
_dbMigrate0To3: function ContentPrefService___dbMigrate0To3(aDBConnection) {
- aDBConnection.createTable("groups", this._dbSchema.tables.groups);
- aDBConnection.executeSimpleSQL(
- "INSERT INTO groups (id, name) SELECT id, name FROM sites"
- );
-
- aDBConnection.createTable("settings", this._dbSchema.tables.settings);
- aDBConnection.executeSimpleSQL(
- "INSERT INTO settings (id, name) SELECT id, name FROM keys"
- );
-
- aDBConnection.executeSimpleSQL("ALTER TABLE prefs RENAME TO prefsOld");
- aDBConnection.createTable("prefs", this._dbSchema.tables.prefs);
- aDBConnection.executeSimpleSQL(
- "INSERT INTO prefs (id, groupID, settingID, value) " +
- "SELECT id, site_id, key_id, value FROM prefsOld"
- );
-
- // Drop obsolete tables.
- aDBConnection.executeSimpleSQL("DROP TABLE prefsOld");
- aDBConnection.executeSimpleSQL("DROP TABLE keys");
- aDBConnection.executeSimpleSQL("DROP TABLE sites");
-
- this._dbCreateIndices(aDBConnection);
+ this._dbCreateSchema(aDBConnection);
},
_dbMigrate1To3: function ContentPrefService___dbMigrate1To3(aDBConnection) {
Modified: edu2/xulrunner-win32/components/nsDownloadManagerUI.js
===================================================================
--- edu2/xulrunner-win32/components/nsDownloadManagerUI.js 2008-02-27 16:39:23 UTC (rev 433)
+++ edu2/xulrunner-win32/components/nsDownloadManagerUI.js 2008-02-27 17:12:23 UTC (rev 434)
@@ -1,5 +1,5 @@
/* ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
@@ -66,6 +66,9 @@
return;
}
+ // We try to get a window to use as the parent here. If we don't have one,
+ // the download manager will close immediately after opening if the pref
+ // browser.download.manager.closeWhenDone is set to true.
var window = null;
try {
if (aWindowContext)
@@ -89,7 +92,7 @@
getService(Ci.nsIWindowWatcher);
ww.openWindow(window,
DOWNLOAD_MANAGER_URL,
- null,
+ "Download:Manager",
"chrome,dialog=no,resizable",
params);
},
@@ -105,7 +108,11 @@
var prefs = Cc["@mozilla.org/preferences-service;1"].
getService(Ci.nsIPrefBranch);
- var flashCount = prefs.getIntPref(PREF_FLASH_COUNT);
+ // This preference may not be set, so defaulting to two.
+ let flashCount = 2;
+ try {
+ flashCount = prefs.getIntPref(PREF_FLASH_COUNT);
+ } catch (e) { }
var win = this.recentWindow.QueryInterface(Ci.nsIDOMChromeWindow);
win.getAttentionWithCycleCount(flashCount);
Modified: edu2/xulrunner-win32/components/nsExtensionManager.js
===================================================================
--- edu2/xulrunner-win32/components/nsExtensionManager.js 2008-02-27 16:39:23 UTC (rev 433)
+++ edu2/xulrunner-win32/components/nsExtensionManager.js 2008-02-27 17:12:23 UTC (rev 434)
@@ -17,11 +17,11 @@
const PREF_EM_CHECK_COMPATIBILITY = "extensions.checkCompatibility";
const PREF_EM_CHECK_UPDATE_SECURITY = "extensions.checkUpdateSecurity";
const PREF_EM_LAST_APP_VERSION = "extensions.lastAppVersion";
+const PREF_EM_ENABLED_ITEMS = "extensions.enabledItems";
const PREF_UPDATE_COUNT = "extensions.update.count";
const PREF_UPDATE_DEFAULT_URL = "extensions.update.url";
const PREF_EM_IGNOREMTIMECHANGES = "extensions.ignoreMTimeChanges";
const PREF_EM_DISABLEDOBSOLETE = "extensions.disabledObsolete";
-const PREF_EM_LAST_SELECTED_SKIN = "extensions.lastSelectedSkin";
const PREF_EM_EXTENSION_FORMAT = "extensions.%UUID%.";
const PREF_EM_ITEM_UPDATE_ENABLED = "extensions.%UUID%.update.enabled";
const PREF_EM_UPDATE_ENABLED = "extensions.update.enabled";
@@ -75,6 +75,9 @@
const KEY_APP_PROFILE = "app-profile";
const KEY_APP_GLOBAL = "app-global";
+const KEY_APP_SYSTEM_LOCAL = "app-system-local";
+const KEY_APP_SYSTEM_SHARE = "app-system-share";
+const KEY_APP_SYSTEM_USER = "app-system-user";
const CATEGORY_INSTALL_LOCATIONS = "extension-install-locations";
const CATEGORY_UPDATE_PARAMS = "extension-update-params";
@@ -177,6 +180,16 @@
checkCert(oldChannel);
},
+ // Suppress any certificate errors
+ notifyCertProblem: function(socketInfo, status, targetSite) {
+ return true;
+ },
+
+ // Suppress any ssl errors
+ notifySSLError: function(socketInfo, error, targetSite) {
+ return true;
+ },
+
// nsIInterfaceRequestor
getInterface: function(iid) {
return this.QueryInterface(iid);
@@ -185,13 +198,15 @@
// nsISupports
QueryInterface: function(iid) {
if (!iid.equals(Components.interfaces.nsIChannelEventSink) &&
+ !iid.equals(Components.interfaces.nsIBadCertListener2) &&
+ !iid.equals(Components.interfaces.nsISSLErrorListener) &&
!iid.equals(Components.interfaces.nsIInterfaceRequestor) &&
!iid.equals(Components.interfaces.nsISupports))
throw Components.results.NS_ERROR_NO_INTERFACE;
return this;
}
};
-//@line 181 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
+//@line 184 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
/**
* Creates a Version Checker object.
@@ -1023,7 +1038,7 @@
* The directory that contains the items.
* @constructor
*/
-function DirectoryInstallLocation(name, location, restricted, priority) {
+function DirectoryInstallLocation(name, location, restricted, priority, independent) {
this._name = name;
if (location.exists()) {
if (!location.isDirectory())
@@ -1043,6 +1058,7 @@
this._locationToIDMap = {};
this._restricted = restricted;
this._priority = priority;
+ this._independent = independent;
}
DirectoryInstallLocation.prototype = {
_name : "",
@@ -1050,6 +1066,7 @@
_locationToIDMap: null,
_restricted : false,
_priority : 0,
+ _independent : false,
_canAccess : null,
/**
@@ -1199,6 +1216,8 @@
* See nsIExtensionManager.idl
*/
itemIsManagedIndependently: function(id) {
+ if (this._independent)
+ return true;
var itemLocation = this.location;
itemLocation.append(id);
return itemLocation.exists() && !itemLocation.isDirectory();
@@ -1314,7 +1333,7 @@
QueryInterface: XPCOMUtils.generateQI([Ci.nsIInstallLocation])
};
-//@line 1304 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
+//@line 1311 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
const nsIWindowsRegKey = Ci.nsIWindowsRegKey;
@@ -1372,7 +1391,7 @@
var appVendor = gApp.vendor;
var appName = gApp.name;
-//@line 1366 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
+//@line 1373 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
// XULRunner-based apps may intentionally not specify a vendor:
if (appVendor != "")
@@ -1455,7 +1474,7 @@
QueryInterface: XPCOMUtils.generateQI([Ci.nsIInstallLocation])
};
-//@line 1449 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
+//@line 1456 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
/**
* An object which handles the installation of an Extension.
@@ -1979,7 +1998,8 @@
}
}
else if (installLocation.name == KEY_APP_PROFILE ||
- installLocation.name == KEY_APP_GLOBAL) {
+ installLocation.name == KEY_APP_GLOBAL ||
+ installLocation.name == KEY_APP_SYSTEM_USER) {
// Check for a pointer file and move it aside if it exists
var pointerFile = installLocation.location.clone();
pointerFile.append(itemID);
@@ -2385,7 +2405,7 @@
var priority = Ci.nsIInstallLocation.PRIORITY_APP_SYSTEM_GLOBAL;
var globalLocation = new DirectoryInstallLocation(KEY_APP_GLOBAL,
appGlobalExtensions, true,
- priority);
+ priority, false);
InstallLocations.put(globalLocation);
// Register App-Profile Install Location
@@ -2393,10 +2413,27 @@
var priority = Ci.nsIInstallLocation.PRIORITY_APP_PROFILE;
var profileLocation = new DirectoryInstallLocation(KEY_APP_PROFILE,
appProfileExtensions, false,
- priority);
+ priority, false);
InstallLocations.put(profileLocation);
-//@line 2390 "e:\builds\tinderbox\XR-Trunk\WINNT_5.2_Depend\mozilla\toolkit\mozapps\extensions\src\nsExtensionManager.js.in"
+ // Register per-user Install Location
+ try {
+ ...
[truncated message content] |
|
From: <re...@us...> - 2008-02-27 16:39:26
|
Revision: 433
http://edu2.svn.sourceforge.net/edu2/?rev=433&view=rev
Author: res2002
Date: 2008-02-27 08:39:23 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Add EDU1 dedicated server
Added Paths:
-----------
edu2/edu1-dedicated.exe
Added: edu2/edu1-dedicated.exe
===================================================================
(Binary files differ)
Property changes on: edu2/edu1-dedicated.exe
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <re...@us...> - 2008-02-27 16:37:00
|
Revision: 432
http://edu2.svn.sourceforge.net/edu2/?rev=432&view=rev
Author: res2002
Date: 2008-02-27 08:36:58 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Fix dedicated server project
Modified Paths:
--------------
edu1/darkplaces/trunk/darkplaces-dedicated.vcproj
Property Changed:
----------------
edu1/darkplaces/trunk/
Property changes on: edu1/darkplaces/trunk
___________________________________________________________________
Name: svn:ignore
- *.ncb
*.suo
*.user
Debug
Release
+ *.ncb
*.suo
*.user
Debug
Release
Release-Dedicated
Modified: edu1/darkplaces/trunk/darkplaces-dedicated.vcproj
===================================================================
--- edu1/darkplaces/trunk/darkplaces-dedicated.vcproj 2008-02-27 13:56:18 UTC (rev 431)
+++ edu1/darkplaces/trunk/darkplaces-dedicated.vcproj 2008-02-27 16:36:58 UTC (rev 432)
@@ -50,6 +50,7 @@
InlineFunctionExpansion="1"
EnableIntrinsicFunctions="true"
FavorSizeOrSpeed="1"
+ AdditionalIncludeDirectories="include;.;deps/include"
PreprocessorDefinitions="WIN32;WIN32_LEAN_AND_MEAN;NDEBUG;_CONSOLE"
RuntimeLibrary="2"
PrecompiledHeaderFile=".\Release-Dedicated/darkplaces-dedicated.pch"
@@ -72,10 +73,11 @@
/>
<Tool
Name="VCLinkerTool"
- AdditionalDependencies="opengl32.lib wsock32.lib winmm.lib comctl32.lib dxguid.lib"
- OutputFile=".\Release-Dedicated/darkplaces-dedicated.exe"
+ AdditionalDependencies="opengl32.lib wsock32.lib winmm.lib comctl32.lib dxguid.lib freetype2.lib"
+ OutputFile=".\Release-Dedicated/edu-dedicated.exe"
LinkIncremental="1"
SuppressStartupBanner="true"
+ AdditionalLibraryDirectories="deps/lib"
ProgramDatabaseFile=".\Release-Dedicated/darkplaces-dedicated.pdb"
SubSystem="1"
TargetMachine="1"
@@ -672,6 +674,22 @@
</FileConfiguration>
</File>
<File
+ RelativePath=".\src\client\font.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\src\client\font_freetype.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\src\client\font_quake.cpp"
+ >
+ </File>
+ <File
+ RelativePath=".\src\client\font_quake2unicode.cpp"
+ >
+ </File>
+ <File
RelativePath="fractalnoise.c"
>
<FileConfiguration
@@ -693,25 +711,8 @@
</FileConfiguration>
</File>
<File
- RelativePath="fs.c"
+ RelativePath=".\src\common\fs.c"
>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
</File>
<File
RelativePath="gl_backend.c"
@@ -735,25 +736,8 @@
</FileConfiguration>
</File>
<File
- RelativePath="gl_draw.c"
+ RelativePath=".\src\client\gl_draw.cpp"
>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
</File>
<File
RelativePath="gl_rmain.c"
@@ -798,25 +782,8 @@
</FileConfiguration>
</File>
<File
- RelativePath="gl_textures.c"
+ RelativePath=".\src\client\gl_textures.c"
>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
</File>
<File
RelativePath="host.c"
@@ -1323,25 +1290,8 @@
</FileConfiguration>
</File>
<File
- RelativePath="prvm_edict.c"
+ RelativePath=".\src\vm\prvm_edict.cpp"
>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
</File>
<File
RelativePath="prvm_exec.c"
@@ -1764,25 +1714,8 @@
</FileConfiguration>
</File>
<File
- RelativePath="vid_shared.c"
+ RelativePath=".\src\client\vid_shared.c"
>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
</File>
<File
RelativePath="view.c"
@@ -1806,6 +1739,10 @@
</FileConfiguration>
</File>
<File
+ RelativePath=".\src\vm\vm_hash.cpp"
+ >
+ </File>
+ <File
RelativePath="wad.c"
>
<FileConfiguration
@@ -1848,25 +1785,8 @@
</FileConfiguration>
</File>
<File
- RelativePath="zone.c"
+ RelativePath=".\src\common\zone.c"
>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- PreprocessorDefinitions=""
- />
- </FileConfiguration>
</File>
</Filter>
<Filter
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 13:56:44
|
Revision: 431
http://edu2.svn.sourceforge.net/edu2/?rev=431&view=rev
Author: blackhc
Date: 2008-02-27 05:56:18 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Connect to a map (later it will be a server) when logging in and disconnect from it when logging out.
Modified Paths:
--------------
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/id1/qcsrc/menu/edu2/dialog_login.c
edu2/id1/qcsrc/menu/edu2/dialog_logout.c
edu2/id1/qcsrc/menu/menu.qc
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/id1/qcsrc/menu/edu2/dialog_login.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 13:42:40 UTC (rev 430)
+++ edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 13:56:18 UTC (rev 431)
@@ -40,6 +40,7 @@
{
db_put( menu_registry, REG_EDU2_USERNAME, me.username.text );
db_put( menu_registry, REG_EDU2_PASSWORD, me.password.text );
+ localcmd( "map test\n" );
Edu2InfoTabsDialog_onLoggedIn();
me.close( me );
}
Modified: edu2/id1/qcsrc/menu/edu2/dialog_logout.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-02-27 13:42:40 UTC (rev 430)
+++ edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-02-27 13:56:18 UTC (rev 431)
@@ -15,6 +15,7 @@
#ifdef IMPLEMENTATION
void LogoutDialog_onYesClick(entity button, entity me)
{
+ localcmd( "disconnect\n" );
Edu2InfoTabsDialog_onLoggedOut();
me.close( me );
}
Modified: edu2/id1/qcsrc/menu/menu.qc
===================================================================
--- edu2/id1/qcsrc/menu/menu.qc 2008-02-27 13:42:40 UTC (rev 430)
+++ edu2/id1/qcsrc/menu/menu.qc 2008-02-27 13:56:18 UTC (rev 431)
@@ -272,10 +272,12 @@
if(Menu_Active)
{
- if(getmousetarget() == MT_MENU && (getkeydest() == KEY_MENU || getkeydest() == KEY_MENU_GRABBED))
+ // dont hide the menu when we are connected
+ //if(getmousetarget() == MT_MENU && (getkeydest() == KEY_MENU || getkeydest() == KEY_MENU_GRABBED))
setkeydest(keyGrabber ? KEY_MENU_GRABBED : KEY_MENU);
- else
- m_hide();
+ //else {
+ //m_hide();
+ //}
}
if(cvar("cl_capturevideo"))
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <bl...@us...> - 2008-02-27 13:42:45
|
Revision: 430
http://edu2.svn.sourceforge.net/edu2/?rev=430&view=rev
Author: blackhc
Date: 2008-02-27 05:42:40 -0800 (Wed, 27 Feb 2008)
Log Message:
-----------
Fix a bug in the playermodel code that could cause DP to crash.
Save username and password in a menu registry database.
Improve the subgame descriptions a bit.
Modified Paths:
--------------
edu2/edu2/csprogs.dat
edu2/edu2/csprogs.lno
edu2/edu2/menu.dat
edu2/edu2/menu.lno
edu2/id1/qcsrc/cgame/csqc_constants.qh
edu2/id1/qcsrc/common/geckoterminal.qc
edu2/id1/qcsrc/common/util.qc
edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c
edu2/id1/qcsrc/menu/edu2/dialog_login.c
edu2/id1/qcsrc/menu/edu2/dialog_logout.c
edu2/id1/qcsrc/menu/edu2/gamelist.c
edu2/id1/qcsrc/menu/item/gecko.c
edu2/id1/qcsrc/menu/mbuiltin.qh
edu2/id1/qcsrc/menu/menu.qc
edu2/id1/qcsrc/menu/menu.qh
edu2/id1/qcsrc/menu/nexuiz/playermodel.c
Modified: edu2/edu2/csprogs.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/csprogs.lno
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.dat
===================================================================
(Binary files differ)
Modified: edu2/edu2/menu.lno
===================================================================
(Binary files differ)
Modified: edu2/id1/qcsrc/cgame/csqc_constants.qh
===================================================================
--- edu2/id1/qcsrc/cgame/csqc_constants.qh 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/cgame/csqc_constants.qh 2008-02-27 13:42:40 UTC (rev 430)
@@ -275,3 +275,10 @@
float K_MOUSE14 = 527;
float K_MOUSE15 = 528;
float K_MOUSE16 = 529;
+
+///////////////////////////
+// cvar constants
+
+float CVAR_SAVE = 1;
+float CVAR_NOTIFY = 2;
+float CVAR_READONLY = 4;
Modified: edu2/id1/qcsrc/common/geckoterminal.qc
===================================================================
--- edu2/id1/qcsrc/common/geckoterminal.qc 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/common/geckoterminal.qc 2008-02-27 13:42:40 UTC (rev 430)
@@ -109,7 +109,10 @@
strunzone( self.targetURL );
self.targetURL = strzone( lTemp );
}
- gecko_resize( self.geckoInstanceName, 1024, 512 );
+
+ registercvar( "gecko_terminal_width", "1024", CVAR_SAVE );
+ registercvar( "gecko_terminal_height", "512", CVAR_SAVE );
+ gecko_resize( self.geckoInstanceName, cvar( "gecko_terminal_width" ), cvar( "gecko_terminal_height" ) );
gecko_navigate( self.geckoInstanceName, strcat( "http://www.icculus.org/~black/stuff/terminalbrowser.html?", self.targetURL ) );
self.classname = "gecko_terminal";
Modified: edu2/id1/qcsrc/common/util.qc
===================================================================
--- edu2/id1/qcsrc/common/util.qc 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/common/util.qc 2008-02-27 13:42:40 UTC (rev 430)
@@ -317,16 +317,25 @@
string db_get(float db, string pKey)
{
+ string lRawKey;
+ lRawKey = strreplace( chr2str( 128 + 92 ), "\\", pKey );
float h;
h = mod(crc16(FALSE, pKey), DB_BUCKETS);
- return infoget(bufstr_get(db, h), pKey);
+ string lRawValue;
+ lRawValue = infoget(bufstr_get(db, h), pKey);
+ return strreplace( "\\", chr2str( 128 + 92 ), lRawValue );
}
void db_put(float db, string pKey, string pValue)
{
+ string lRawKey;
+ lRawKey = strreplace( chr2str( 128 + 92 ), "\\", pKey);
+ string lRawValue;
+ lRawValue = strreplace( chr2str( 128 + 92 ), "\\", pValue );
+
float h;
h = mod(crc16(FALSE, pKey), DB_BUCKETS);
- bufstr_set(db, h, infoadd(bufstr_get(db, h), pKey, pValue));
+ bufstr_set(db, h, infoadd(bufstr_get(db, h), lRawKey, lRawValue));
}
void db_test()
@@ -376,3 +385,32 @@
fputs(fh, strcat(bufstr_get(buf, i), "\n"));
fclose(fh);
}
+
+// dont str-zone the string
+string str_load( string pFilename ) {
+ float fh, i;
+ string l;
+ string lText;
+ fh = fopen(pFilename, FILE_READ);
+ if(fh < 0)
+ return "";
+ i = 0;
+ lText = "";
+ while((l = fgets(fh)))
+ {
+ lText = strcat( lText, l, "\n" );
+ ++i;
+ }
+ fclose(fh);
+ return lText;
+}
+
+void str_save(string lContent, string pFilename)
+{
+ float fh;
+ fh = fopen(pFilename, FILE_WRITE);
+ if(fh < 0)
+ error(strcat("Can't write buf to ", pFilename));
+ fputs(fh, lContent);
+ fclose(fh);
+}
Modified: edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/edu2/dialog_gamelist.c 2008-02-27 13:42:40 UTC (rev 430)
@@ -5,7 +5,7 @@
ATTRIB(GameListDialog, title, string, _("Fun Zone"))
ATTRIB(GameListDialog, color, vector, SKINCOLOR_DIALOG_SINGLEPLAYER)
ATTRIB(GameListDialog, intendedWidth, float, 0.80)
- ATTRIB(GameListDialog, rows, float, 20)
+ ATTRIB(GameListDialog, rows, float, 21)
ATTRIB(GameListDialog, columns, float, 5)
ATTRIB(GameListDialog, campaignBox, entity, NULL)
ENDCLASS(GameListDialog)
@@ -18,7 +18,7 @@
entity e;
me.TR(me);
- me.TD(me, me.rows, me.columns, me.campaignBox = makeGameList());
+ me.TD(me, me.rows - 1, me.columns, me.campaignBox = makeGameList());
me.gotoRC(me, me.rows - 1, 0);
me.TD(me, 1, me.columns, e = makeNexuizButton(_("Start!"), '0 0 0'));
Modified: edu2/id1/qcsrc/menu/edu2/dialog_login.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/edu2/dialog_login.c 2008-02-27 13:42:40 UTC (rev 430)
@@ -18,6 +18,7 @@
ATTRIB(LoginDialog, username, entity, NULL)
ATTRIB(LoginDialog, password, entity, NULL)
+ //ATTRIB(LoginDialog, rememberMe, entity, NULL)
ATTRIB(LoginDialog, okButton, entity, NULL)
ATTRIB(LoginDialog, offlineButton, entity, NULL )
ENDCLASS(LoginDialog)
@@ -32,8 +33,13 @@
"\\\"; document.loginform.pass.value=\\\"", me.password.text, "\\\"; login_form_change(); document.loginform.submit();\"\n");
}
+#define REG_EDU2_USERNAME "edu2/login/username"
+#define REG_EDU2_PASSWORD "edu2/login/password"
+
void LoginDialog_onOkClick(entity button, entity me)
{
+ db_put( menu_registry, REG_EDU2_USERNAME, me.username.text );
+ db_put( menu_registry, REG_EDU2_PASSWORD, me.password.text );
Edu2InfoTabsDialog_onLoggedIn();
me.close( me );
}
@@ -49,10 +55,14 @@
me.moveable = true;
me.username = makeChatInputBox( true, false );
+ // load old key from registry
+ me.username.setText( me.username, db_get( menu_registry, REG_EDU2_USERNAME ) );
//me.username.onEnterEntity = me;
//me.username.onEnter = LoginDialog_onEnter;
me.password = makeChatInputBox( false, true );
+ me.password.setText( me.password, db_get( menu_registry, REG_EDU2_PASSWORD ) ),
+
//me.password.onEnterEntity = me;
//me.password.onEnter = LoginDialog_onEnter;
Modified: edu2/id1/qcsrc/menu/edu2/dialog_logout.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/edu2/dialog_logout.c 2008-02-27 13:42:40 UTC (rev 430)
@@ -7,7 +7,8 @@
ATTRIB(LogoutDialog, intendedWidth, float, 0.5)
ATTRIB(LogoutDialog, rows, float, 3)
ATTRIB(LogoutDialog, columns, float, 2)
- ATTRIB(LoginDialog, name, string, "LogoutDialog")
+ ATTRIB(LogoutDialog, name, string, "LogoutDialog")
+ ATTRIB(LogoutDialog, closable, float, 0)
ENDCLASS(LogoutDialog)
#endif
Modified: edu2/id1/qcsrc/menu/edu2/gamelist.c
===================================================================
--- edu2/id1/qcsrc/menu/edu2/gamelist.c 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/edu2/gamelist.c 2008-02-27 13:42:40 UTC (rev 430)
@@ -39,7 +39,7 @@
#endif
#ifdef IMPLEMENTATION
-#define GAMELIST_MAX_ENTRIES 64
+#define GAMELIST_MAX_ENTRIES 10
typedef void(entity) GameList_Callback; // void(entity button)
string gamelist_longdesc_wrapped[GAMELIST_MAX_ENTRIES];
string gamelist_longdesc[GAMELIST_MAX_ENTRIES];
@@ -48,7 +48,6 @@
var GameList_Callback gamelist_callback[GAMELIST_MAX_ENTRIES];
float gamelist_entries;
-float gamelist_offset;
void( entity button ) MineSweeper_Start = {
entity lDialog;
@@ -143,8 +142,8 @@
float i;
i = 0;
#define GAMELIST_ENTRY(ax,sx,bx,fx) gamelist_shortname[i] = ax; gamelist_shortdesc[i] = sx; gamelist_longdesc[ i ] = bx; gamelist_callback[i] = fx; i = i + 1
- GAMELIST_ENTRY( "edu1", "Edu 1", "Edu1 Game is awesome bla blub more to write and do!", Edu1_Start );
- GAMELIST_ENTRY( "minesweeper", "MineSweeper (Classic)", "all you ever dreamed about..! \\o/", MineSweeper_Start );
+ GAMELIST_ENTRY( "edu1", "Edu 1", "Play the original and educate yourself while answering questions and having fun with sponges (and you even get Credits for it)!", Edu1_Start );
+ GAMELIST_ENTRY( "minesweeper", "MineSweeper (Classic)", "The classical Windows game that has been ported to oh so many platforms. You can play it here, too, and help time pass when you're bored and, of course, earn useful Credits.", MineSweeper_Start );
GAMELIST_ENTRY( "tabletennis", "Table Tennis 3D", "Play some rounds of tebletennis against your opponents and earn Credits with each score.", DummyGame_Start );
GAMELIST_ENTRY( "yeti", "Yeti Game", "Enjoy this fluffy arcade platformer and help the yeti find his way back into his cave.", DummyGame_Start );
GAMELIST_ENTRY( "moongame", "MoonGame Beat'em Up", "Feeling like beating someone up? Don't take it on your pets and better play this game. It's fun and you get Credits for it - and no jail time!", DummyGame_Start );
@@ -254,7 +253,7 @@
s = gamelist_shortdesc[i]; // fteqcc sucks
else
s = "???";
- s = draw_TextShortenToWidth(strcat(_("Game "), ftos(i + 1), " - ", s), me.columnNameSize / me.realFontSize_x, 0);
+ s = draw_TextShortenToWidth(strcat(/*_("Game "), ftos(i + 1), " - ",*/ s), me.columnNameSize / me.realFontSize_x, 0);
draw_Text(me.realUpperMargin1 * eY + (me.columnNameOrigin + 0.00 * (me.columnNameSize - draw_TextWidth(s, 0) * me.realFontSize_x)) * eX, s, me.realFontSize, theColor, theAlpha, 0);
if(i <= me.campaignIndex)
Modified: edu2/id1/qcsrc/menu/item/gecko.c
===================================================================
--- edu2/id1/qcsrc/menu/item/gecko.c 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/item/gecko.c 2008-02-27 13:42:40 UTC (rev 430)
@@ -28,6 +28,8 @@
gecko_create( me.texturePath );
}
gecko_navigate( me.texturePath, strcat( "http://www.icculus.org/~black/stuff/terminalbrowser.html?", URI ) );
+ //gecko_navigate( me.texturePath, "about:blank" );
+ //gecko_navigate( me.texturePath, "javascript:Darkplaces.query( 123 );" );
}
void drawGecko(entity me)
Modified: edu2/id1/qcsrc/menu/mbuiltin.qh
===================================================================
--- edu2/id1/qcsrc/menu/mbuiltin.qh 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/mbuiltin.qh 2008-02-27 13:42:40 UTC (rev 430)
@@ -289,6 +289,9 @@
float(float bufhandle, string str, float order) bufstr_add = #448;
void(float bufhandle, float string_index) bufstr_free = #449;
+string(string search, string replace, string subject) strreplace = #484;
+string(string search, string replace, string subject) strireplace = #485;
+
//DP_QC_CRC16
//idea: div0
//darkplaces implementation: div0
Modified: edu2/id1/qcsrc/menu/menu.qc
===================================================================
--- edu2/id1/qcsrc/menu/menu.qc 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/menu.qc 2008-02-27 13:42:40 UTC (rev 430)
@@ -58,6 +58,7 @@
void() m_init =
{
dprint_load();
+ menu_registry = db_load( MENU_REGISTRY_FILE );
}
void UpdateConWidthHeight()
@@ -412,6 +413,9 @@
void() m_shutdown =
{
m_hide();
+ // save the registry
+ db_save( menu_registry, MENU_REGISTRY_FILE );
+ db_close( menu_registry );
};
void(string itemname) m_goto =
Modified: edu2/id1/qcsrc/menu/menu.qh
===================================================================
--- edu2/id1/qcsrc/menu/menu.qh 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/menu.qh 2008-02-27 13:42:40 UTC (rev 430)
@@ -59,3 +59,6 @@
float() MessageLog_GetCount;
string( float index ) MessageLog_Get;
+
+float menu_registry;
+const string MENU_REGISTRY_FILE = "menu.registry";
Modified: edu2/id1/qcsrc/menu/nexuiz/playermodel.c
===================================================================
--- edu2/id1/qcsrc/menu/nexuiz/playermodel.c 2008-02-27 11:34:36 UTC (rev 429)
+++ edu2/id1/qcsrc/menu/nexuiz/playermodel.c 2008-02-27 13:42:40 UTC (rev 430)
@@ -215,9 +215,15 @@
me.playerModel.torso.alpha = -1.0;
me.playerModel.head.alpha = -1.0;
}
+ vector lSize;
+ lSize = boxToGlobalSize(me.imgSize, draw_scale);
+ if( lSize_x == 0 || lSize_y == 0 ) {
+ return;
+ }
+
PlayerModel_AnimationThink( me.playerModel );
R_SetView (VF_MIN, boxToGlobal(me.imgOrigin, draw_shift, draw_scale));
- R_SetView (VF_SIZE, boxToGlobalSize(me.imgSize, draw_scale));
+ R_SetView (VF_SIZE, lSize);
R_SetView (VF_FOVX, (me.imgSize_x / me.imgSize_y) * 90);
R_SetView (VF_FOVY, 100);
R_SetView (VF_CLEARSCREEN, 0 );
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|