Commit Graph

130 Commits (d59b1e5e5ba48c08a442d7ee0b4e4886cefd5089)

Author SHA1 Message Date
Tobias Zwick d59b1e5e5b reduce version numbering from x.y.z (x does never changes) to y.z 2014-12-12 21:57:52 +01:00
Mark 0e9c0e9be4 AttachMesh with added functionality (#1177)
Simple implementation of matching skeletons/animations. Short description added to the documentation. More functionality to follow.
2014-12-03 20:05:36 +01:00
Mark dda9599003 Extracted skeleton from StdMesh.
Skeleton is now represented by the class StdMeshSkeleton.
2014-12-03 20:04:54 +01:00
Armin Burgmeier ebeeb534ce CreateParticleAtBone: Take object rotation into account (#1173) 2014-11-07 19:57:04 -05:00
Martin Plicht d05c784478 C4GameObjects: Turn remaining explicit iterator use into for (x : list) loop 2014-11-01 15:47:04 +01:00
Martin Plicht f1f1627995 C4ObjectList: InsertLink, InsertLinkBefore and Clear also do some iterator adjusting 2014-11-01 15:47:03 +01:00
Armin Burgmeier babb0b243b Load mesh material scripts also from .ocd folders without definition 2014-10-26 21:29:36 -04:00
Martin Plicht 0bab7c17de C4Object: ShiftContents done with iterators 2014-10-25 21:26:07 +02:00
Martin Plicht afa6974f37 C4GameObjects: Sorting out objects with inactive state done with regular Remove/Add calls instead of manually doing linked list dance again 2014-10-25 21:26:07 +02:00
Martin Plicht 0219a40d2b C4GameObjects: PostLoad sanity Contents check done with iterators instead of direct C4ObjectLink access 2014-10-25 21:26:07 +02:00
Martin Plicht e375e4b30a C4GameObjects: When shelving contents of InactiveObjects temporarily, make a copy instead of setting InactiveObjects.First 2014-10-25 21:26:07 +02:00
Martin Plicht 843d4039b1 C4GameObjects: Use this instead of ::Objects 2014-10-25 21:26:07 +02:00
Martin Plicht d84d42717e C4Object: Call Contents.GetLastObject() instead of accessing Last link directly 2014-10-25 21:26:06 +02:00
Martin Plicht 03f43f462b C4ObjectList: Replace trivial cases of manual list traversal with iterator usage 2014-10-25 21:25:52 +02:00
Martin Plicht cbf2136c58 C4ObjectList: Add more iterator functionality
This includes a reverse view on the list to iterate over and some utility iterator methods. An iterator now stores a copy of its current object link so that the copy's fields can be adjusted in case of object removal and pending iterations will not skip over some objects which would be the case when advancing the iterator position instead of adjusting the copy's fields.
2014-10-25 18:43:23 +02:00
Armin Burgmeier 2f6d1eaa1f Parse program definitions from the material file 2014-10-21 15:19:30 -04:00
Armin Burgmeier 8146419e2d Use PerformMultiLines in C4Object::DrawLine 2014-10-18 13:35:20 -04:00
Armin Burgmeier 5e43e595d3 Make attached meshes use their own blit parameters (#1095)
This might break some scenarios which for example change the color modulation
of a clonk and then expect that also its shovel or other objects get colored.
Such scenarios need to be fixed by also coloring the attached objects. This
might not be very convenient, and maybe we should introduce an option for
attached meshes to use the old behaviour (take blit parameters from main
object).

However, let's see how this change turns out in practise and then we see
whether further modifications are needed.
2014-10-16 11:50:30 -04:00
Armin Burgmeier e5d1182cce Add the Anim_RDir AVP 2014-10-09 17:11:13 -04:00
Armin Burgmeier e4ad7ddc2d Rename Anim_RDir to Anim_AbsRDir 2014-10-09 17:07:52 -04:00
Armin Burgmeier 9fb0cdbdef Add a min_rdir parameter to Anim_RDir 2014-10-09 17:05:24 -04:00
Armin Burgmeier cbdc6040e7 Add the Anim_Dist AVP 2014-10-09 17:00:26 -04:00
Armin Burgmeier f23d745b1d Reorder submeshes by opacity after material change (#1125) 2014-10-04 16:12:13 -04:00
David Dormagen c09764b3fd fixed CreateParticleAtBone (would create particles at a wrong position)
Also set "amount" to min. 1 because that's what intuition would dictate.
2014-09-26 21:32:08 +02:00
Sven Eberhardt 86bcd248a1 Fix crash in AddMenuItem if caption contains %s and pDef is NULL. 2014-09-25 15:14:51 +02:00
Sven Eberhardt abab7be591 Added scenario achievements displayed as small symbols beside the scenario name in the startup selection screen.
They can be used e.g. to show that you have finished a scenario on different difficulty levels.
2014-09-24 23:08:40 +02:00
Sven Eberhardt 6f1472e706 Revert pathfinder bug introduced in 086e3e9e10 2014-07-13 14:36:36 +02:00
Sven Eberhardt 5cd9b915b0 Added some dialogue functions and speaker portraits. UpdatedAddMenuItem and CustomMessage to allow more customization for picture graphics.
I would prefer to render the models for speaker portraits directly. However, it seems like it's not currently possible to clip or render models to offscreen surfaces.
2014-07-05 15:25:30 +02:00
Sven Eberhardt 91db5d33c2 Added SolidMaskPlane property.
If an object moves and other objects are attached to its SolidMask, only objects in front of this plane are moved along with it. Defaults to Plane if zero.
2014-05-04 14:16:46 +02:00
Sven Eberhardt 4f43da9999 Fix SolidMasks defined in DefCore.txt for objects with mesh graphics.
There were a few leftover checks from when SolidMasks could only be defined for definitions with bitmap graphics.
2014-05-04 14:16:46 +02:00
Maikel de Vries 653b135919 Move contents ejection on death after Death Call
This allows the scripter to access the contents in OnClonkDeath and similar callbacks preventing solutions using effects or static variables.
2014-04-22 20:15:26 +02:00
Günther Brammer 04e1c74c05 Merge Call fix commit 2014-04-19 19:02:27 +02:00
Günther Brammer 22016e075f Replace some usages of C4ID with C4Def*
In particular those that made the c4script shell depend on C4Id.cpp.
2014-04-19 19:02:22 +02:00
Sven Eberhardt e704cd2ecb GetMeshMaterial called from definition context now returns default mesh materials. 2014-04-18 14:10:12 +02:00
Maikel de Vries c70c44387f Fix some DoDamage issues
Fire.c use correct number of parameters
Axe.c implemented FX_Call_DmgChop according to documentation
2014-04-06 17:15:13 +02:00
Julius Michaelis 405fc4f841 Fix dedicated 2014-04-02 20:53:12 +02:00
Sven Eberhardt 57463b61c4 Rework SolidMasks to be defined in a separate SolidMask.png graphics file instead of the main definition graphics. 2014-01-08 01:55:33 +01:00
Sven Eberhardt fa57eb4ab0 Fix moving SolidMasks. 2014-01-03 17:39:00 +01:00
Sven Eberhardt 50a6ccf009 Fix SolidMasks in editor mode when no viewport is opened. Do not re-put SolidMasks every frame on movable but non-moving objects.
Selecting a GL context during SolidMask initialization is not a very good solution. But as long as SolidMasks are stored in graphics surface we have no choice.

A better solution would be to generate a dedicated (non-OpengL) surface for SolidMask data on object loading. But then objects that have SolidMasks would need to be tagged somehow.
2014-01-03 15:13:09 +01:00
Sven Eberhardt 74243429c0 Fix Wait-command. 2013-12-29 21:57:26 +01:00
Sven Eberhardt a385102c36 Changed GetDefBottom to use bottom vertex to determine object bottom.
Since this is the method also used by CreateObject, GetDefBottom can be used to recreate objects at their proper position.
2013-12-27 17:11:02 +01:00
Nicolas Hake e0dc30c59a Update copyright notices
As discussed in http://forum.openclonk.org/topic_show.pl?tid=2917, I
have merged all copyright notices into a single file and referenced that
merged file from each source file.

For the updated source files, the timeline has been split into three
parts:
 1. Pre-RWD code (before 2001)
 2. RWD code (2001 through 2009)
 3. OpenClonk code (2009 and later)
All pre-RWD copyright notices have been left intact, as have RWD-era
copyright notices where the file did not have a RedWolf design copyright
notice but only individual author ones. All copyright notices of the
OpenClonk era have been replaced by a single notice ranging from the
first recorded year to the current year (2013). Mape code did not get a
OpenClonk Team copyright notice because it is somewhat separate from the
main OpenClonk codebase and has only been touched by Armin Burgmeier.
2013-12-23 13:03:19 +01:00
David Dormagen 921f21e9a6 allocate particle lists for C4Objects lazily
This should fix an error with incorrect particle lists after loading. This is also a cleaner way overall, since only a fraction of all objects will ever have particles attached to them
2013-12-22 18:51:05 +01:00
David Dormagen 078899d0a0 added safety check for when calling CreateParticleAtBone without object context 2013-12-17 22:32:02 +01:00
David Dormagen a10c9316ef renamed DynamicParticles* to Particles* and CreateParticleEx to CreateParticle 2013-12-17 22:32:01 +01:00
David Dormagen 02f54ba1eb removed the legacy particle system from the engine and docs 2013-12-17 22:32:01 +01:00
Tobias Zwick 325053410f rename script callback UpdateTransferZone to OnSynchronized (#220) 2013-12-17 23:16:11 +07:00
Sven Eberhardt 25ddb14dca Rework prop list renumbering on section load (again).
Turns out changing prop list numbers while they are still indexed by number in the hash map was a bad idea. Existing prop lists are now de-numbered, pushed to an external shelve and re-numbered when added after section load.
2013-12-15 15:46:18 +01:00
Sven Eberhardt 1cca6fd1ad Rework section load again.
Now clears numbers of all existing proplists and renumbers them after loading. Fixes some assertions and duplicate numbers during loading.
2013-12-15 14:06:21 +01:00
Sven Eberhardt 29d1b4846a Fix scenario sections
Inactive objects got removed and calling section load from global effects caused a crash.
2013-12-14 18:16:39 +01:00