Commit Graph

5833 Commits (73b52a15ced23c28b1f2a5a547a401441f43310e)

Author SHA1 Message Date
Maikel de Vries 7a8032e96d add defense enemy control object 2017-01-15 15:38:32 +01:00
Maikel de Vries 1063610369 add defense goal
This is the goal in defense scenarios and controls the waves. In the future a league interface can also be build. The goal is to adapt the existing defense scenarios to this format (mostly internal changes and infinite waves). Also this should allow for easier creation of defense scenarios.
2017-01-15 15:38:32 +01:00
Maikel de Vries 5e6cf4e7b8 show goal name in goal menu 2017-01-15 15:38:32 +01:00
Mark 6b0d0e1c60 IronPeak: Fix function access during intro 2017-01-13 05:50:06 +01:00
Mark 38648dedcc UseControl: #1873 Prevent use while a menu is opened.
Using objects was blocked by the GUI menus and the ObjectControl() function anyway, but (!) it was not blocked for the old style menus that can still be used.
2017-01-13 00:05:35 +01:00
Mark 92e53fe09f UseControl: Merge the two if-blocks that share the same condition 2017-01-12 23:58:38 +01:00
Lukas Werling 6c7d8b7bbb Clarify discovery error message 2017-01-09 20:35:04 +01:00
Nicolas Hake 102047f537 Implement IPv6 support to C4NetIO 2017-01-09 20:34:43 +01:00
Martin Strohmeier 0fd9d1f40b Updated descriptions for scenario: I am rich 2017-01-07 18:40:28 +01:00
Martin Strohmeier daf23b9b32 New scenario: I am rich 2017-01-07 18:19:52 +01:00
Maikel de Vries e6819bf020 use no friendly fire rule in defense scenarios 2017-01-07 17:13:46 +01:00
Maikel de Vries 918e5ded0d add rule to prevent friendly fire 2017-01-07 15:39:34 +01:00
Maikel de Vries 220d427915 silence warning for chippie inherited death calls 2017-01-07 07:52:25 +01:00
Mark 8aa442cb2c Defense: Fix typo 2017-01-07 02:22:37 +01:00
Mark 4b33beb9db MoltenMonarch: Clean code
The king size weapons overloaded entire functions from their original objects. This was replaced by adding interfaces that allow for the manipulation of the desired values.
2017-01-07 02:21:22 +01:00
Mark db9451dcce MoltenMonarch: Fix musket/blunderbuss 2017-01-07 02:10:00 +01:00
Mark dfc4483ae9 Hideout: Fix typos 2017-01-07 01:35:08 +01:00
Mark 80b3ceb560 Hideout: Make code more readable
Avoiding duplicate code.
2017-01-07 01:33:46 +01:00
Mark df031f600e Hideout: Fix warnings (shadowing local variable e), clean code 2017-01-07 01:09:55 +01:00
Mark 172613e0c9 Clonk Control / Ladder: Add possibility of triggering a jump with ydir
This was part of a bugfix in the ladder for Hazard: The ladder lets the Clonk execute a jump with Clonk.JumpSpeed / 2 at the top. This is useful for extra jumps and other things where you want to force the clonk to jump.

