30 lines
775 B
C#
30 lines
775 B
C#
//bls 3
|
|
|
|
//function ndRotateVector(%vector, %steps)
|
|
function ndFillBus(%pos1, %pos2, %angleId, %color) {
|
|
talk(%pos1 @ ", " @ %pos2 @ ", " @ %angleId);
|
|
$ND::FillBrickColorID = %color + 1;
|
|
ndFillAreaWithBricks(%pos1, %pos2);
|
|
}
|
|
|
|
function ndNormalizeBox(%box) {
|
|
%x1 = getWord(%box, 0);
|
|
%y1 = getWord(%box, 1);
|
|
%z1 = getWord(%box, 2);
|
|
%x2 = getWord(%box, 3);
|
|
%y2 = getWord(%box, 4);
|
|
%z2 = getWord(%box, 5);
|
|
return
|
|
mMin(%x1, %x2) SPC
|
|
mMin(%y1, %y2) SPC
|
|
mMin(%z1, %z2) SPC
|
|
mMax(%x1, %x2) SPC
|
|
mMax(%y1, %y2) SPC
|
|
mMax(%z1, %z2) ;
|
|
}
|
|
function ndFillAreaWithBricks_box(%pos, %boxSize) {
|
|
%boxHalf = vectorScale(%boxSize, 0.5);
|
|
%box = vectorSub(%pos, %boxHalf) SPC vectorAdd(%pos, %boxHalf);
|
|
ndFillAreaWithBricks(getWords(%box, 0, 2), getWords(%box, 3, 5));
|
|
}
|