137 Commits

Author SHA1 Message Date
Jens Ayton
1f8d82b8ee Switched to JavaScript implementation of cloaking device mission.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1085 127b21dd-08f5-0310-b4b7-95ae10353056
2007-07-14 13:53:50 +00:00
Jens Ayton
78275bee85 Implemented auto_ai ship attribute. Clamped laser head values for shaders. Tweaked logging to avoid sporadic 'logging not inited' message while quitting.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1074 127b21dd-08f5-0310-b4b7-95ae10353056
2007-07-12 11:33:26 +00:00
Jens Ayton
949cd8da04 Load screen now uses file extensions (urgh) to recognize saved games rather than trying to parse every file as a plist. Fixed display of giant question mark for unknown ship types (but it draws in the wrong place in wide windows, which probably also affects long ships).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1069 127b21dd-08f5-0310-b4b7-95ae10353056
2007-07-09 14:58:33 +00:00
Jens Ayton
8a85b1a657 Fixed crash when shooting off frangible subentities. Added notequal operator for legacy scripts. Removed unused enumerant GUI_SCREEN_INVENTORY. Added logging-echo-to-stderr option (OS X only) and changed default for logging-show-app-name to NO on OS X (was already NO for other platforms). Scripts no longer run when paused and on a menu screen.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1068 127b21dd-08f5-0310-b4b7-95ae10353056
2007-07-08 22:47:30 +00:00
Jens Ayton
b3b04859ab Enabled more warning flags (-Wextra -Wno-unused-parameter -Wno-missing-field-initializers) in OS X build, and fixed several hundred resulting warnings (mostly by using more appropriate types). Bumped version number to 1.69.1. Fixed unable-to-buy-in-shipyard bug. Attempt to fix dockEscorts crash bugs (needs testing). Sundry cleanup, especially of AI and GuiDisplayGen; all exception throws now in standard form. Removed some dead code. Use correct key for Advanced Nav Array if no keyconfig.plist found. Changed OOCollectionExtractors to always clamp integer values to the requested type's range rather than truncating like NSNumber. Removed inconsistently-used and apparently-unneeded NSLock from AI.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1063 127b21dd-08f5-0310-b4b7-95ae10353056
2007-07-07 15:44:50 +00:00
Jens Ayton
439d26be98 Fixed problem with traders that have pirate AI. Gave each non-player ship a unique role based on its dictionary key. Changed numbers like 0.65000000000000002 to 0.65.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1050 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-29 12:55:48 +00:00
Jens Ayton
e9f415e686 Fix for witchspace config not being read.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1043 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-26 16:26:11 +00:00
Jens Ayton
8294158f5a Made planetinfo.plist entry for interstellar space less excitable.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1041 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-24 21:53:59 +00:00
Jens Ayton
71d7a25468 Removed debug code from OOSkyDrawable, and made it use OOMacroOpenGL. Added code to help catch occasional drawing glitch with sun. Disabled pruning of on-disk cache completely; as we now clear the cache when OXP search paths change, its size is bounded by the total size of installed OXPs.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1032 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-16 18:01:41 +00:00
Jens Ayton
5164b5f4a6 New sky-drawing code. Currently doesn't produce the same skies as the old code, but otherwise seems to work.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1022 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-10 13:36:42 +00:00
Jens Ayton
9a450d5f10 Cleaned up GameController, putting most platform-specific stuff in two major blocks. Mac-specific: Help window contents now loaded from (copy of) ReadMe.rtfd to ensure it's up-to-date; added log message format prefs window to Debug menu.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1014 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-09 10:38:16 +00:00
Nikos Barkas
b047c76b40 Fix legal status not displaying.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1013 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-09 08:54:16 +00:00
Jens Ayton
741f48d34a Undid damage to shipdata.plist from last revision. Extended dummy joystick handler for OS X to reduce the number of #ifs in PlayerEntityControls.m.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1012 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-08 14:54:21 +00:00
Jens Ayton
9137ef4581 Clean-up of various methods in connection with documenting uniform binding mechanism. Tweak to syntax for said mechanism. Bumped version number to 1.69.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1011 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-08 12:59:08 +00:00
Jens Ayton
f746a728e6 Unbroke last revision.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1004 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-06 09:12:35 +00:00
Jens Ayton
5572ddab50 Cache path should now be created properly under GNUstep, and XML should be used for cache (should change to GNUstep binary format once bugs are resolved). Added lots of debug messages to cache.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@995 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-03 09:32:06 +00:00
Jens Ayton
0382795518 Added support for flushing data cache by holding down shift at startup (needs testing under SDL!). Also, a question mark is now shown as a placeholder model on the Load screen if a saved game uses an unknown ship class.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@994 127b21dd-08f5-0310-b4b7-95ae10353056
2007-06-02 20:58:41 +00:00
Jens Ayton
28855f728e Non-sucky fix for problem plists, hopefully.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@989 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-24 10:01:41 +00:00
Jens Ayton
8ed1b9af6e Fiddled with Mac debug menu (added in previous commit).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@985 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-23 14:24:12 +00:00
Jens Ayton
786e73fcbb Work on reimplementing texture reloading -- works for shipentities and text, not sky and particles.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@984 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-23 13:12:13 +00:00
Jens Ayton
8dfcfa9b58 XMLified problem plists.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@979 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-21 17:15:07 +00:00
Jens Ayton
269a68f56d Oops, forgot to add planetinfo.plist (needed for data-driven witchspace).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@974 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-20 13:44:00 +00:00
Jens Ayton
17e40ba6c7 Lots of fiddling around, most of it reverted. Meh. New shinier (and simpler) sky.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@968 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-19 15:09:05 +00:00
Jens Ayton
3c4929873f Made fallback material data-driven, for great justice.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@967 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-14 16:39:21 +00:00
Jens Ayton
6643d24da1 Implemented garish placeholder texture for meshes with no TEXTURES section. Fixed bug where StationEntites were not being initialized fully. Made tharglets unpiloted.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@966 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-14 15:54:13 +00:00
Jens Ayton
f31ba4c5b3 Made time shader uniform not a special case. Made shader uniform bindings actaully update. Fixed crashing bug in texture cache.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@957 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-11 10:56:10 +00:00
Jens Ayton
076bf6c4fa Lots of stuff I've been working on over the last few weeks - mainly moving ShipEntity rendering into new class (OOMesh); also work on robustness of plist handling and stuff. Texture caching management is currently buggy.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@954 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-08 15:24:13 +00:00
Jens Ayton
0e59c00408 Changed Advanced Nav Array key to &.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@949 127b21dd-08f5-0310-b4b7-95ae10353056
2007-05-04 09:46:48 +00:00
Jens Ayton
5eacc5ba35 New attempt at cross-platform threaded texture loading. Also work on OOMesh implementation based on old Entity drawing code (fancy optimized version having stalled) and fixed problem that was causing synchronization of logcontrol.plist.xml to not happen.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@946 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-29 14:55:48 +00:00
Jens Ayton
0481b90f2a Changed synchronization mechanism used by async texture loader, because the old one didn't work on Windows. Relabelled all the files that are entirely by me as dual-licensed under GPL+MIT/X11 license. Work on OOMesh stuff, although it doesn't actually do anything useful yet. Probably other stuff done while BerliOS was down.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@944 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-23 22:21:38 +00:00
Jens Ayton
bdbe1b72ff New texture code (for models with shaders only). Somewhat buggy (notably, player ship is untextured after dying and respawning) but seems stable. Also removed a spurious assert from sound code.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@929 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-14 00:07:32 +00:00
Jens Ayton
9ead245895 Fixed code using for (i = 0; i != [[foo allKeys] count]; i++) antipattern. Cleanup of player saving: uses proper way of getting an XML property list (which is cross-platform), better error messages, less code duplication. Added Edit menu to OS X version, for use in dialog boxes. Bits of new texture model, but they're not used yet.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@925 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-13 10:38:08 +00:00
Jens Ayton
73aafb43e1 Rewrite of shader code.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@923 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-11 20:29:30 +00:00
Jens Ayton
e1d5ba7272 Tweaked key loading -- strings like "09" now get treated as numbers, even though "9" is treated as a string. Remade default keyconfig file - now has all current keys and is easier to read.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@922 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-10 09:33:41 +00:00
Jens Ayton
15795b03f2 Simplified key loading code, added 'dump target state' key (not bound to anything by default).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@917 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-08 21:06:29 +00:00
Jens Ayton
b06cee52f7 Clean-up of ship loading (not finished). Allow arbitraryish laser colours. Explosions toned down somewhat for really big ships. Fixed bug where ships which could have a shield enhancer, but don't, get some of the benefit of one. Increased intensity of exhaust plumes slightly.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@915 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-08 14:31:35 +00:00
Jens Ayton
a86bb97788 Subentities now share properties with parent for purposes of shaders.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@913 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-07 20:49:06 +00:00
Jens Ayton
ca593a0a1e Error reporting for JS Vector and Entity methods.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@911 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-06 17:35:42 +00:00
Jens Ayton
a2f6fea6a3 Removed a spurious error message. Removed debugOn/debugOff pairs from shipdata.plist and PlayerEntity.m.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@900 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-03 18:43:53 +00:00
Jens Ayton
8a55bc63a2 Xcode project tweak. Moved script out into Scripts folder (preparation for JavaScript translations).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@898 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-03 17:37:40 +00:00
Jens Ayton
046a2a4ff3 Renamed all built-in world scripts to start with oolite.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@893 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-02 21:04:35 +00:00
Jens Ayton
d327cb7b38 Fiddled with JavaScript loading and error reporting: unicode savvy, should load on all platforms.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@891 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-02 19:59:43 +00:00
Jens Ayton
7db1aebda6 Added some missingg JS methods; added systemEconomy_string; implemented willLaunch() event.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@887 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-01 16:56:17 +00:00
Jens Ayton
3fe9c74267 Lots of changes, mostly JavaScript-related. Bumped version number to 1.68.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@877 127b21dd-08f5-0310-b4b7-95ae10353056
2007-04-01 11:26:35 +00:00
Jens Ayton
05e5a0282f Hack to change Apple plist DTD to GNUstep plist DTD at runtime for XML plists. Added license clarification to OOFastArithmetic.m. Updated year in startup copyright message.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@876 127b21dd-08f5-0310-b4b7-95ae10353056
2007-03-30 12:19:21 +00:00
Jens Ayton
4a3acfe57d Synchronized logcontrol.plist.xml.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@874 127b21dd-08f5-0310-b4b7-95ae10353056
2007-03-28 06:05:02 +00:00
dajt
8abed6fe8c Fixed GNUstep resource paths, and ensuring XML logcontrol.plist is used for GNUstep installations.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@873 127b21dd-08f5-0310-b4b7-95ae10353056
2007-03-28 02:16:03 +00:00
Jens Ayton
6345c35592 This week's monster submit:
* Changed required.plist version parsing to treat version strings as series of integers separated by points. This allows:
  - correct parsing of bug-fix versions like 1.67.1
  - correctly sorting 1.100 after 1.99.