Regarding the ladder: The most of the problems with ladders arise from the OC implementation. Further commits may follow.
2017-01-06 21:58:13 +01:00
Mark 2168a6948a Base Material: Remove more duplicate code 2017-01-06 15:38:16 +01:00
Mark 879f21acaf Base Material: Add brackets. 2017-01-06 15:34:25 +01:00
Mark 65850d4015 Base Material: Extracted function for accessing the player's base material
Reduces duplicate code.
2017-01-06 15:27:11 +01:00
Mark 32245bfb20 Base Material: Rename 'def' to 'material' 2017-01-06 15:19:15 +01:00
Mark 2b5a2740b4 Base Material: Rename 'cnt' to 'amount' 2017-01-06 15:18:11 +01:00
Mark 548d2a7b13 Base Material: Rename 'plr' to 'player' 2017-01-06 15:16:02 +01:00
Maikel de Vries 1d211c9466 fix burning and destruction of vines 2017-01-05 21:06:17 +01:00
Maikel de Vries 948ef66723 fix AI scaling on ladders 2017-01-05 21:05:28 +01:00
Maikel de Vries 1ad0cb7cab remove unused object bigboomattack 2017-01-05 13:47:33 +01:00
Clonkonaut dad7156f6a Airplane now has just one fire button (Mouse Left / CON_Use), Mouse Right (CON_UseAlt) instead cycles through the firing modes.
As suggested by Maikel (http://forum.openclonk.org/topic_show.pl?pid=32751#pid32751).
2017-01-05 01:18:34 +01:00
Clonkonaut e4cfd39fdc Let plants grow less crowded, especially different kinds of plants (#1607).
This will need some testing whether all scenarios are still playable.
2017-01-04 03:33:28 +01:00
Clonkonaut 3fe83986ce Crash: made airplane invincible (#1754). 2017-01-03 23:03:51 +01:00
Clonkonaut fc9a25d215 Fixed fuse positioning when creating a new one.
Fuses were created at 0,0 and everything looked ugly!
2017-01-03 22:45:20 +01:00
Clonkonaut b7771d6906 Krakatoa: fix goal icon. 2017-01-03 22:35:24 +01:00
Clonkonaut 92f5eda3e9 Locomotive: fixed goal icon. 2017-01-03 22:33:45 +01:00
Clonkonaut a8d0f8f75e Chine: fix goal icon. 2017-01-03 22:30:33 +01:00
Clonkonaut d901a8952a Acid Rift: fixed superfluous declaration of global vars. 2017-01-03 22:25:50 +01:00
Clonkonaut 0eed215bbd Clonkomotive: fixed (deprecated) implicit declaration of for loop var. 2017-01-03 22:11:00 +01:00
Clonkonaut 06151bc5e5 Clonkomotive: fixed superfluous declaration of global vars. 2017-01-03 22:09:52 +01:00
Clonkonaut c423ec5de2 Made airplane touchable (#1663).
Made it untouchable in all missions.
2017-01-03 22:04:48 +01:00
Maikel de Vries 2ac4f2aa97 move windmill defense sounds to general folder
So that other rounds can use them as well.
2017-01-03 18:16:32 +01:00
Mark 83486fceb8 Control: Format scripts 2017-01-03 18:04:10 +01:00
Mark fa28a7a643 Control: Extract library for using menus
External packs use this functionality without using the whole default Clonk control.
2017-01-03 18:03:49 +01:00
Mark 39c54c323c Control: Extract library for using objects
External packs use this functionality without using the whole default Clonk control.
2017-01-03 18:03:32 +01:00
Maikel de Vries 577da1566a fix defense home base menu buy icon 2017-01-03 17:56:03 +01:00
Maikel de Vries 422207b54d add icons for buying and selling 2017-01-03 17:56:03 +01:00
Clonkonaut e6af3d216a Treasure Hunt: fixed superfluous declaration of global vars. 2017-01-03 16:50:13 +01:00
Clonkonaut b984704812 Raid: fixed superfluous declaration of global vars. 2017-01-03 16:38:47 +01:00
Clonkonaut 1fb8e4f757 Deep Sea Mining: Fixed crystal communicator graphics position. 2017-01-03 16:29:22 +01:00
Clonkonaut e2b238c381 Deap Sea Mining: fixed superfluous declaration of global vars. 2017-01-03 15:56:20 +01:00
Clonkonaut 7ec3f90127 Dark Castle: fixed airplane health hack to correct property name. 2017-01-03 15:49:52 +01:00
Clonkonaut 99d4fcb5ba Dark Castle: fixed superfluous declaration of global vars. 2017-01-03 15:48:39 +01:00
Clonkonaut 4fce224238 Crash: adjusted merchant dialogue to new flag behaviour. 2017-01-03 03:56:52 +01:00
Clonkonaut 145be7d097 Mt Brame: fixed goal icon. 2017-01-03 03:41:05 +01:00
Clonkonaut 7be2bd33fa Moved airplane smoke a bit out of the way and made less prominent, added water stirring effect when flying low! 2017-01-03 01:55:18 +01:00
Maikel de Vries efed830df3 fix liquid container accepting materials and show them in interaction menu 2017-01-02 18:33:14 +01:00
Maikel de Vries 8fa5de35a9 fix airplane parachute mode 2017-01-02 18:29:23 +01:00
Maikel de Vries c5590d851a add liquid test which causes an error on material change 2017-01-02 09:17:54 +01:00
Clonkonaut c11ca2f3c6 Airplane: added a bunch of firing modes (switchable via the interaction menu):
Of course, kept the old two modes: bullet and rocket (boompack) firing.
Bomb dropping for dropping fused iron bombs and dynamite sticks.
Liquid spray for spraying the landscape with whatever you like (of course, with water you get a firefighting plane!).
Balloon parachuting for midair action drops!
Object dropping - drop whatever you want!
2017-01-02 01:52:08 +01:00
Sven Eberhardt 8cd2432c58 Allow non-editor collection of objects by dialogue helper object
Also revert Clonkonaut's crash landing into hotfix
2017-01-01 17:00:57 -05:00
Sven Eberhardt e015cdef8d Add basement width editor property 2017-01-01 12:46:23 -05:00
Sven Eberhardt dc9b948590 Editor: Add blit mode editor prop 2017-01-01 12:26:02 -05:00
Sven Eberhardt 52d0525886 Editor: Show proper name for default (nil) visibility property 2017-01-01 11:32:23 -05:00
Sven Eberhardt a23e4f2707 Dynamite box fixes and improvements
* Correctly save in scenario: Dynamite count and fuses
* Allow recollection and placement of dynamite sticks
* Allow recollection of dynamite sticks into the box, in which case fuses are automatically cut
* Implement with less duplicate state (removed count, wire, wires and dynamite_sticks variables)

This also allows placement of more than five dynamite sticks from a single box by collecting more sticks after some of them are already on the wire. I don't see why not; it's fun and cannot really be abused.
2016-12-31 22:54:43 -05:00
Clonkonaut 8f972fd4b7 Airplane: float, to make it land on water (#1097). 2016-12-30 03:55:31 +01:00
Clonkonaut 71d5e611a4 Airplane: carry up to 20 items and 3 clonks (#1663). Also refactoring of the script. 2016-12-30 03:54:01 +01:00
Maikel de Vries 6fe22afe1a fix script runtime error in pump 2016-12-29 18:57:33 +01:00
Maikel de Vries 9b133030dc destruct airplane when crashing with low hit points
TODO: needs visual feedback when low on hitpoints.
2016-12-28 22:18:52 +01:00
Martin Strohmeier c4ed3b56f4 Merge branch 'master' of git://git.openclonk.org/openclonk 2016-12-28 18:20:55 +01:00
Maikel de Vries 59961f3a17 remove base library
* remove library itself
* remove GetBase()
* change flagpole, etc.
* move basematerial library to vendor
2016-12-28 18:19:10 +01:00
Martin Strohmeier ded408701b Add Cavern.ogg to Music.ocg (Underground Music) 2016-12-28 18:18:46 +01:00
Clonkonaut 7968372dfa Crash: minor fixes:
g_has_bought_plans was defined multiple times, the wooden cabin will be created 2 pixels lower to stop it from jittering.
2016-12-28 14:29:21 +01:00
Clonkonaut b2d112b332 Crash: weird fix for the intro (see forum for details). 2016-12-28 14:29:21 +01:00
Sven Eberhardt 8ae8dd9c44 Add user action: Set player view 2016-12-28 08:54:01 -04:00
Sven Eberhardt f2e8bc5814 Fix basement width scenario saving 2016-12-28 08:53:59 -04:00
Sven Eberhardt ad2a0a8955 Save scenario: Ignore objects contained in ignored objects
E.g. do not save tools carried by crew.
2016-12-28 08:53:58 -04:00
Sven Eberhardt b0429bdbcd Add earthquake user action 2016-12-28 08:53:57 -04:00
Sven Eberhardt bdb3118309 Add missing inherited calls to structure Definiton calls 2016-12-28 08:53:55 -04:00
Sven Eberhardt 16988e76f0 Add "flip" EditorAction to structures 2016-12-28 08:50:19 -04:00
Sven Eberhardt eee156b5ac Add sequence user action to trigger other sequences 2016-12-28 08:50:18 -04:00
Sven Eberhardt 93109e60f5 Fix solid check position for earthquakes launched from local calls
The effect is created in global coordinates, but the SemiSolidCheck was done in local coordinates.
2016-12-28 08:50:17 -04:00
Clonkonaut 308fc37e47 Remove extinguished flames. 2016-12-27 22:51:44 +01:00
Maikel de Vries ee2f82860c put pipe at structure bottom when cutting it 2016-12-26 20:30:29 +01:00
Maikel de Vries 2392f85358 fix another c4script error when updating power network 2016-12-26 17:55:45 +01:00
Maikel de Vries aeddfd1b03 prevent bullet pack from sliding due to zero friction 2016-12-26 17:55:45 +01:00
Maikel de Vries a422c6d6ec power storage: save stored power and make editor property 2016-12-26 17:55:45 +01:00
Maikel de Vries 84d621fc5a fix script runtime error when updating power networks 2016-12-26 17:55:45 +01:00
Mark bace3b7d2b #1710: Remove logs for debugging 2016-12-25 19:21:16 +01:00
Mark 45f98ce03a #1710: Fix the bug
The problem was that the call to Actmap.*.StartCallLadderOverloaded happend parallely with the ladder search effect and finished after the search effect call was finished, starting a wall jump animation after the Clonk grabbed the ladder.
2016-12-25 19:21:08 +01:00
Mark 17d6bb0e1b #1710: Logs for debugging 2016-12-25 19:21:01 +01:00
Maikel de Vries 7f1b6ac19b pumping air: fixed power need and high consumer priority 2016-12-25 19:07:26 +01:00
Maikel de Vries 525caa069a properly implement air pumping: no source needed, only pump on air need 2016-12-25 18:53:43 +01:00
Maikel de Vries 42c8dbc2c8 make producer continue directly after production finishes 2016-12-25 17:48:07 +01:00
Maikel de Vries 135a7d8aff fix support for multiple liquids in liquid containers 2016-12-25 12:48:15 +01:00
Maikel de Vries 0d0a61d4b0 change concrete production time to enable continuous pumping 2016-12-24 15:30:20 +01:00
Maikel de Vries b9aaa2fda4 pump: implement gui interface for selecting materials to pump 2016-12-24 15:12:14 +01:00
Maikel de Vries ae40126dbb implement pumping specific liquids only 2016-12-24 14:09:47 +01:00
Maikel de Vries d03ac67807 snow is not a liquid
We can make it a liquid if we want it to be used in the foundry, or adapt the foundry. But that should be done properly.
2016-12-24 14:09:47 +01:00
Maikel de Vries 203e8b8d1d add a test scenario for liquid systems 2016-12-24 14:09:47 +01:00
Maikel de Vries aa7eb1210e fix an error when deleting a pipe when the end is contained 2016-12-24 14:09:47 +01:00
Maikel de Vries c7afed1aeb allow pumping liquids from container (foundry and steam engine) 2016-12-24 14:09:47 +01:00
Maikel de Vries 3aaf216582 tutorials: don't show tutorial helper objects in editor 2016-12-21 14:12:01 +01:00
Maikel de Vries 478265fe96 explain clicking on goal icon in tutorials (#1683) 2016-12-21 14:12:01 +01:00
Lukas Werling f9305a1526 Editor: Fix crash when trying to save scenario into itself 2016-12-19 23:14:49 +01:00
Maikel de Vries caef28c7f6 add concrete object (#1572)
This still needs some work to fully function with pumps and pipes.
2016-12-19 21:09:22 +01:00
Maikel de Vries 7715d961f5 add information about whether power storages are being filled to the power display 2016-12-18 12:20:36 +01:00
Maikel de Vries 95e520a941 initialize power library local vars in construction callback (#1868) 2016-12-18 11:08:51 +01:00
Clonkonaut afc565a419 Re-enabled automatic bucket emptying (#1867). 2016-12-18 00:50:35 +01:00
Maikel de Vries 60dfc86c55 fix power system test 22 2016-12-17 17:37:26 +01:00
Maikel de Vries 975269655f pipe: fix scenario saving 2016-12-17 17:34:39 +01:00
Maikel de Vries 5846d33692 add another test with pumps to the power system tests 2016-12-17 17:30:18 +01:00
Maikel de Vries 32dc9e3133 pump: fix InsertMaterialAtDrain taking into account if pixels have been inserted 2016-12-17 17:29:28 +01:00
Maikel de Vries 2b610ecb1d pipe: improve speed of GetConnectedLine
This leads to a factor 3 speed up for the pump.
2016-12-17 17:27:48 +01:00
Maikel de Vries 667b13c098 remove LifeCheck effects from progress bars
This check is done by the attachment action already and led to the creation of many useless effects.
2016-12-17 17:26:11 +01:00
Maikel de Vries 309b24c6fe fix deprecated implicit declaration in for loop for tutorial arrow 2016-12-16 21:39:37 +01:00
Maikel de Vries 7ef0fc5568 don't let producers empty extra slots (#1864) 2016-12-16 21:37:47 +01:00
Maikel de Vries d47c5eba2f fix construction goal (#1866) 2016-12-16 21:02:45 +01:00
Mark 46450a689f Fix additional UTF-8 warnings 2016-12-16 10:26:56 +01:00
Lukas Werling 68ddeb3bed Convert all text files in planet to UTF-8 2016-12-11 21:19:13 +01:00
Maikel de Vries 1d258d3d48 fix (#1846) for real now 2016-12-01 23:02:43 +01:00
Maikel de Vries 7552fd94f7 fix ownership changes of moving flags (#1846) 2016-11-28 00:53:48 +01:00
Mark d356d9db3d Fix inherited() calls
The ... operator should be added so that the parameters are passed down. In some cases even the named parameters were not passed down.
2016-11-26 18:57:31 +01:00
Mark 94ec4e336b Fix inherited(...) calls
The named parameters have to be handed down, because the ... operator only passes all the unnamed parameters.
2016-11-26 17:56:41 +01:00
Mark 5fc6ae05f8 HUD Modularity: Move library as suggested by Clonkonaut 2016-11-26 11:12:09 +01:00
Mark 202e1ed682 HUD modularity: Callback for controller ID
I think that the call GUI_Controller->GetControllerID() has more appeal, but it makes the code confusing maybe.
2016-11-26 11:10:35 +01:00
Mark b557719287 HUD modularity: Library for HUD controller
Extracted the basic functionality for HUDs from GUI_Controller to a library. This way, if you want to create a new HUD, you only have to include the library and all the desired components. Previously you had to copy the script from GUI_Controller, too. This holds of course only if you want to actually remove components from the HUD, and not just add to it.

Currently the GUI_Controller is referenced as the ID for the HUD, will change this to a callback.
2016-11-26 11:10:29 +01:00
Sven Eberhardt 551d9968f5 UserAction: Fix default value assignment on "Any" evaluators 2016-11-23 23:34:04 -05:00
Sven Eberhardt b12421bff8 Add inscription EditorProp to guidepost2 2016-11-22 23:25:27 -05:00
Sven Eberhardt 1cde52e060 Editor: Add "Export packed" file menu item 2016-11-20 22:43:44 -05:00
Sven Eberhardt 290d606bc5 Fix boiling liquid visibility, saving and activity in cave maps 2016-11-20 21:52:33 -05:00
Sven Eberhardt a5de44b4e9 Add UserAction: Set shader 2016-11-20 13:43:46 -05:00
Sven Eberhardt 04b5f82080 Editor: Add "open in network" to file menu and to new scenario dialogue 2016-11-20 13:24:09 -05:00
Sven Eberhardt 4b508134f8 Add clonk EditorAction: Turn around 2016-11-20 13:15:03 -05:00
Sven Eberhardt 27291ec977 Automatically move dropped items from dialogue to dialogue target
Because it happens easily when editing.
2016-11-20 13:15:02 -05:00
Sven Eberhardt 615e08a137 UserAction evaluator: Object alive 2016-11-20 13:15:02 -05:00
Sven Eberhardt fb400456ce Add MovingBrick editorprops and graph movement 2016-11-20 13:15:01 -05:00
Sven Eberhardt 4a31ce0fd8 Add editor prop for neutral flagpoles 2016-11-20 13:14:59 -05:00
Sven Eberhardt 8ac9a1e2bf Add Rule_BaseRespawn editor props 2016-11-20 13:14:58 -05:00
Sven Eberhardt bcf782a5a8 Improve diamond+socket scenario saving and editor visibility 2016-11-20 13:14:57 -05:00
Mark f2870dfa16 Object.c: New functions
Needed AddSpeed() in a project and thought that it would be a good addition. AddVelocity() is not used so far, maybe we should remove it again.
2016-11-19 19:05:27 +01:00
Fulgen301 399a619e4c Aerobatics: German translation added. 2016-11-13 21:57:16 +01:00
Maikel de Vries bfc830a103 fix wrongly turned catapult (#1838) 2016-11-11 20:10:12 +01:00
Fulgen301 fb882d693e Ropebridge: German translation added. 2016-11-11 18:43:35 +01:00
Fulgen301 db61e047ee Tutorial 06: German translation added. 2016-11-11 18:43:35 +01:00
Fulgen301 863213fe76 Rapid Refining: German translation added. 2016-11-11 18:34:35 +01:00
David Dormagen 83435a89fa Fixed typo in German localization (#1848) 2016-11-11 18:20:59 +01:00
David Dormagen ae2000f0a1 Contents menu: sort extra-slot containers to front to make items jump around less
With the highest items being in the front, the tight grid layout has less reason to resort a major amount of the items every time items are added or removed. This results in a generally more stable layout.
2016-11-07 20:09:37 +01:00
David Dormagen 12e808263b Contents menu: use tight grid layout (#1842)
This makes extra-slot containers not block an extra row anymore. However, they might jump around a bit. It might be a good idea to set their priority lower to make them always appear first.
When they would be in front, the tight grid layout would likely not move them around.
2016-11-05 15:35:15 +01:00
David Dormagen 8a8593e0ba Script GUI: added TightGridLayout style (requirement of #1842)
The TightGridLayout fills spaces more aggressively. This is slower but makes for a tighter layout. Finding the best layout is NP-complete. This here is just O(N^2) or so.
2016-11-05 15:35:15 +01:00
Sven Eberhardt 02dffb8af1 Allow rotation of guideposts 2016-10-31 10:10:29 -04:00
Sven Eberhardt 8e281103b0 Improve guidepost editor placement and rotation
* Shows correct size in preview (by setting the scaling on the definition instead of in Construction)
* Can be oversized
* Avoid angles where all signs are facing parallel to the camera
* Unfortunately, rotation doesn't work well with Mesh Transform (uses the wrong rotation center for the graphics)
2016-10-31 00:34:48 -04:00
Sven Eberhardt aed3f92982 Fix dialogue sequence assignment
It used to be set by reference instead of copying, which means all dialogues created in a single session would reference the same sequence.
2016-10-30 21:56:08 -04:00
Sven Eberhardt d048ca01dc Fix resource goal scenario saving 2016-10-30 20:33:55 -04:00
Sven Eberhardt a07d26c839 Fix conditional UserAction in loops 2016-10-30 20:33:55 -04:00
Sven Eberhardt 3712c6ed2f Change MoveTo function signature in experimental CableLorry 2016-10-30 20:33:54 -04:00
Sven Eberhardt 2b6eb83e48 Fix some parameter count errors 2016-10-24 21:28:31 -04:00
Sven Eberhardt 591b20b6ca Fix some variable name shadowing errors 2016-10-24 21:21:55 -04:00
Sven Eberhardt 0d20551ab6 Fix some "function variable hides local variable" warnings 2016-10-24 21:05:17 -04:00
Sven Eberhardt 342916a1ed Fix some implicit for loop declaration errors 2016-10-24 21:02:02 -04:00
Sven Eberhardt 7f543e8390 Add AI control UserActions 2016-10-24 21:02:02 -04:00
Sven Eberhardt 2e73343814 EnemyAI: Add "active" setting
This allows disabled AI clonks (to be used by UserActions)
2016-10-24 21:02:01 -04:00
David Dormagen 83260c5e69 Key object: updated graphics
This one has a higher resolution and should also look decent when bigger (e.g. as an inventory picture). Made by me with Blender.
2016-10-24 18:12:45 +02:00
Sven Eberhardt 8fb8be9cec Sequence: Store trigger offset to allow non-synchronized triggers at the same interval 2016-10-23 00:20:26 -04:00
Sven Eberhardt a0580580aa Add rdir parameter to user action object creation 2016-10-16 21:47:20 -04:00
Maikel de Vries 0d6a8497fc allow setting the rotation of an created object in editor user actions 2016-10-16 19:59:54 +02:00
Maikel de Vries 9aaec9a009 add option to door to lock it with a given key 2016-10-16 18:47:45 +02:00
Maikel de Vries 5e7ce466e1 add key object
Can be used to open doors, etc. Editor interactions and stuff are still on the todo.
2016-10-16 18:47:45 +02:00
Maikel de Vries ff2c32b77e play keypad sounds only for operating player 2016-10-16 18:47:45 +02:00
Maikel de Vries e124433cd5 fix playing sound when trying to enter enemy door 2016-10-16 18:47:45 +02:00
Maikel de Vries b4cdeb3da4 base material & production: add fail safes and remove entries with zero material 2016-10-16 18:47:45 +02:00
Mark 44b2fda439 Cloud: Insert snow only if allowed to 2016-10-14 18:43:35 +02:00
Sven Eberhardt 15d850e4ec Editor: Add effects to property viewer 2016-10-14 10:50:17 -04:00
Maikel de Vries ce92a3cc16 add floor switch object to Decoration.ocd 2016-10-13 23:11:58 +02:00
Mark 0996c6e31e Cloud: Play sound at rain impact location
The cloud does this with a helper object.
2016-10-11 21:51:32 +02:00
Mark 7df951fb65 Cloud: Mode without material insertion
Added a mode where the cloud does not extract or insert any materials, so that the rain is just a decorative element of the game.
2016-10-11 21:19:21 +02:00
Sven Eberhardt 4eae2b28d7 Editor: Fix drop cursor drawing 2016-10-10 21:26:10 -04:00
Sven Eberhardt eee79366d0 Add tool tip to "test sequence" button 2016-10-10 16:45:24 -04:00
Sven Eberhardt 6e6f642be6 Add tool tip to dialogue editor action 2016-10-10 16:45:24 -04:00
Sven Eberhardt 244650bb17 Add base material to player spawn object.
Set the default to a lot of clonks. This is useful so the "respawn at flagpole" rule works as expected even if users don't know about the base material setting.
2016-10-09 13:27:20 -04:00
Sven Eberhardt b0e42e35d1 Sequence: Default action to empty sequence 2016-10-09 13:27:20 -04:00
Mark 2957a777b3 Goal: Extracted function NotifyPlayerHUD
Removed duplicate code in the process.
2016-10-09 11:53:25 +02:00
Mark 35e8a43f82 Goal: Optimize HUD updates
No more lacking behind the fulfillment status.
2016-10-09 11:50:06 +02:00
Mark 84dd95df34 Goal controller: Player parameters for goal display functions
Allows goals with different symbols per player.
2016-10-09 11:34:13 +02:00
Mark 9fcd3ee13e Goal controller: Extracted functions
Made the variable names consistent between GoalSubMenu() and OnGoalUpdate();
Extracted the functions GetGoalSymbol() and GetGoalGraphics();
2016-10-09 11:26:47 +02:00
Mark b18a7b7a3f Goal controller: Readability
The change in call structure should not make that much of a difference in performance.
2016-10-09 11:18:10 +02:00
Mark 0d22f58b52 Goal controller: Get short description only once. 2016-10-09 11:13:12 +02:00
Mark 0732b7dc87 Goal controller: Code cleanup 2016-10-09 11:11:51 +02:00
Mark b235c5e9e4 Goal controller: Simplified code 2016-10-09 11:11:28 +02:00
Mark f52159b835 Goal controller: Variable definitions 2016-10-09 10:58:37 +02:00
Mark be207737bc Goal controller: Slight optimization
No need to call the function twice. This is trivial though, the call is not expensive usually.
2016-10-09 10:51:48 +02:00
Sven Eberhardt c05ee7e644 Add gravestone inscription editor props 2016-10-08 23:29:50 -04:00
Mark 7c169c7905 Moved object interaction menu sidebar icons to separate overloadable functions 2016-10-08 17:46:39 +02:00
Maikel de Vries 2505dc77f1 add room door to Decoration.ocd
This is a door which leads to nowhere, but they can be connected via script or serve other purposes. Graphics by Apfelclonk.
2016-10-06 18:43:04 +02:00
Clonkonaut f37eda9508 Moved HUD proplist definitions to separate, overloadable functions.
See http://forum.openclonk.org/topic_show.pl?pid=32552#pid32552 for more information.
2016-10-06 01:47:45 +02:00
Lukas Werling ddb34ab5cb Disallow interaction with actively controlled Clonks
This prevents inventory stealing which is undesirable in cooperative
scenarios with competitive elements (e.g. some races) and confusing to
players.
2016-10-05 22:14:40 +02:00
Maikel de Vries 89be9bd158 implement scenario saving for liquid tank, pump & pipe 2016-10-03 18:07:49 +02:00
Sven Eberhardt 4756fb0ba1 Unify moving brick graphics size.
Otherwise, there were still graphics artifacts sometimes.
2016-10-03 00:02:46 -04:00
Sven Eberhardt 76ce8089af Fix display of moving bricks with size<4. 2016-10-02 23:47:02 -04:00
Sven Eberhardt d48dbfba82 Add optional size parameter to Particles_Flash 2016-10-02 23:47:01 -04:00
Maikel de Vries 1483620b2b fix c4script runtime error in power system when pump is initialized 2016-10-02 23:23:20 +02:00
Maikel de Vries 48d98d708e fix script error in keypad 2016-10-02 08:03:14 +02:00
Maikel de Vries b0ff00439f fix possible script error in pump 2016-10-01 19:18:23 +02:00
Maikel de Vries 2073fb0f0a improve picture graphics of animals 2016-10-01 16:32:29 +02:00
Maikel de Vries 1eb17613bc keypad: allow alternative graphics for its buttons 2016-10-01 16:32:29 +02:00
Maikel de Vries df43ab86f2 add IsAnimal to animals for finding them 2016-10-01 16:32:29 +02:00
Sven Eberhardt 9299ec4223 Fix max energy in AI test scenario 2016-10-01 10:26:43 -04:00
Sven Eberhardt b317afbadc Fix division by zero on progress bars with max=0 2016-10-01 10:26:25 -04:00
Sven Eberhardt d04476ad0b Allow oversize and rotation of fence 2016-09-30 22:23:11 -04:00
Sven Eberhardt 0604a815d0 Fix undefined constant in keypad 2016-09-30 21:40:57 -04:00
Maikel de Vries fa977149e9 make firefly use insect swarm library 2016-09-30 18:58:42 +02:00
Maikel de Vries b42a4b824b insect swarm: fix movement issues 2016-09-30 18:58:42 +02:00
Maikel de Vries 32f5b1cb25 add keypad to decoration objects
This can control lots of things and triggers on entering the correct code.
2016-09-26 17:15:37 +02:00
Lukas Werling 10622a9b61 Add generic A* implementation for path finding in graphs 2016-09-26 16:30:47 +02:00
Maikel de Vries 0e76c85531 make line overlap check a global function
This avoids code duplication and really is a Math.c function.
2016-09-24 17:30:19 +02:00
Maikel de Vries fb38acb946 allow setting plr view/zoom at player start object 2016-09-23 20:21:34 +02:00
Maikel de Vries 18424aaaa7 add rule to control pump speed 2016-09-23 09:26:06 +02:00
Maikel de Vries 4c7d27ec64 bats require less space on placement 2016-09-23 09:18:57 +02:00
Maikel de Vries 3df960851c _inherited() for trees to access library functionality 2016-09-20 15:11:32 +02:00
Maikel de Vries 823b13d764 add simple string to integer conversion function
Just a basic one in C4Script for now.
2016-09-18 11:30:35 +02:00
Lukas Werling db12ed7c99 Remove FindSubstring as it's really really slow
Use RegexSearch() instead, which is 100 times faster for large strings
(see benchmark results below).

Example benchmark:

    global func TestFindSubstring(int iterations)
    {
    	var result;
    	for (var i = 0; i < iterations; i++)
    	{
    		result = FindSubstring(hamlet, "and");
    	}
    	return result;
    }

    global func TestRegexSearch(int iterations)
    {
    	var result;
    	for (var i = 0; i < iterations; i++)
    	{
    		result = RegexSearch(hamlet, "and");
    	}
    	return result;
    }

    global func RunBenchmark(int iterations)
    {
    	StartScriptProfiler();
    	Log("FindSubstring: %d iterations", iterations);
    	var substr = TestFindSubstring(iterations);
    	Log("RegexSearch: %d iterations", iterations);
    	var regex = TestRegexSearch(iterations);
    	StopScriptProfiler();

    	if (!DeepEqual(regex, substr))
    		Log("Results differ: %v vs %v", substr, regex);
    }

Results:

    FindSubstring: 100 iterations
    RegexSearch: 100 iterations
    Profiler statistics:
    ==============================
    48903ms      Global.FindSubstring
    48903ms      Global.TestFindSubstring
    47979ms      Global.TakeString
    00504ms      Global.TestRegexSearch
    00016ms      Global.PushBack
    ==============================
2016-09-17 20:08:43 +02:00
Maikel de Vries 4b54b86d30 add function to find substrings 2016-09-16 17:25:22 +02:00
Mark ae1de739b0 Wooden Bridge: Return other bridge in CombineWith()
Apparently the return value is not used anywhere; the change allows chaining multiple bridges in a comfortable call.
2016-09-15 19:25:16 +02:00
Mark 58d42b8fd8 Library Lamp: Extracted functions.
Did this change a long time ago, probably for re-using functions in a derived object.
2016-09-15 19:17:17 +02:00
Sven Eberhardt 0cdad64934 Fix goal and rule displays (#1811) 2016-09-14 21:46:16 -04:00
Sven Eberhardt 22af9f0e8c Fix landscape placement functions (#1820, #1821) 2016-09-14 21:30:57 -04:00
Sven Eberhardt 61b1ab08ad Editor: More shortcuts; show helper shortcuts in tools menu 2016-09-10 01:17:40 -04:00
Sven Eberhardt d3d7256fec Fix missing achievement in Krakatoa's Krach (#1819) 2016-09-10 01:17:39 -04:00
Sven Eberhardt 53b365a6d2 Editor: Add shortcuts, menu items, tooltips 2016-09-08 01:56:01 -04:00
Sven Eberhardt b95d1387a4 Editor: Add "reset to saved scenario" command 2016-09-07 01:53:54 -04:00
Maikel de Vries f76e056cea add new items to knowledge in worlds 2016-09-06 17:06:05 +02:00
Maikel de Vries 17f98bd235 add helper functions chars 2016-09-06 17:06:05 +02:00
Sven Eberhardt 282a561462 Add editor props and user actions for boiling lava and acid
Also optimize the timer
2016-09-06 00:06:37 -04:00
Sven Eberhardt 6aeeff0545 Add Library_Stackable editor props 2016-09-05 20:19:25 -04:00
Sven Eberhardt db986e3dd7 Allow repeated ejection of infinite material stack counts in bucket and barrel 2016-09-05 20:08:30 -04:00
Sven Eberhardt 3330c592e3 Improve PlayerStart initial material setting to allow specification of weapon ammo, stackable stack count and liquid contents 2016-09-05 20:01:47 -04:00
Sven Eberhardt 34058e13f9 Fix default assignment of selected object in user action filtered object evaluators 2016-09-05 02:00:00 -04:00
Sven Eberhardt 117ddac8b4 Auto-unstick animals and objects on ground in saved scenarios 2016-09-05 01:59:59 -04:00
Sven Eberhardt 31ead2507a Add Unstick() script function
Also add a position parameter to Stuck() script function.
2016-09-05 01:59:58 -04:00
Sven Eberhardt 6a78a9facb Fix scenario saving of some animal and plant properties 2016-09-04 02:52:03 -04:00
Sven Eberhardt ebfebca87b Sequence: "Start Game" trigger uses first player as triggering player 2016-09-04 02:15:09 -04:00
Sven Eberhardt dc77020586 Add user actions: Invincibility and invisibility 2016-09-03 22:07:10 -04:00
Sven Eberhardt 692ff39c0e Add invisibility EditorProp to all object
Also localize some property names.
2016-09-03 22:07:10 -04:00
Sven Eberhardt 392dc7b49e Fix portrait reset when switching skin to non-extended decoration skin in editor while decoration definition is loaded 2016-09-03 22:07:08 -04:00
Sven Eberhardt bae26bb0d7 Add user action: Set clonk direction 2016-09-03 22:07:08 -04:00
Maikel de Vries 8e75b8fed9 allow branch placement in alternative materials 2016-09-03 19:38:52 +02:00
Maikel de Vries 914d0f4f8e fix scenario saving of waterfall 2016-09-03 19:37:39 +02:00
David Dormagen 4dd9be0e46 chippies: fix unintended growth through animal library
Inclusion of the library buffed the damage wild chippies do by 100%. This is unintended. Chippies grow (and get stronger) through sucking blood.
A commit that changes this behavior should address this directly. (This commit also makes chippies gain size a bit faster - as a compromise.)

The additional check in StartGrowth reduces overhead in the animals (and possibly plants) library. It is kept in this commit to give reviewers an example case for the check.
2016-09-02 09:34:19 +02:00
Sven Eberhardt bdbce1c4c9 Fixes and EditorProps for plant reproduction 2016-09-01 23:54:27 -04:00
Sven Eberhardt 31121d682c Rename option default value function property to DefaultValueFunction
It was "Get" and later "Set", which was always a bit confusing.
2016-09-01 18:32:24 -04:00
Sven Eberhardt 3b7e36abd8 Adjust chippie to use animal library for reproduction
(It still reproduces independently after sucking out a clonk)
2016-09-01 02:24:43 -04:00
Sven Eberhardt 9cec9b5071 Make animal library properties editor-adjustable
Allows e.g. placement of animals that do not reproduce.
2016-09-01 02:23:42 -04:00
Sven Eberhardt cd4e419aef Disallow interaction menu on hostile and neutral clonks
Stealing items in melees or taking quest items from NPCs is a bit odd.
2016-08-30 19:54:58 -04:00
Sven Eberhardt 4c56b41de0 Fix color group in "any" value evaluator of user actions 2016-08-30 19:42:31 -04:00
Sven Eberhardt c487c530e4 Fix respawn at flagpole position 2016-08-30 14:45:41 -04:00
Sven Eberhardt f3f475e38a Fix Time default initialization and add editor props 2016-08-30 02:00:02 -04:00
Sven Eberhardt e7c11cf590 Add user action evaluators: Enter+Exit object 2016-08-30 01:40:18 -04:00
Sven Eberhardt 76227e4e6c Add user action color evaluators: Player color, random color, RGB 2016-08-30 00:30:22 -04:00
Sven Eberhardt 48d8ad8de9 Add UserAction evaluators: for integer/player/object in list 2016-08-29 15:18:21 -04:00
Sven Eberhardt c72135db1f Add user action comment 2016-08-29 00:41:48 -04:00
Sven Eberhardt cc2f626063 Add UserAction conditional value evaluator
i.e. operator ? :
2016-08-29 00:32:52 -04:00
Sven Eberhardt bda3cb5640 Add UserActions to deactivate/reactivate player control 2016-08-28 22:18:58 -04:00
Sven Eberhardt 4caa9ee217 Fix disappearing health bars after crew reactivation and savegame reload (#1629, #1740) 2016-08-28 22:13:08 -04:00
Sven Eberhardt b763982f45 Fix scenario saving as network client to not delete saved scenario after game end (#1814) 2016-08-28 00:56:15 -04:00
Sven Eberhardt f796716655 Fix cotton scenario saving 2016-08-28 00:20:39 -04:00
Sven Eberhardt 5da1a0d5c1 Fix some sequence progress bugs 2016-08-28 00:16:58 -04:00
Sven Eberhardt 96842e2961 Sequence test uses first local player as triggering player 2016-08-27 22:20:03 -04:00
Sven Eberhardt 61b75f002f Add extra clonk skins to skin selection menu in editor props 2016-08-27 19:04:50 -04:00
Sven Eberhardt b339db9ea7 UserAction particles: Add fire and ring particles
Also sort particle type list by name.
2016-08-27 17:45:01 -04:00
Sven Eberhardt 0e3b1865ea UserAction: Add more options for particle creation
Also fix collision behaviour setting to work.
2016-08-27 17:38:25 -04:00
Sven Eberhardt 147e70ace9 Fix sequence and dialogue progress mode saving 2016-08-27 17:17:48 -04:00
Sven Eberhardt 065d8536da UserAction evaluators: Sort constant value above other evaluators 2016-08-27 17:15:20 -04:00
Sven Eberhardt dfefa7df6f UserAction goto and log: Put parameters directly into enum 2016-08-27 17:14:51 -04:00
Sven Eberhardt 6b9df3118c Sort UserAction evaluators and groups by name
Also merge effect group into ambience group.
2016-08-27 16:46:59 -04:00
Sven Eberhardt e2e9248d89 UserAction: Clarify HideFullName property comment 2016-08-27 16:46:58 -04:00
Maikel de Vries 788ba6e0c4 allow swapping source and drain pipe at the pump 2016-08-27 17:10:30 +02:00
Maikel de Vries a15ac3742e add icon for swap 2016-08-27 17:10:30 +02:00
Sven Eberhardt dba7e773ab UserAction variable evaluators: Default name to empty string constant 2016-08-27 10:01:33 -04:00
Sven Eberhardt 4a14ce735e Fix UserAction type "Any" evaluators
Their callback function was not registered if they weren't duplicates from a non-any type
2016-08-27 09:59:25 -04:00
Sven Eberhardt 820b2a39a0 Fix display of some user actions 2016-08-27 02:04:02 -04:00
Maikel de Vries 49fa224bcd C4D_Vehicle to C4D_None for some non-vehicles 2016-08-26 22:11:18 +02:00
Maikel de Vries 96e8f0a12f fix fusing of dynamite box (#1816) 2016-08-26 19:54:19 +02:00
Maikel de Vries 07008af820 fix missing string table entry in UserAction.ocd 2016-08-25 19:07:24 +02:00
Maikel de Vries 4410e95cc2 tutorial 6: do not allow turning catapult while aiming (#1744) 2016-08-25 19:07:24 +02:00
Maikel de Vries 97c093ea0d tutorial 03: add welcome message to guide post 2016-08-25 19:07:24 +02:00
Sven Eberhardt 44022f840f Add CustomInitializationScript to all objects 2016-08-25 00:18:11 -04:00
Sven Eberhardt 540bd62ad3 Optimize torch timer
The torch timer was #1 script in a profiler run of a scenario with 10 torches.

Reduce to 1/4th of the calls. Actually, I think it looks better now (less regular, more torch-y).
2016-08-24 01:28:28 -04:00
Armin Schäfer 77790c7313 Add Shark: Squashed commit of the following:
commit 1abfae50c6454c8f5bab10bff753fb472f0596d0
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Wed Aug 3 00:56:40 2016 +0200

    Make shark slower (only twice as fast as the Clonk) and reactivate FastSwim animation.

commit b35db07894be864978a6b03609eb3d754b622705
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Thu Jul 21 22:24:48 2016 +0200

    Shark: Fix shark not swimming for a while when Clonk was too near.

commit f1495371394796e4a2d984049c026eaa66a0d30e
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Sun Jul 3 19:48:22 2016 +0200

    Shark: Revert wrong location of the shark.

commit 437f911629c8ec9ee1c587e653790378b0d8fd17
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Sun Jul 3 19:44:49 2016 +0200

    Shark: Fix one turning bug, it can not be big enough to cause a mesh bug when turning around; shark is a bit slower when attacking (hopefully it can not jump out of the water now)

commit 28d0a9dfbad4e2b4c42295e73d8d42e5495b0e37
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Sat Mar 26 01:28:19 2016 +0100

    Move shark to Objects.ocd and add sharks to Clonkomotive on hard settings.

commit 000d162fb5c36225fdd215d1d30336a1c926ec27
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Sat Mar 26 01:09:55 2016 +0100

    Shark: Fix bugs.

commit be201ffd6424203bf2b9b3a2a8496b3d41ec3122
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Sat Feb 20 14:48:12 2016 +0100

    Shark update. Fix animation when attacking.

commit 7dc24e93fa19f26cc2f3344ac8267b81b4fd3eee
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Sat Jan 23 22:36:24 2016 +0100

    Delete the patch.txt from my last commit.

commit 36e828fb7545fb6c2538c728844f0b4dc97bfcc5
Author: Armin Schäfer <arminnessie@gmail.com>
Date:   Sat Jan 23 17:38:29 2016 +0100

    Add experimental Shark scenario.
2016-08-23 19:16:54 +02:00
Sven Eberhardt 83a5034f63 Add inscription property to guideposts
Now you can set a guidepost message in the editor!
2016-08-23 02:08:12 -04:00
Sven Eberhardt 4ce96cb892 Fix scenario saving of names when no name is assigned.
It created SetName("") entries because def->GetName() has a fallback to the internal name while obj->GetName() does not.

Just use .Name instead. Objects with custom naming (overloaded GetName()) need to overload name saving anyway.
2016-08-23 02:07:54 -04:00
Sven Eberhardt e4fad91d36 Fix user action sound in local context 2016-08-23 02:07:53 -04:00
Maikel de Vries e18cee3a46 turn musket into blunderbuss
The musket was not a very popular and useful weapon, being inferior to the bow. It now shoots 5 weaker bullets in one shot with less damage per bullet, this might require some further testing and fine-tuning. Also the weaker bullets mean that they can be used in a gatling-gun (WIP) and in the airplane as well.
2016-08-22 16:32:48 +02:00
Maikel de Vries 7935f736fe make mooq firebomb C4D_None instead of C4D_Vehicle 2016-08-22 16:32:47 +02:00
Maikel de Vries 095a589842 clean up bullet trail and fix offset to bullet 2016-08-22 16:32:47 +02:00
Maikel de Vries 1fc7fea628 remove unused local variable from grenade launcher 2016-08-22 16:32:47 +02:00
Maikel de Vries 45bb9ab550 rename lead shot to lead bullet and clean up script 2016-08-22 16:32:47 +02:00
Sven Eberhardt d2557960ae Add user action: Give player knowledge 2016-08-21 15:40:38 -04:00
Sven Eberhardt f6b3a6efb8 Add magic wand as an editor-assignable usage item 2016-08-21 15:17:51 -04:00
Sven Eberhardt f9349721e4 Add user action: Cast particles 2016-08-21 14:49:23 -04:00
Sven Eberhardt c7b114139a Add user action: Change wealth 2016-08-21 14:49:22 -04:00
Sven Eberhardt 967a5730ed UserAction evaluator display: Invert full name display default
Showing the full name is far more common than hiding it.
2016-08-21 14:49:21 -04:00