EvilEngine/BUTN: Difference between revisions

m
Seil moved page BUTN to EvilEngine/BUTN
Battlepedia>Seil
m (Seil moved page BUTN to EvilEngine/BUTN)
 
(12 intermediate revisions by 4 users not shown)
Line 1:
<onlyinclude>
{{AssetInfobox
{{#vardefine:typeid|BUTN}}<nowiki/>
|subtitle=Button
{{#vardefine:name|Button}}<nowiki/>
|type=[[Placeable]]
{{#vardefine:type|[[Entity]]}}<nowiki/>
|objectid=0x18
{{#vardefine:basetype|0x18}}<nowiki/>
|games=Night of 100 Frights<br>Battle for Bikini Bottom<br>The SpongeBob SquarePants Movie<br>The Incredibles}}
{{#vardefine:games|Scooby BFBB TSSM Incredibles}}<nowiki/>
{{#vardefine:sourcecode|[https://github.com/bfbbdecomp/bfbb/blob/master/src/Game/zEntButton.h zEntButton.h]}}<nowiki/>
{{#vardefine:image|Buttons.png}}<nowiki/>
</onlyinclude>
{{AutoAssetInfobox}}
 
This asset defines an entry for buttons such as switches and pressure plates.
 
==Format==
Buttons are [[Placeable AssetEntity|placeableentity assets]], so they start with their 0x54 byte header, then are followed by:
 
{| class="wikitable"
Line 26 ⟶ 31:
|-
| 0x68 || int || '''buttonActFlags''' || This bitmask specifies what can press the button.
* 00x1 - Bubble Spin/Sliding (SpongeBob)
* 10x2 - Bubble Bounce
* 20x4 - Bubble Bash
* 30x8 - [[BOUL|Boulder]]/Bubble Bowl
* 40x10 - Cruise Bubble
* 50x20 - Bungee
* 60x40 - Thrown Enemy/Tiki
* 70x80 - Throw Fruit
* 80x100 - Patrick Slam
* 90x200 - Unknown
* 100x400 - (Pressure Plate) Player Stand
* 110x800 - (Pressure Plate) Enemy Stand
* 120x1000 - (Pressure Plate) [[BOUL|Boulder]]/Bubble Bowl
* 130x2000 - (Pressure Plate) Stone Tiki
* 140x4000 - Sandy Melee/Sliding
* 150x8000 - Patrick Melee/Sliding
* 160x10000 - (Pressure Plate) Throw Fruit
* 0x20000 - Patrick Cartwheel (TSSM only, unused in BFBB)
* 17-31 - Unused
* The rest of the bits are unused.
|-
| 0x6C || byte[8[Motion]] || Unknown'''Motion''' || UsuallyAlways type 4,0,0,4,2,1,1,0 (Mechanism)
|-
! colspan="4" | Events
| 0x74 || float || '''Pressed Height''' || (local units) Height of the button when pressed. This is affected by local rotation and scale.
|-
| 0x9C || Event[numberOfEvents] || '''[[Events]]''' || '''BFBB'''
| 0x78 || float || '''Transition Time''' || (seconds) Time it takes to move between pressed and unpressed height.
|-
| 0xA8 || Event[numberOfEvents] || '''[[Events]]''' || '''Movie'''
| 0x7C || float || '''Ease In Time''' || (seconds) Easing in duration, relative to unpressed height. Must be >= 0 and <= Transition Time.
|-
| 0x80 || float || '''Ease Out Time''' || (seconds) Easing out duration, relative to pressed height. Must be >= 0 and <= Transition Time.
|-
| 0x84 || int[6] || null ||
|-
! colspan="4" | Events
|-
| 0x9C || Event[numberOfEvents] || '''[[Events]]''' ||
|}
 
=== Events ===
 
{{Assets}}
{{AutoGameNavs}}
 
[[Category:Asset]]