package Ġde . fab max . k ool . modules . k sl . blocks Ċ Ċ import Ġde . fab max . k ool . modules . k sl . lang .* Ċ Ċ fun ĠK sl Scope Builder . arm ature Block ( max NumberOf B ones : ĠInt ): ĠArm ature Block Ġ{ ĊĠĠĠ Ġval Ġarm ature Block Ġ= ĠArm ature Block ( max NumberOf B ones , Ġparent Stage . program . next Name (" arm ature Block "), Ġthis ) ĊĠĠĠ Ġops Ġ+= Ġarm ature Block ĊĠĠĠ Ġreturn Ġarm ature Block Ċ } Ċ Ċ class ĠArm ature Block ( max B ones : ĠInt , Ġname : ĠString , Ġparent Scope : ĠK sl Scope Builder ) Ġ: ĠK sl Block ( name , Ġparent Scope ) Ġ{ ĊĠĠĠ Ġval Ġarm ature Data : ĠArm ature Data ĊĊĠĠĠ Ġval Ġin Bone Indices Ġ= Ġin Int 4 (" in Bone Indices ") ĊĠĠĠ Ġval Ġin Bone Weights Ġ= Ġin Float 4 (" in Bone Weights ") ĊĊĠĠĠ Ġval Ġout Bone Transform Ġ= Ġout Mat 4 (" out Bone Transform ") ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġbody . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarm ature Data Ġ= ĠArm ature Data ( max B ones , Ġparent Scope . parent Stage . program ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Bone Transform Ġset Ġarm ature Data . bone Transforms [ in Bone Indices . x ] Ġ* Ġin Bone Weights . x ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Bone Transform Ġ+= Ġarm ature Data . bone Transforms [ in Bone Indices . y ] Ġ* Ġin Bone Weights . y ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Bone Transform Ġ+= Ġarm ature Data . bone Transforms [ in Bone Indices . z ] Ġ* Ġin Bone Weights . z ĊĠĠĠĠĠĠĠĠĠĠĠ Ġout Bone Transform Ġ+= Ġarm ature Data . bone Transforms [ in Bone Indices . w ] Ġ* Ġin Bone Weights . w ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }