Commit Graph

356 Commits (95dd1980532e8377a66412b55d21d5ab035d4535)

Author SHA1 Message Date
rubidium 05792c46a3 (svn r15429) -Change: do r15428 also for the string names. 16 years ago
rubidium 377ce6c5bf (svn r15410) -Cleanup: get rid of most of the references to the 'patches' except where it's used for backward compatability. 16 years ago
frosch 27105127f6 (svn r15409) -Update: Currencies
Remove intermediate currency "New Turkish lira".
  Add Euro introduction date for Slovakia.
  Remove Euro introduction date for Hungary.
16 years ago
peter1138 967491a22d (svn r15389) -Feature: Add ability to select which base graphics set is used from the Game Options window. The change takes effect when the window is closed. This option can only be used from the intro menu, as reloading graphics during a game may cause issues. 16 years ago
rubidium ae2fda6c02 (svn r15388) -Change: unify the way Ctrl+Click is written. 16 years ago
rubidium c346f249cd (svn r15372) -Feature: filter the 'content' based on the tag/name. Based on a patch by Roujin. 16 years ago
rubidium 546cd4f70e (svn r15363) -Fix [FS#2600]: inconsistency w.r.t. On/Off text for settings. 16 years ago
rubidium 0cf08d32c7 (svn r15362) -Change: make a string name more consistent. 16 years ago
smatz 6dff31d34b (svn r15357) -Codechange: unify the way buttons are updated in the 'found town' window 16 years ago
smatz 324b54132c (svn r15353) -Feature(tte): make it possible to have cities of various sizes 16 years ago
smatz df2a387fc3 (svn r15342) -Feature: allow changing town layout in the 'Found new town' window 16 years ago
smatz 832e392855 (svn r15340) -Fix [FS#2121]: changing town road layout in-game caused ugly road networks
-Fix: use a flag instead of TL_NO_ROADS to forbid towns to build roads. The flag is ignored during world generation, so there won't be 'ghost' towns anymore
-Feature: town layout is now stored per town, so it is possible to (manually) set different layout for each town
16 years ago
peter1138 6899955b0c (svn r15301) -Feature [FS#104]: Add option to group and subtotal expenses list in the company finance window. Concept from Zr40. 16 years ago
belugas d7971e5e37 (svn r15293) -Feature [FS#2583]: Give a more meaningful message when towns refuse construction of noise-controlled airports 16 years ago
rubidium 04709f2798 (svn r15242) -Feature: allow moving clients between companies/spectators by the server and the clients themselves (dihedral) 16 years ago
peter1138 3d404c2927 (svn r15236) -Codechange: Rename realistic_acceleration patch option to train_acceleration_model, and change from boolean to value. Don't forget to update your settings. 16 years ago
rubidium 8382b76b0f (svn r15221) -Change [FS#2574]: only show missing NewGRFs when opening the content download window from a NewGRF list and there are missing NewGRFs, otherwise show just all NewGRFs the system knows. 16 years ago
Yexo 08670da54a (svn r15212) -Feature [FS#2566]: Change the dropdown box where you can chose which edges will be water to 4 pushbuttons (based on patch by planetmaker). 16 years ago
frosch 3f38615af1 (svn r15198) -Fix (r15190): Advanced setting was missing the 'on'/'off' part. 16 years ago
Yexo db3ee34b44 (svn r15190) -Feature: Allow terraforming of the tiles at the edges of the map. 16 years ago
rubidium ff328bf68b (svn r15178) -Change: rename 'update' to 'upgrade' as that's a bit more clear 16 years ago
Yexo 3d35b3c2cc (svn r15175) -Feature: Add the option to select the AIs to start in a new game and configure them via the gui. 16 years ago
Yexo 8fabd3982d (svn r15148) -Cleanup: Remove the options "competitor start time" and "competitor intelligence" from the difficulty options because they already were unused. 16 years ago
smatz a337c47d4f (svn r15145) -Fix: crash when one tried to load a TTO savegame
-Fix (r15144): it wasn't safe at all, but the code broken code isn't needed anymore
16 years ago
rubidium 3a13b75e37 (svn r15126) -Feature: downloading content from a central server (content.openttd.org) where authors can upload they NewGRFS/AI etc. This should make joining servers that use only NewGRFs that are distributed via this system easier as the players can download the NewGRFs from in the game. It should also make it easier to see whether there are updates for NewGRFs and make the necessary updates. 16 years ago
rubidium b1a33a494f (svn r15104) -Codechange: unify the resolving of the xyz kbytes/megabytes strings. 16 years ago
truebrain e2d2946007 (svn r15032) -Fix (r15030): Rubidium was too script-happy ;) 16 years ago
rubidium eb22e265f2 (svn r15030) -Update (r15029): and from the other languages too (yay for WT2) 16 years ago
rubidium 221df9bb19 (svn r15029) -Cleanup (r15027): remove strings that aren't needed anymore 16 years ago
truebrain a3dd7506d3 (svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
NoAI is an API (a framework) to build your own AIs in. See:
   http://wiki.openttd.org/wiki/index.php/AI:Main_Page
 With many thanks to:
  - glx and Rubidium for their syncing, feedback and hard work
  - Yexo for his feedback, patches, and AIs which tested the system very deep
  - Morloth for his feedback and patches
  - TJIP for hosting a challenge which kept NoAI on track
  - All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
16 years ago
rubidium 1ef953e4a5 (svn r14989) -Codechange: remove a lookup table by reordering some items in english.txt (Swallow) 16 years ago
peter1138 510e0ce083 (svn r14979) -Fix: Disable a NewGRF from loading if it contains multiple Action 8s 16 years ago
rubidium 496f6aed3c (svn r14974) -Change: reorder/reorganise the entries of the settings window (Alberth) 16 years ago
rubidium 7a0d957b05 (svn r14971) -Change: the colour of the patch page text so it becomes more visible as it changed background (Alberth) 16 years ago
rubidium 99337bf4a1 (svn r14959) -Fix [FS#2508]: wrong defaults for service interval when switching between service interval in days and service interval in percentages. 16 years ago
rubidium db546e607f (svn r14956) -Fix [FS#1832]: building new station parts didn't allocate a new station spec effectively breaking variable 41. This was due to the limited number of station specs that we can have per station. This fix makes newly build station parts create a new spec until one cannot allocate new station specs anymore and it'll revert to the old behaviour (sharing station specs). 16 years ago
rubidium 7878405a12 (svn r14954) -Fix [FS#1890]: sharing/cloning/inserting of orders that the/a vehicle (in the shared list) can't go to (wrong station type etc) 16 years ago
rubidium c8c61e36bd (svn r14919) -Feature: distant joining of stations (Frostregen and PhilSophus) 16 years ago
frosch cf1e926e37 (svn r14902) -Feature: Advanced setting to keep various building tools active, which are usually closed after placing an object. (planetmaker) 16 years ago
rubidium 84dee1e738 (svn r14899) -Feature: remove the window limit, but leave a configurable limit on the number of non-sticky non-vital windows.
-Fix [FS#2499]: crashes/misbehaviours when (almost) all windows are stickied.
16 years ago
smatz 67bf6a0998 (svn r14835) -Change: apply the 'warn if train's income is negative' setting to other vehicle types, too 16 years ago
smatz 9a09e5c4a0 (svn r14831) -Codechange: use {VEHICLE} instead of Train/Ship/Road veh/Aircraft/{STRING} {COMMA} in lang files (part by Swallow) 16 years ago
rubidium c9e8fd307e (svn r14827) -Feature [FS#1984]: few (optional) optimisations to making (initial) orders (sulai) 16 years ago
rubidium fa2bf69a53 (svn r14802) -Fix [FS#2490]: "(undefined string)" in default savegame/screenshot names when there's no company in the game. 16 years ago
rubidium 35f5783c62 (svn r14792) -Feature: make the date format for default savegame/screenshot names configurable 16 years ago
rubidium aff7feb767 (svn r14791) -Add: the ability to make ISO dates with the string system (PhilSophus) 16 years ago
rubidium 1357b0a4c2 (svn r14789) -Feature: allow scrolling with the left mouse button pressed (if enabled). Primarily useful for systems with touch screen (aapo) 16 years ago
rubidium 6513bf3a3a (svn r14781) -Change: someone changed _cur_year; so update it in a few hardcoded places... happy new year!
-Fix (r11790): a few instances were forgotten.
16 years ago
rubidium a25e3f8d70 (svn r14764) -Codechange: make the '***' chat messages like "Game paused (not enough players)" fully translateable. 16 years ago
rubidium 683b65ee18 (svn r14755) -Codechange: remove ending year as it can't be changed anyways. 16 years ago
rubidium b8d82cc28c (svn r14752) -Fix [FS#2438]: revenue when clearing land would show up in red in the land info window as negative cost. 16 years ago
rubidium 217a72122a (svn r14649) -Change: consistently use can't instead of primarily can't and a bit of cannot in english.txt. 16 years ago
rubidium a614dd7174 (svn r14636) -Add: DOS port of OpenTTD, without network support though. 16 years ago
rubidium fea78fbfbb (svn r14618) -Feature: when the chosen language isn't supported by the current font, try to find a font that does and use that instead. Thanks to glx/michi_cc for the Windows implementation. 16 years ago
rubidium 2277a1ff9c (svn r14610) -Fix [FS#2415]: possible stack corruption when reading corrupted sprites.
-Change: harden the sprite reading routine against corrupt sprites.
16 years ago
rubidium aa126066b7 (svn r14595) -Add: Estonian currency.
-Change: Slovenia switched to the Euro in 2007.
16 years ago
rubidium 2ed3c27822 (svn r14592) -Feature [FS#1124]: non-destructive autofill with option to keep waiting times (PhilSophus) 16 years ago
rubidium cdfa2d68b1 (svn r14582) -Fix [FS#2392]: blank box on cost estimation of levelling a flat area.
-Fix: make levelling, raising and lowering of an area behave the same.
16 years ago
rubidium 42df5cbc03 (svn r14524) -Add: stop-in-depot as part of orders (PhilSophus) 16 years ago
michi_cc b3726f4c7c (svn r14447) -Change [FS#2333]: Rename YAPP "advanced signals" to "path signals" and "normal signals" to "block signals". 16 years ago
rubidium c9a82ac3e7 (svn r14423) -Codechange: also do r14221 for the strings. 16 years ago
belugas 217db3cb61 (svn r14352) -Feature: Allow sorting vehicles by remaining life time.
Patch by yorick
16 years ago
smatz 1266b1a73f (svn r14334) -Feature: ability to reset name to default/automatic value (for vehicles, engines, towns, groups, stations, waypoints, managers and companies) 16 years ago
rubidium d6bc633870 (svn r14298) -Fix [FS#2214]: "{CARGO} from unknown destination". 16 years ago
frosch 95ba19ee69 (svn r14276) -Fix: Rename one of the advanced settings, as 'TTDPatch compatible nonstop handling' wasn't a correct description anymore. 16 years ago
frosch e3f2da01d3 (svn r14275) -Change: Rename 'Configure patches' to 'Advanced settings'. 16 years ago
smatz 06be820730 (svn r14263) -Codechange: give a better error message when removing a sign fails 16 years ago
rubidium a4cd12274c (svn r14233) -Feature/Fix [FS#2172]: save the palette of the loaded NewGRFs in the savegame, so joining with a server using Windows palette will make a client with the DOS palette do palette conversion and (thus) not cause a desync due to the different palettes disabling different NewGRFs. 16 years ago
peter1138 7bc5b136b1 (svn r14203) -Codechange: [NewGRF] Disable a GRF if it contains an unknown property, or tries to assign an invalid ID. 16 years ago
peter1138 4c56b827e5 (svn r14184) -Codechange: [NewGRF] Since our NewGRF handling is better than it used to be, disable a NewGRF if unexpected sprites are reached. 16 years ago
matthijs 262ddecfc5 (svn r14166) -Doc: Change "forbid 90 degree turn" patch option description to say "not with NTP" instead of "requires NPF" (which has been untrue since the introduction of YAPF). Thanks to FauxFaux for pointing this out. 16 years ago
belugas 14bc2b5d4f (svn r14150) -Add: Add the count of trains using the current waypoint in the vehicle list window's caption 16 years ago
frosch 7c5d237447 (svn r14112) -Fix (r13715)[FS#2232]: Action B custom messages with parameteers were broken. 16 years ago
belugas 578833ef01 (svn r14106) -Fix(r14104): A string too much been commited 16 years ago
belugas 77ee099212 (svn r14104) -Feature: Add a window for waypoints, allowing to view all the trains having the selected waypoint in their orders.
Changing its name is also supported from the same new window.
Gui based on work done by Satyap, on FS#2025.
16 years ago
frosch f7826f8a37 (svn r14083) -Fix [FS#1264, FS#2037, FS#2038, FS#2110]: Rewrite the autoreplace kernel. 16 years ago
rubidium bd0a420744 (svn r13955) -Codechange [YAPP]: Try to extend the path of a stuck train so it is able to continue. (michi_cc) 16 years ago
rubidium e9c33fb288 (svn r13950) -Add [YAPP]: Trains can now also be in a 'stuck' state when waiting on a path reservation. (michi_cc) 16 years ago
rubidium 908591b40a (svn r13938) -Codechange [YAPP]: Add the new signals to the build signal GUI. (michi_cc) 16 years ago
rubidium 60006ad24c (svn r13935) -Codechange [YAPP]: PBS signals can now be built with the normal signal tools. (michi_cc) 16 years ago
rubidium fe4f23dba2 (svn r13932) -Add [YAPP]: PBS signals added to the map array. The signals are drawn using the old Patch-like PBS sprites. (michi_cc) 16 years ago
rubidium df99103a31 (svn r13927) -Add [YAPP]: Draw reserved tracks darker, toggeld by a patch setting. (michi_cc) 16 years ago
frosch 770d293788 (svn r13923) -Feature: Show [total-]cargo info in depot when [ctrl-]right-clicking on vehicle. 16 years ago
rubidium d67ef3573c (svn r13917) -Fix [FS#2178]: wrong tooltip for the industry directory's list. 16 years ago
belugas d358eff64d (svn r13872) -Feature: Split the news message announcing opening and closure of industries into two news of their own 16 years ago
smatz 05c2a8eba4 (svn r13830) -Feature: show additional NewGRF info in the Tile Info window for stations, houses and industries 16 years ago
smatz aae2aa64c4 (svn r13816) -Fix [FS#2150]: check for vehicle length changes outside a depot (callback 0x11) and give a warning about that 16 years ago
glx ac9459c46c (svn r13797) -Fix [FS#2160](r13715): crash when displaying save/load errors 16 years ago
peter1138 6e0af9fdfe (svn r13781) -Feature: NewGRF presets, selected by a drop down list in the NewGRF window. Presets are saved in the config file. 16 years ago
rubidium 5f280d0e50 (svn r13732) -Feature: add a few extra columns with information to the server list. Patch by Pegasus. 16 years ago
rubidium 891bec7e23 (svn r13730) -Fix: make a copy of the names for news messages about the deletion of companies as the removal of a company could lead to wrong names in the news messages. 16 years ago
rubidium ab234cf90c (svn r13715) -Fix [FS#2129]: C-like strings had to be rebound each time they were printed, otherwise the text could change due to the few number of slots that could be used to bind.
-Codechange: remove all BindCString and related functions and replace it by RAW_STRING which prints the C-string raw pointer that is on the 'print stack'.
16 years ago
rubidium 0f4d9a8e49 (svn r13704) -Fix: make timetables work more sensible when used in conjunction with conditional orders, i.e. make it possibly to tell how long to travel to the next destination if you jump. 16 years ago
rubidium be722412fa (svn r13702) -Fix: do not overflow the order/timetable window when 'long' orders are displayed. 16 years ago
skidd13 41b09d4027 (svn r13628) -Feature: enable building of aqueducts in the scenario editor
-Codechange: related to this split the waterway based buttons from the landscape generation window
16 years ago
rubidium 4ccd8a6786 (svn r13576) -Codechange: disable static NewGRFs when non-static NewGRFs query them in the context of network games. This makes it impossible for static NewGRFs to disable non-static NewGRFs and 'bad' things happening because the non-static NewGRF doesn't know about the static NewGRF. 16 years ago
belugas bcb71a011e (svn r13513) -Codechange: Give proper message when building a river fails.
Give proper description of a river tile with the Query Tool.
Extracted (in part) from FS#1884, by Ammler
16 years ago
smatz 5d5d9f682e (svn r13479) -Codechange: don't use word 'bridge' for aqueducts that often 16 years ago
smatz 881d384e56 (svn r13477) -Fix (r13464): correct tile type in the Query tile info window 16 years ago
rubidium 0900f3388a (svn r13444) -Codechange: make the order GUI somewhat more efficient. The most used options can be done with a single click now. 16 years ago
skidd13 b80425fdf9 (svn r13311) -Codechange: Use GUIList for the industry directory window
-Codechange: Replaced the four sort buttons by a dropdown
-Codechange: Reduced the default window size
16 years ago
belugas fc35ad9ee9 (svn r13226) -Feature: Allow to have more than only two airports per town. The number of airports is now controlled by the noise each of them generates, the distance from town's center and how tolerant the town is.
Initial concept : TTDPatch (moreairpots),  Initial code : Pasky
Thanks to BigBB (help coding), Smatz Skidd13 and frosch for bugcatches and advices
16 years ago
frosch eca692ef90 (svn r13206) -Feature(ette): Display all owners of a tile in the tile-info-window. 16 years ago
glx 7e1ac0ce57 (svn r12967) -Fix (r12966): my lang update script failed 16 years ago
glx e326a03c4c (svn r12966) -Update: apply english.txt changes from r12965 to other languages 16 years ago
glx 963dce0d47 (svn r12965) -Codechange: add support for callback 37 in industries directory window 16 years ago
peter1138 a00371c8db (svn r12924) -Feature: Introducing the so called 'engine pool' which primarily removes the fixed engine type limits and also happens to allow (with the patch option 'dynamic_engines') multiple NewGRF vehicle sets to coexist. 16 years ago
smatz 805e1db332 (svn r12904) -Fix [FS#1953]: remove trams from savegames saved in OTTD without tram support, it is better than to simply crash 16 years ago
glx f7d3d879c5 (svn r12808) -Fix: enforce autorenew values range in command
-Fix: typo in english.txt
16 years ago
rubidium 31411d4755 (svn r12766) -Add: sorting by road vehicle/train length. Based on a patch by Sir Bob. 16 years ago
rubidium 172237e326 (svn r12709) -Feature: show the last joined server. Heavily based on a patch by Yexo. 16 years ago
maedhros c0fbfd03ac (svn r12700) -Cleanup (r12699): Remove an unused string. 16 years ago
rubidium af3723e217 (svn r12687) -Change: show when a vehicle is actually leaving the station instead of loading/unloading. 16 years ago
rubidium ed250cc7b5 (svn r12670) -Add: unconditional/always order 'jump/skip' variable. 16 years ago
rubidium ac94b6384b (svn r12667) -Feature: conditional 'skip/jump' orders. 16 years ago
rubidium cebe2001ba (svn r12661) -Add: ability to send a vehicle (using default orders) to the nearest depot. 16 years ago
rubidium 3919c30c2d (svn r12660) -Codechange: make the creation of depot order strings a little more modular (instead of causing a string explosion). 16 years ago
rubidium 3a0cb23548 (svn r12656) -Fix: tooltips for some order buttons are outdated/incorrect. 16 years ago
rubidium ba0a5814c2 (svn r12652) -Codechange: rework the order GUI a little more to make it a little more clear that 'transfer' is just an unload type. 16 years ago
rubidium 6379c30d26 (svn r12650) -Feature: ability to force a vehicle to not load at a station.
-Feature: ability to force a vehicle to not unload at a station.
16 years ago
rubidium 3974bf2199 (svn r12649) -Fix: refit orders not being shown.
-Fix: unusable non-stop orders shown for waypoints and depots.
16 years ago
rubidium 5992dad01f (svn r12648) -Feature: allow four different non-stop types in a single game instead of two. The "TTDP compatible order" setting now only sets the default behaviour of new trains.
-Feature: allow three different load type in a single game instead of two. One can choose full load all and full load any instead of full load being governed by the "full load any" patch setting.
16 years ago
rubidium 2ac6af4e48 (svn r12644) -Codechange: rework the order gui a little to prepare it for some future changes. 16 years ago
rubidium c9e9e6005b (svn r12643) -Codechange: be more explicit about the orders a vehicle has (non stop and full load are ambiguous and depend on some patch settings). 16 years ago
rubidium 70f3413a36 (svn r12641) -Codechange: do not use the same button for two completely distinct tasks, just make an extra button for it and hide them when not needed. 16 years ago
rubidium 1bd5a29df5 (svn r12596) -Feature: show what cargos a station could be supplied with. Patch by Roujin. 16 years ago
smatz febc5150c9 (svn r12547) -Feature: invisibility options to make objects invisible instead of transparent 16 years ago
skidd13 584bbfd7e7 (svn r12534) -Feature: Add a new type of town road layouts - random for each town 16 years ago
glx 226e48cf83 (svn r12455) -Codechange: Implement NewGRF callback 37 (cargo sub-type display for industries) 16 years ago
rubidium e9dad7637e (svn r12441) -Feature: open the time table when pressing the order button while pressing the CTRL key. Patch by Phil Sophus. 16 years ago
rubidium 327e870962 (svn r12425) -Feature [FS#1846]: On Screen Keyboard for input fields so someone without a keyboard can enter text too. Patch by Dominik. 17 years ago
glx fed6a25799 (svn r12407) -Add [FS#1866]: more language flags for servers 17 years ago
maedhros 292cfc56f6 (svn r12391) -Feature: Show whether a town is a "city" in the town description title bar. 17 years ago
peter1138 5049fbb081 (svn r12329) -Fix [FS#1819]: Disallow building level crossings over one-way roads as this allowed competitors to remove the one-way state. 17 years ago
peter1138 926f5d548d (svn r12293) -Feature: Ability to change aircraft speed factor, from so
called 'realistic' (matching other vehicles) (1/1) to original TTD 
speed (1/4). Note this option defaults to original TTD speed.
17 years ago
smatz 507728f46b (svn r12129) -Change [FS#1759]: simplified patch settings for pathfinders (Yorick) 17 years ago
smatz 9e0a93d286 (svn r12104) -Fix (r12103): remember loading indicators transparency settings and make in switchable by Ctrl+9 17 years ago
smatz 8a768652c8 (svn r12103) -Feature(tte): separate catenary transparency settings from building transparency settings 17 years ago
maedhros 4e839aacf6 (svn r12102) -Feature: Allow locking individual transparency settings so they will not be changed by pressing 'x'. (Roujin) 17 years ago
orudge 2ef11e0b8b (svn r12026) -Update: 'exit' is consistent with UK English in OpenTTD, 'quit' with US English 17 years ago
frosch a2b35067dd (svn r12023) -Fix [FS#1690]: Put a better suited text in the quit-dialog. 17 years ago
belugas caf7e8655c (svn r12022) -Revert(r12018): Invisible trees are now separate from the building concept.
So when you want invisible trees, just select the option of the same name in the Patch Options and toggle transparency of trees.
More to come on the saga of Invisibility. So stay tuned.
17 years ago
maedhros 21eef65e77 (svn r11994) -Codechange: Remove numbers from string names where the strings aren't present in TTD, since they don't correspond to either TTD's TextIDs or OpenTTD's StringIDs. 17 years ago
peter1138 c6656d6b2f (svn r11990) -Codechange: Show all cargo sources (en-route from) in the station view
cargo waiting list instead of just one. The station view window is now 
resizable to cope with the extra information.
17 years ago
peter1138 4a2f7db99b (svn r11926) -Feature: Rivers. Graphics must be provided by NewGRF else rivers are drawn as canals. Rivers can currently only be placed with-in the scenario editor. 17 years ago
peter1138 b6d0684826 (svn r11919) -Codechange: Assign numbered parameters to world generator widgets to avoid separate DrawString()s, and do the same for the scenario flat-land window. 17 years ago
peter1138 68fc3b35da (svn r11893) -Codechange: build map size drop downs dynamically and remove unneeded strings 17 years ago
rubidium 2817e5425b (svn r11874) -Fix [FS#1655]: all wagons of maglev/monorail trains would get the livery colour of the engine instead of their wagon type. 17 years ago
rubidium ebb6259057 (svn r11790) -Update: apparantly it's 2008 already ;). Patch by Anne Stellingwerf (FS#1613). 17 years ago
belugas 3dd61f423a (svn r11734) -Change: Allow ToggleFullScreen to return the result of the operation' attempt. Previously, only visual clues were available.
-Fix[FS#1519]: When you can not use this resolution at full screen, now you'll know that it failed.
As for the reason it did not work, each computer/OS has its reason.
17 years ago