Jens Ayton
03f321da01
Font encodings now specified as descriptive strings. After much fiddling to get fonttexgen to use a PDF for the custom symbols, gave up and generated a big bitmap instead. Generated 1024x1024 Cyrillic font texture, other encodings coming soon.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1358 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-10 17:48:08 +00:00
Jens Ayton
77cde62c7b
Made commodity display names localizable via descriptions.plist. Probably missed some cases.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1356 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-09 17:16:43 +00:00
Jens Ayton
bf6826ce39
Patches from Kaks: support for 'abs' co-ordinate system, and auto_ai support for escort set-up.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1353 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-07 19:51:00 +00:00
Jens Ayton
cba45c8e05
Broke music control out into a separate controller in preparation for JavaScript music interface. As a side effect, mission music should work on SDL builds, and the theme music should loop. I hope. To do: add music Off/On/iTunes control to config menu.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1343 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-03 15:44:24 +00:00
Jens Ayton
907340dfc8
Fix for missionScreenEnded not being called when launching during a mission screen.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1339 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-03 00:27:44 +00:00
Nikos Barkas
d6be045ba9
Corrected a small parse error in oolite-font.plist that was preventing the white star character from appearing on the GNUstep builds (thanks Ahruman).
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1338 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-02 10:58:00 +00:00
Nikos Barkas
8a388b2b6a
Escorts are now working again, hopefully without side effects. Replaced acute accent with apostrophe in the main digrams string in descriptions.plist, because it was causing invalid planet names generation.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1336 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-02 09:25:16 +00:00
Jens Ayton
d3db589df3
Added 'don't use runLegacyScriptActions()'.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1335 127b21dd-08f5-0310-b4b7-95ae10353056
2008-02-01 18:27:54 +00:00
Jens Ayton
07fc2a25b6
Fixed some bugs in OXP verifier.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1325 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-28 01:24:40 +00:00
Jens Ayton
c812e61ad9
More data-driven text rendering with eight-bit encoding support.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1323 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-27 23:37:56 +00:00
Nikos Barkas
40007231b6
Fixed a problem where a ship having a script pre-assigned would not get its scriptactions set. Ships getting destroyed now can respond to whom and why queries for shipDied. Removed hardcoded text from trumbles script. Fixed a typo in descriptions.plist.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1318 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-21 07:29:31 +00:00
Nikos Barkas
c47f8db6aa
Fixed a small problem with the shader effects option being displayed incorrectly. Some more strings externalized.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1316 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-19 10:57:41 +00:00
Nikos Barkas
e7f0b0e316
Made the Y/N response on the intro1 screen user settable. Also fixed a problem with descriptions.plist that was generating incorrect planet descriptions.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1315 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-18 07:16:19 +00:00
Nikos Barkas
049a9ab4eb
A few more hardcoded strings externalized.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1314 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-17 17:32:46 +00:00
Nikos Barkas
7b68d32e5f
Fixed a bug in the contracts screen, where premium and fee for passengers would be displayed incorrectly, as a result of attempting to display unsigned long longs as ints.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1313 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-17 16:45:32 +00:00
Nikos Barkas
869baca25a
Made arrays mergeable like dictionaries, thus enabling for example OXP created equipment to override the standard one instead of being added on top of it. More internationalization farming outto shipdata.plist. By now, all (or almost all) game strings should have been externalized.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1312 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-16 08:27:38 +00:00
Nikos Barkas
295fa03c8e
Even more game strings moved to descriptions.plist for the purposes of making Oolite multi-language capable.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1310 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-14 18:35:12 +00:00
Nikos Barkas
0bce1be2ed
More game strings moved out to descriptions.plist. Also added the commsMessageByUnpiloted method, but its code is disabled until approved for inclusion.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1309 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-14 07:18:46 +00:00
Nikos Barkas
00da1bed7e
Farmed out all displayable constant game strings to descriptions.plist, as a first step in adding full multilingual support to Oolite. Testing required.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1308 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-13 14:24:10 +00:00
Jens Ayton
804b2fea93
Fix for Asps not having lasers when bought. Subentities no longer count as kills (trunk only).
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1305 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-09 01:11:38 +00:00
Jens Ayton
2a2e31de07
More copyright strings.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1295 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-02 14:38:49 +00:00
Nikos Barkas
d9e11be684
Tweaked missile accuracy so that it is handled in a saner way than before. Valid values for accuracy of missiles are now from 0.0 to 10.0, as one would expect and m.a. is clamped to this range at entity initialization. Also updated the date strings appearing in the game to reflect new year change.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1292 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-02 06:25:41 +00:00
Nikos Barkas
d6fcfe75d4
Missiles now use the accuracy variable to determine how well to track targets. Accuracy must be more than 1.0 and less than or equal to 10.0, otherwise it is ignored. Made the required Advanced Nav Array tech level equal to 7, as it was meant to be.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1291 127b21dd-08f5-0310-b4b7-95ae10353056
2008-01-01 15:38:28 +00:00
Jens Ayton
4919cb197e
Changed OOCreditsQuantity to uint64_t.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1274 127b21dd-08f5-0310-b4b7-95ae10353056
2007-12-13 11:53:25 +00:00
Jens Ayton
856409ed46
Added ability to explicitly bind shaders to subentity rather than root entity (backported to 1.70-m). Added support for hull heat glow to default shader (full shader mode only). Added Eric Walch's list of pre-existing roles to pirate-victim-roles.plist.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1265 127b21dd-08f5-0310-b4b7-95ae10353056
2007-12-05 14:32:56 +00:00
Jens Ayton
a877783cea
Bumped versions for trunk and 1.70-maintenance to 1.71 and 1.70.1 respectively to help avoid confusing them.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1259 127b21dd-08f5-0310-b4b7-95ae10353056
2007-12-03 18:05:21 +00:00
Jens Ayton
4546eb0baa
Fix for OXP verifier turning of log message classes. Exterminated all uses of NSLog that turn up in Mac builds.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1257 127b21dd-08f5-0310-b4b7-95ae10353056
2007-12-03 17:53:37 +00:00
Jens Ayton
df05fbd65f
Updated version numbers.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1250 127b21dd-08f5-0310-b4b7-95ae10353056
2007-12-02 20:43:08 +00:00
Jens Ayton
56eb8f1738
Renamed a bunch of script handlers and gave NPC scripts some events that only player scripts got before. Added compatibility mechanism to point out uses of old handlers.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1247 127b21dd-08f5-0310-b4b7-95ae10353056
2007-12-02 00:50:06 +00:00
Nikos Barkas
665bba439c
Fixed a problem in shipdata.plist, whereby the GNUstep parser was getting confused due to nested comment.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1245 127b21dd-08f5-0310-b4b7-95ae10353056
2007-11-25 21:24:13 +00:00
Jens Ayton
280f4d7828
Fixed some warnings in Windows build; switched cloaking device pod to use JavaScript implementation now that its script_actions are no longer needed for testing; fiddled with OOCollectionExtractors for a tool I'm fiddling with.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1243 127b21dd-08f5-0310-b4b7-95ae10353056
2007-11-24 15:58:15 +00:00
Jens Ayton
3fbc24887d
* All ships now have a JavaScript script attached, allowing JS scripts to
...
add behaviours to any ship.
* Legacy script_actions, setup_actions, launch_actions and death_actions
handled through default JavaScript script.
* In order to implement the above, JS Ship now has a runLegacyScriptActions
method. This is not to be exposed as an "official" method, though, since
we might want to change the mechanism -- for instance, to "compile"
legacy scripts into JS. Handling dynamically-generated legacy scripts in
that case would be a significant complication.
* Updates for Mac OS X 10.5 "Leopard".
- Errors on reading/writing plist will not cause a crash if building
against the Leopard SDK. (I have no intention of requiring Leopard any
time soon, but future-proofing is good.)
- OOWeakReference is now more efficient when running under Leopard, by
implementing the new "fast forwarding" mechanism.
- Threads now have names set under Leopard, which may provide debugging
advantages.
- Fixed some new build warnings for new version of apple-gcc.
- Updated type declarations to identify Oolite saved games as property
lists.
* Cleaned up PlayerEntityControls.m somewhat. Moved method declarations
into files, fixed indentation, broke up monster giant method of doom.
* Script-generated asteroids now behave like system populator-generated
asteroids (As Seen on BB[TM]).
* Minor optimizations and simplifications of legacy script engine.
* JS System.filteredEntities() now has sensible behaviour if predicate
throws an exception: the predicate is not called again, and null is
returned. The exception is reported and not rethrown.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1240 127b21dd-08f5-0310-b4b7-95ae10353056
2007-11-23 15:04:14 +00:00
Jens Ayton
4a776c4193
Implemented recursion limiter in AI method reactToMessage: in response to SCR crash report.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1236 127b21dd-08f5-0310-b4b7-95ae10353056
2007-11-19 18:34:28 +00:00
Nikos Barkas
39f1fd30fb
Bypass two harmless, log cluttering OpenGL error reports, at the same time gaining on performance, by setting rendering.opengl.error to no in logcontrol.plist.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1235 127b21dd-08f5-0310-b4b7-95ae10353056
2007-11-17 21:34:05 +00:00
Jens Ayton
44fd79dc64
Cache synthesized material dictionaries. Added sendScriptMessage: AI method.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1231 127b21dd-08f5-0310-b4b7-95ae10353056
2007-10-23 07:36:58 +00:00
Jens Ayton
9d9128bcb1
* Got Game Options submenu working under OS X.
...
* Save reduced detail, wireframe and shader settings in preferences.
* Implemented variable shader complexity support.
Added default shader, used for all otherwise-unshaded ships with full shaders on, and for smooth ships or ships with effect maps specified in material dictionary with simple shaders.
* All ships now drawn with slight specular highlight by default (shininess = 10, intensity = 0.2) except in reduced detail mode.
* (JS) Made Ship.shipDescription read-write (except for the player).
* (JS) Added global function ExpandDescription(string : String), to perform substitutions like %H, [commander_name] and so forth.
* (JS) Added global function RandomName(), intended to be like %R substitution. In so doing, I discovered that %R is broken, but left it as-is so it will generate the same name for existing descriptions. Added %X to do the same thing, but without the bugs. RandomName() is different from either in that it doesn't use the "predictable" PRNG, so it will provide a new name each time. To use the "predictable" variant in JavaScript, use ExpandDescription("%X").
* Ships that hyperspace out are no longer replenished in interstellar space.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1228 127b21dd-08f5-0310-b4b7-95ae10353056
2007-10-22 12:18:18 +00:00
Jens Ayton
3781f83407
Added Eric Walch's suggested AI fixes (bug #12161 ). Added contributors.txt.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1213 127b21dd-08f5-0310-b4b7-95ae10353056
2007-10-13 19:24:06 +00:00
Jens Ayton
18d59be255
Fix to dockingAI.plist submitted by Eric Walch.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1209 127b21dd-08f5-0310-b4b7-95ae10353056
2007-10-10 21:59:36 +00:00
Jens Ayton
9c2f6c8ea4
Implemented portableish TCP-based JavaScript debug console. Some rearranging needed for it to be actually usable (I'll get on it tomorrow). Cleaned up Trumbles script.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1189 127b21dd-08f5-0310-b4b7-95ae10353056
2007-10-03 22:54:57 +00:00
Jens Ayton
ed757081ba
Added missing file. Removed some commented out junk code. Fixed invalid XML comment.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1188 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-30 10:21:49 +00:00
Jens Ayton
3c16a7cdaf
Added clearMissionScreen scripting method (legacy and JS). Scripting tweaks. Ported trumble mission to JavaScript. Attempted to address JS Ship.escorts bug but couldn't reproduce it.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1187 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-29 12:27:31 +00:00
Jens Ayton
ff941ad9ff
More explicit message about the need to set JS_C_STRINGS_ARE_UTF8. Explicitly set scanClass of 'barrel' to CLASS_CARGO for scripted creation.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1186 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-29 09:08:31 +00:00
Jens Ayton
8b098b3b76
Implemented Player.commsMessage() and player.consoleMessage() JS methods. Mucked about with key_dump_target_state -- now debug/test build only.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1183 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-23 14:32:40 +00:00
Jens Ayton
0da77044e5
Implemented JS Timer object. Updated priority queue test case.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1173 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-15 13:53:30 +00:00
Jens Ayton
77df587d1a
Split out remaining JS classes from OOJavaScriptEngine.* into new files. Added expandable pirate-victim recognition via pirate-victim-roles.plist. Added a number of AI methods for searching for entities by role and scan class.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1169 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-12 17:00:59 +00:00
Jens Ayton
a265c06344
* Work on generic-ish JavaScript object bridging.
...
* Fixed potential crashing bug in JS memory management (OOJSScript was not releasing its JS GC root).
* Fixed bug with several shipdata.plist settings being ignored in StationEntitys (bug #11684 ).
* Added JS Oolite object for app and JS version number checking; may add other facilities.
* Require latest version of SpiderMonkey (Gecko 1.8/FireFox 2 version) with JavaScript 1.7 support, built with JS_C_STRINGS_ARE_UTF8.
*Made SpiderMonkey build as a subproject in Xcode for ease of debugging.
* Further fiddling with Mac debug console.
* Added has_npc_traffic attribute to StationEntity.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1157 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-04 23:04:09 +00:00
Jens Ayton
09ae998842
Converted shipdata.plist to OpenStep format and merged in Commander McLane's tweaks to views, external views and laser positions.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1156 127b21dd-08f5-0310-b4b7-95ae10353056
2007-09-02 18:45:44 +00:00
Jens Ayton
0ffb248771
For the past two weeks I've been procrastinating from fixing a double-free bug in the JS accessor for Ship.escorts (or, more precisely, in the code constructing a JS array). The bug was in r1129, so not checking stuff in doesn't really make much sense.
...
Fixes in that time:
* Clean, integrated model for JS ship scripts and world scripts.
* Player ships support JS ship scripts (but not ones synthesized from legacy actions).
* Subentity shader uniform bindings bind to owning ship as intended.
* Fixed like_ship recursion limiter in -[Universe getDictionaryForShip:].
* Fixed a bug in material configuration parsing.
* Fixed a material bug where a shader material with textures, followed by a shader material with no textures, followed by a basic material with no textures would leave a texture bound.
* Cleaned up NSArray -> JS array conversion, without fixing aforementioned bug.
* Made JS Ship property "target" read/write, and made property setting work.
* Added JS Quaternion.random() static method.
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1136 127b21dd-08f5-0310-b4b7-95ae10353056
2007-08-19 23:05:48 +00:00
Jens Ayton
892c271501
Split JS system into separate file. Started on support for ship scripts (incomplete).
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1129 127b21dd-08f5-0310-b4b7-95ae10353056
2007-08-05 11:47:09 +00:00
Jens Ayton
31744b7903
Fix for legacy script engine local variables in set: and [] substitution. Unbroke equipment.plist.
...
git-svn-id: http://svn.berlios.de/svnroot/repos/oolite-linux/trunk@1122 127b21dd-08f5-0310-b4b7-95ae10353056
2007-08-03 14:53:02 +00:00