19,047
edits
(fixing onistuff field; documenting usage of unknown flags) |
m (added family to footer template call) |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
:''This is about door instances. For the door class resource, see [[OBD:DOOR]] | |||
{{OBD OBJC Header | align=center | type=DOOR | prev=CONS | next=FLAG | name=Door|onistuff=b_do}} | {{OBD OBJC Header | align=center | type=DOOR | prev=CONS | next=FLAG | name=Door|onistuff=b_do}} | ||
[[ | [[Image:bin_r_do.gif]] | ||
{{Table}} | {{Table}} | ||
{{OBDth}} | {{OBDth}} | ||
{{OBDtr| 0x00 | char[4] |FF0000| 43 4A 42 4F | OBJC | | {{OBDtr| 0x00 | char[4] |FF0000| 43 4A 42 4F | OBJC | objects }} | ||
{{OBDtr| 0x04 | int32 |FFFF00| 15 19 00 00 | 14344 | size of the complete door part from this | {{OBDtr| 0x04 | int32 |FFFF00| 15 19 00 00 | 14344 | size of the complete door part from this position in bytes }} | ||
{{OBDtr| 0x08 | int32 |00FF00| 27 00 00 00 | 39 | object | {{OBDtr| 0x08 | int32 |00FF00| 27 00 00 00 | 39 | object list version }} | ||
{{OBDtr| 0x0C | int32 |00FFFF| FC 00 00 00 | 252 | size of the following element in bytes }} | {{OBDtr| 0x0C | int32 |00FFFF| FC 00 00 00 | 252 | size of the following element in bytes }} | ||
{{OBDtrBK}} | {{OBDtrBK}} | ||
Line 26: | Line 27: | ||
{{OBDtr| 0x67 | bitset16 |B0C3D4| 15 00 | 21, 0 | door options; the following bits are possible: | {{OBDtr| 0x67 | bitset16 |B0C3D4| 15 00 | 21, 0 | door options; the following bits are possible: | ||
:0x'''01''' 00 - | :0x'''01''' 00 - "initially locked" (at level load or after calling [[reset_mechanics]]) | ||
:0x'''02''' 00 - unknown; never used | :0x'''02''' 00 - unknown; never used | ||
:0x'''04''' 00 - unknown | :0x'''04''' 00 - unknown; probably "locked" (whatever that means)? | ||
:0x'''08''' 00 - unknown; never used | :0x'''08''' 00 - unknown; never used | ||
:0x'''10''' 00 - require player to press '''action''' to open door | :0x'''10''' 00 - require player to press '''action''' to open door | ||
Line 34: | Line 35: | ||
:0x'''40''' 00 - unknown; never used | :0x'''40''' 00 - unknown; never used | ||
:0x'''80''' 00 - double door | :0x'''80''' 00 - double door | ||
:0x00 '''01''' - | :0x00 '''01''' - "mirror door" (mirrored along door's Z axis) | ||
:0x00 '''02''' - one way door (one side locked, other side unlocked) | :0x00 '''02''' - one way door (one side locked, other side unlocked) | ||
:0x00 '''04''' - reverse of the one way door (now the other side is locked) | :0x00 '''04''' - reverse of the one way door (now the other side is locked) | ||
Line 53: | Line 54: | ||
{{OBDtr |0xE9 | |8C8CCC| | | padding }} | {{OBDtr |0xE9 | |8C8CCC| | | padding }} | ||
|} | |} | ||
;Instances using bit 0x100 of bitset 0x67 | ;Instances NOT using bit 0x04 of bitset 0x67 ("locked"?) | ||
:(level:door) | |||
:2:26; 3:62; 6:1,41,42,43,45,46,47,48,49; 8:73; 18:97; 19:43,44 | |||
:It's not clear what the effect of a "locked" bit would be; "initially locked" is what matters at level load and when calling [[reset_mechanics]]. Maybe "locked" was part of a runtime dump, but is ignored by the engine? | |||
;Instances using bit 0x100 of bitset 0x67 ("mirror door") | |||
:(level:door) | :(level:door) | ||
:1:4,6,7,9,15,16,24,25,26,27,32,33,36,37,61,68,79,92,108; | :1:4,6,7,9,15,16,24,25,26,27,32,33,36,37,61,68,79,92,108; | ||
:3:50; 6:29,31,33,46,47; 8:14; 10:11,14,18,20; 18:14,42,70 | :3:50; 6:29,31,33,46,47; 8:14; 10:11,14,18,20; 18:14,42,70 | ||
:The mirroring is complementary to the transformation in the [[ONLV]]'s [[OBOA]]. | |||
; | ;Tool Mode dialog | ||
[[Image:Tool dialog - Door Properties.png]] | |||
{{OBD OBJC Footer | type=DOOR | prev=CONS | next=FLAG | name=Door | family=Level}} | |||
{{OBD | {{OBD}} |