-
Notifications
You must be signed in to change notification settings - Fork 0
BFAnimEngine
BFAnimEngine is an animation script that lets you animate your fumo in Become Fumo and is configured specifically for Become Fumo fumo models
In order to get the script working you first have to run it in any script to add functions to _G.BFAnims
loadstring(game:HttpGet("https://raw.githubusercontent.com/ceat-ceat/BecomeFumoStuff/main/BFAnimEngine.lua"))()If the script is ran again, it will not overwrite the data and you will be able to use it normally
When you have an available character, you run
_G.BFAnims:Hook()to hook the script onto your character. If there is no available character or the character is already hooked onto, it will throw an error.
This will overwrite the data in the internal part storage and your new parts will now be animated.
Before you proceed, you should know that below is the structure of _G.BFAnim.Offsets, a table you will use to animate your character.
| Part Name | CFrame Offset |
|---|---|
| Head |
CFrame Offset from Torso |
| Torso |
CFrame Offset from HumanoidRootPart |
| LArm |
CFrame Offset from Torso |
| RArm |
CFrame Offset from Torso |
| LLeg |
CFrame Offset from Torso |
| RLeg |
CFrame Offset from Torso |
Animating with _G.BFAnim.Offsets is just like animating any Motor6D except instead of setting a C0 value, you just set a value in _G.BFAnim.Offsets
And just for quality of life, _G.BFAnim also contains a C0 table you can get by referencing _G.BFAnim.C0. This table is basically _G.BFAnim.Offsets except it contains the base offset of each part, you can use these values as defaults to animate off of.
Sample Code
loadstring(game:HttpGet("https://raw.githubusercontent.com/ceat-ceat/BecomeFumoStuff/main/BFAnimEngine.lua")()
_G.BFAnim:Hook()
local offsets,c0 = _G.BFAnim.Offsets,_G.BFAnim.C0
offsets.Head = c0.Head * CFrame.new(0,2,0) -- moves the head 2 studs up its usual positionYou don't need to do anything to stop _G.BFAnim from animating when your character respawns, it does it automatically. If you don't want this, just rehook it to your character using _G.BFAnim:Hook() like you do normally
It is good practice to break any loops you have running for animations when the player respawns as it might interfere with any animations any script after tries running
void _G.BFAnim:AddPart(string Name, table Config)
Adds a part to the parts list, making it animatable.
Config Table
| Index | Value | IsRequired | Description |
|---|---|---|---|
| Part0 | Instance |
true |
The part that Part1 should be attached to |
| Part1 | Instance |
true |
The part that is anchored to Part0 |
| C0 | CFrame |
false |
The Offset between Part0 and Part1 |
Sample Code
local players = game:GetService("Players")
local localplayer = players.LocalPlayer
local character = localplayer.Character
loadstring(game:HttpGet("https://raw.githubusercontent.com/ceat-ceat/BecomeFumoStuff/main/BFAnimEngine.lua")()
_G.BFAnim:Hook()
local offsets = _G.BFAnim.Offsets
_G.BFAnim:AddPart("yomama",{Part0=character.Head.Head,Part1=character.Head.Hat})
offsets.yomama = CFrame.new(0,0,-4) -- puts the hat 4 studs in front of the character's head