* Deleted just about all commented-out NSLog()s (several hundred), and some other commented-out code. (commented-out or #ifdefed-out code with no indication of when you might want to reinstate it is worse than useless.)
* Ensured that most NSLog()s will at least include their class/module in their message class.
* Renamed Universe's -recycledOrNew:, -getShipWithRole: and -getShip: to -allocRecycledOrNewEntity:, -newShipWithRole: and -newShipWithName: to better match Objective-C coding conventions. (Methods whose result needs releasing should always be called alloc*, copy*, retain* or new*.)
* Replaced -[Universe generateSystemDescription] with DescriptionForSystem().
* Replaced -[Universe getRandomDigrams] with RandomDigrams().
* Replaced +[Universe systemSeedString] with StringFromRandomSeed().
* Replaced [Universe entityZero] with [PlayerEntity sharedPlayer].
* Replaced scriptedUniverse in ScriptEngine with [Universe sharedUniverse].
* Removed HAVE_SOUND. If you're porting to a platform without sound, use a no-op implementation of OOSound.
* Removed all (commented-out) NSBeep()s.
* Made settings caching in OOLog actually work. Doing complete message class setting resolution every time OOLog() was called was around 2% of our per-frame cost. (With this fixed, cache hit rate is well over 99% after a few seconds of play.) *headdesk*  (It may also be worth moving the settings-check into the macro, to avoid evaluating parameters for log messages that are never seen, but this might cause obscure bugs due to the parameters having side effects.)

Stuff that should have been in revision 859:
* Replaced all occurrences of -[Universe expandDescription:forSystem:]  with ExpandDescriptionForSeed() and ExpandDescriptionForCurrentSystem().
* Replaced  -[Universe expandDescriptionWithLocals:forSystem:withLocalVariables:] with ExpandDescriptionsWithLocalsForSystemSeed() and ExpandDescriptionsWithLocalsForCurrentSystem().


git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@872 127b21dd-08f5-0310-b4b7-95ae10353056
2007-03-26 01:24:50 +00:00
Jens Ayton
b30d3692cf Support loading of shaders from external file. New uniform variable, hull_heat_level. Fixed leak when shader loading fails.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@867 127b21dd-08f5-0310-b4b7-95ae10353056
2007-03-22 20:33:04 +00:00
Jens Ayton
93374ac533 Resurrected homebrew XML parser (now in OOPListParsing.m rather than ResourceManager.m).
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@863 127b21dd-08f5-0310-b4b7-95ae10353056
2007-03-21 11:40:43 +00:00