convert line ends
[canaan.git] / prj / cam / src / dark / crrope.c
blob82796c736d0ad7ad40b71fbf64170cfb5588bdfa
1 /*
2 @Copyright Looking Glass Studios, Inc.
3 1996,1997,1998,1999,2000 Unpublished Work.
4 */
6 // $Header: r:/t2repos/thief2/src/dark/crrope.c,v 1.3 1998/09/20 15:56:56 CCAROLLO Exp $
7 // XXX this could really a DLL. just contains humanoid-specific data
9 #include <creatur_.h>
10 #include <crhumand.h>
11 #include <drkcret.h> // to get actor type definition
13 #include <dbmem.h> // must be last included header
15 // Joints
16 #define NODE_0 0
17 #define NODE_1 1
18 #define NODE_2 2
19 #define NODE_3 3
20 #define NODE_4 4
21 #define NODE_5 5
22 #define NODE_6 6
23 #define NODE_7 7
24 #define NODE_8 8
26 // mapping from joint id to exposed joint enum
27 static int g_aRopeJointMap[] =
29 -1,
30 -1,
31 -1,
32 -1,
33 -1,
34 -1,
35 -1,
36 -1,
37 -1,
38 -1,
39 -1,
40 -1,
41 -1,
42 -1,
43 -1,
44 -1,
45 -1,
46 -1,
47 -1,
48 -1,
49 -1,
50 -1,
53 // array of mappings from jointIDs -> parent jointIDs
54 static int g_aRopeJointParents[] =
56 NODE_0, // NODE_0
57 NODE_0, // NODE_1
58 NODE_1, // NODE_2
59 NODE_2, // NODE_3
60 NODE_3, // NODE_4
61 NODE_4, // NODE_5
62 NODE_5, // NODE_6
63 NODE_6, // NODE_7
64 NODE_7, // NODE_8
67 static torso g_aDefTorsos[1] =
69 {NODE_0, -1, 1, {NODE_0}},
72 static limb g_aDefLimbs[1] =
74 { 0, 1, 8, {NODE_0, NODE_1, NODE_2, NODE_3, NODE_4, NODE_5, NODE_6, NODE_7, NODE_8}},
77 const sCreatureDesc sCrRopeDesc = \
79 kDATYPE_Rope, // actor type
80 1, // num torsos
81 1, // num limbs
82 9, // num joints
83 "rope", // default lengths filename
84 0, // number of phys models
85 0, // default phys radius
86 NULL, // array of phys model offsets
87 g_aRopeJointParents, // joint parent mapping
88 g_aRopeJointMap,
89 0, // num feet
90 NULL, // foot joints
91 g_aDefTorsos, // default torso values (if lengths file not found)
92 g_aDefLimbs, // default limb values (if lengths file not found)
93 0, // number of weapons
94 NULL, // weapon physics model offsets
95 FALSE, // is player limb