fixed pixel to use new callback system
This commit is contained in:
		| @@ -1,403 +1,403 @@ | |||||||
| 1 1 1 | 1 1 1 | ||||||
| SPECIAL | SPECIAL | ||||||
|  |  | ||||||
| b | b | ||||||
|  |  | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| 0 0 0 | 0 0 0 | ||||||
| 1 1 1 | 1 1 1 | ||||||
| COVERAGE: | COVERAGE: | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| ----------------top quads: | ----------------top quads: | ||||||
| 6 | 6 | ||||||
|  |  | ||||||
| TEX:TOP | TEX:TOP | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 -0.4 0.75 | -0.4 -0.4 0.75 | ||||||
| 0.4 -0.4 0.75 | 0.4 -0.4 0.75 | ||||||
| 0.4 -0.4 0.5 | 0.4 -0.4 0.5 | ||||||
| -0.4 -0.4 0.5 | -0.4 -0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 -0.4 0.75 | -0.4 -0.4 0.75 | ||||||
| -0.4 0.4 0.75 | -0.4 0.4 0.75 | ||||||
| 0.4 0.4 0.75 | 0.4 0.4 0.75 | ||||||
| 0.4 -0.4 0.75 | 0.4 -0.4 0.75 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.4 0.4 0.75 | 0.4 0.4 0.75 | ||||||
| -0.4 0.4 0.75 | -0.4 0.4 0.75 | ||||||
| -0.4 0.4 0.5 | -0.4 0.4 0.5 | ||||||
| 0.4 0.4 0.5 | 0.4 0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 0.4 0.75 | -0.4 0.4 0.75 | ||||||
| -0.4 -0.4 0.75 | -0.4 -0.4 0.75 | ||||||
| -0.4 -0.4 0.5 | -0.4 -0.4 0.5 | ||||||
| -0.4 0.4 0.5 | -0.4 0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.4 -0.4 0.75 | 0.4 -0.4 0.75 | ||||||
| 0.4 0.4 0.75 | 0.4 0.4 0.75 | ||||||
| 0.4 0.4 0.5 | 0.4 0.4 0.5 | ||||||
| 0.4 -0.4 0.5 | 0.4 -0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| ----------------bottom quads: | ----------------bottom quads: | ||||||
| 9 | 9 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 -0.32 -0.875 | 0.32 -0.32 -0.875 | ||||||
| -0.32 -0.32 -0.875 | -0.32 -0.32 -0.875 | ||||||
| -0.4 -0.4 -0.5 | -0.4 -0.4 -0.5 | ||||||
| 0.4 -0.4 -0.5 | 0.4 -0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -0.882353 -0.470588 | 0 -0.882353 -0.470588 | ||||||
| 0 -0.882353 -0.470588 | 0 -0.882353 -0.470588 | ||||||
| 0 -0.882353 -0.470588 | 0 -0.882353 -0.470588 | ||||||
| 0 -0.882353 -0.470588 | 0 -0.882353 -0.470588 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 -0.32 -0.875 | 0.32 -0.32 -0.875 | ||||||
| 0.32 0.32 -0.875 | 0.32 0.32 -0.875 | ||||||
| -0.32 0.32 -0.875 | -0.32 0.32 -0.875 | ||||||
| -0.32 -0.32 -0.875 | -0.32 -0.32 -0.875 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 0.32 -0.875 | -0.32 0.32 -0.875 | ||||||
| 0.32 0.32 -0.875 | 0.32 0.32 -0.875 | ||||||
| 0.4 0.4 -0.5 | 0.4 0.4 -0.5 | ||||||
| -0.4 0.4 -0.5 | -0.4 0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0.882353 -0.470588 | 0 0.882353 -0.470588 | ||||||
| 0 0.882353 -0.470588 | 0 0.882353 -0.470588 | ||||||
| 0 0.882353 -0.470588 | 0 0.882353 -0.470588 | ||||||
| 0 0.882353 -0.470588 | 0 0.882353 -0.470588 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 0.32 -0.875 | 0.32 0.32 -0.875 | ||||||
| 0.32 -0.32 -0.875 | 0.32 -0.32 -0.875 | ||||||
| 0.4 -0.4 -0.5 | 0.4 -0.4 -0.5 | ||||||
| 0.4 0.4 -0.5 | 0.4 0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.882353 0 -0.470588 | 0.882353 0 -0.470588 | ||||||
| 0.882353 0 -0.470588 | 0.882353 0 -0.470588 | ||||||
| 0.882353 0 -0.470588 | 0.882353 0 -0.470588 | ||||||
| 0.882353 0 -0.470588 | 0.882353 0 -0.470588 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 -0.32 -0.875 | -0.32 -0.32 -0.875 | ||||||
| -0.32 0.32 -0.875 | -0.32 0.32 -0.875 | ||||||
| -0.4 0.4 -0.5 | -0.4 0.4 -0.5 | ||||||
| -0.4 -0.4 -0.5 | -0.4 -0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -0.882353 0 -0.470589 | -0.882353 0 -0.470589 | ||||||
| -0.882353 0 -0.470589 | -0.882353 0 -0.470589 | ||||||
| -0.882353 0 -0.470589 | -0.882353 0 -0.470589 | ||||||
| -0.882353 0 -0.470589 | -0.882353 0 -0.470589 | ||||||
| ----------------north quads: | ----------------north quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| ----------------east quads: | ----------------east quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0 0 | 0 0 | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| ----------------south quads: | ----------------south quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| ----------------west quads: | ----------------west quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| 1 0 | 1 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| ----------------omni quads: | ----------------omni quads: | ||||||
| 0 | 0 | ||||||
|   | |||||||
| @@ -1,403 +1,403 @@ | |||||||
| 1 1 1 | 1 1 1 | ||||||
| SPECIAL | SPECIAL | ||||||
|  |  | ||||||
| b | b | ||||||
|  |  | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| 0 0 0 | 0 0 0 | ||||||
| 1 1 1 | 1 1 1 | ||||||
| COVERAGE: | COVERAGE: | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| ----------------top quads: | ----------------top quads: | ||||||
| 6 | 6 | ||||||
|  |  | ||||||
| TEX:TOP | TEX:TOP | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 -0.32 0.875 | -0.32 -0.32 0.875 | ||||||
| 0.32 -0.32 0.875 | 0.32 -0.32 0.875 | ||||||
| 0.4 -0.4 0.5 | 0.4 -0.4 0.5 | ||||||
| -0.4 -0.4 0.5 | -0.4 -0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -0.882353 0.470588 | 0 -0.882353 0.470588 | ||||||
| 0 -0.882353 0.470588 | 0 -0.882353 0.470588 | ||||||
| 0 -0.882353 0.470588 | 0 -0.882353 0.470588 | ||||||
| 0 -0.882353 0.470588 | 0 -0.882353 0.470588 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 -0.32 0.875 | -0.32 -0.32 0.875 | ||||||
| -0.32 0.32 0.875 | -0.32 0.32 0.875 | ||||||
| 0.32 0.32 0.875 | 0.32 0.32 0.875 | ||||||
| 0.32 -0.32 0.875 | 0.32 -0.32 0.875 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 0.32 0.875 | 0.32 0.32 0.875 | ||||||
| -0.32 0.32 0.875 | -0.32 0.32 0.875 | ||||||
| -0.4 0.4 0.5 | -0.4 0.4 0.5 | ||||||
| 0.4 0.4 0.5 | 0.4 0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0.882353 0.470588 | 0 0.882353 0.470588 | ||||||
| 0 0.882353 0.470588 | 0 0.882353 0.470588 | ||||||
| 0 0.882353 0.470588 | 0 0.882353 0.470588 | ||||||
| 0 0.882353 0.470588 | 0 0.882353 0.470588 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 0.32 0.875 | -0.32 0.32 0.875 | ||||||
| -0.32 -0.32 0.875 | -0.32 -0.32 0.875 | ||||||
| -0.4 -0.4 0.5 | -0.4 -0.4 0.5 | ||||||
| -0.4 0.4 0.5 | -0.4 0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -0.882353 0 0.470588 | -0.882353 0 0.470588 | ||||||
| -0.882353 0 0.470588 | -0.882353 0 0.470588 | ||||||
| -0.882353 0 0.470588 | -0.882353 0 0.470588 | ||||||
| -0.882353 0 0.470588 | -0.882353 0 0.470588 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 -0.32 0.875 | 0.32 -0.32 0.875 | ||||||
| 0.32 0.32 0.875 | 0.32 0.32 0.875 | ||||||
| 0.4 0.4 0.5 | 0.4 0.4 0.5 | ||||||
| 0.4 -0.4 0.5 | 0.4 -0.4 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.882353 0 0.470588 | 0.882353 0 0.470588 | ||||||
| 0.882353 0 0.470588 | 0.882353 0 0.470588 | ||||||
| 0.882353 0 0.470588 | 0.882353 0 0.470588 | ||||||
| 0.882353 0 0.470588 | 0.882353 0 0.470588 | ||||||
| ----------------bottom quads: | ----------------bottom quads: | ||||||
| 9 | 9 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.4 -0.4 -0.75 | 0.4 -0.4 -0.75 | ||||||
| -0.4 -0.4 -0.75 | -0.4 -0.4 -0.75 | ||||||
| -0.4 -0.4 -0.5 | -0.4 -0.4 -0.5 | ||||||
| 0.4 -0.4 -0.5 | 0.4 -0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.4 -0.4 -0.75 | 0.4 -0.4 -0.75 | ||||||
| 0.4 0.4 -0.75 | 0.4 0.4 -0.75 | ||||||
| -0.4 0.4 -0.75 | -0.4 0.4 -0.75 | ||||||
| -0.4 -0.4 -0.75 | -0.4 -0.4 -0.75 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 0.4 -0.75 | -0.4 0.4 -0.75 | ||||||
| 0.4 0.4 -0.75 | 0.4 0.4 -0.75 | ||||||
| 0.4 0.4 -0.5 | 0.4 0.4 -0.5 | ||||||
| -0.4 0.4 -0.5 | -0.4 0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.4 0.4 -0.75 | 0.4 0.4 -0.75 | ||||||
| 0.4 -0.4 -0.75 | 0.4 -0.4 -0.75 | ||||||
| 0.4 -0.4 -0.5 | 0.4 -0.4 -0.5 | ||||||
| 0.4 0.4 -0.5 | 0.4 0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 -0.4 -0.75 | -0.4 -0.4 -0.75 | ||||||
| -0.4 0.4 -0.75 | -0.4 0.4 -0.75 | ||||||
| -0.4 0.4 -0.5 | -0.4 0.4 -0.5 | ||||||
| -0.4 -0.4 -0.5 | -0.4 -0.4 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 -0 | -1 0 -0 | ||||||
| -1 0 -0 | -1 0 -0 | ||||||
| -1 0 -0 | -1 0 -0 | ||||||
| -1 0 -0 | -1 0 -0 | ||||||
| ----------------north quads: | ----------------north quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| ----------------east quads: | ----------------east quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0 0 | 0 0 | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| ----------------south quads: | ----------------south quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| ----------------west quads: | ----------------west quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| 1 0 | 1 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| ----------------omni quads: | ----------------omni quads: | ||||||
| 0 | 0 | ||||||
|   | |||||||
| @@ -1,403 +1,403 @@ | |||||||
| 1 1 1 | 1 1 1 | ||||||
| SPECIAL | SPECIAL | ||||||
|  |  | ||||||
| b | b | ||||||
|  |  | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| 0 0 0 | 0 0 0 | ||||||
| 1 1 1 | 1 1 1 | ||||||
| COVERAGE: | COVERAGE: | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| ----------------top quads: | ----------------top quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| ----------------bottom quads: | ----------------bottom quads: | ||||||
| 4 | 4 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| 0 0 -0.5 | 0 0 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| ----------------north quads: | ----------------north quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1.02148 -0.0859375 | 1.02148 -0.0859375 | ||||||
| 1.02148 1.08594 | 1.02148 1.08594 | ||||||
| -0.0214844 1.08594 | -0.0214844 1.08594 | ||||||
| -0.0214844 -0.0859375 | -0.0214844 -0.0859375 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| ----------------east quads: | ----------------east quads: | ||||||
| 6 | 6 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| 0.5 0.5 0.5 | 0.5 0.5 0.5 | ||||||
| 0.5 0.5 -0.5 | 0.5 0.5 -0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.0214844 -0.0859375 | -0.0214844 -0.0859375 | ||||||
| 1.02148 -0.0859375 | 1.02148 -0.0859375 | ||||||
| 1.02148 1.08594 | 1.02148 1.08594 | ||||||
| -0.0214844 1.08594 | -0.0214844 1.08594 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.75 -0.32 -0.24 | 0.75 -0.32 -0.24 | ||||||
| 0.75 0.32 -0.24 | 0.75 0.32 -0.24 | ||||||
| 0.5 0.4 -0.3 | 0.5 0.4 -0.3 | ||||||
| 0.5 -0.4 -0.3 | 0.5 -0.4 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.095561 0 -0.995424 | 0.095561 0 -0.995424 | ||||||
| 0.095561 0 -0.995424 | 0.095561 0 -0.995424 | ||||||
| 0.095561 0 -0.995424 | 0.095561 0 -0.995424 | ||||||
| 0.095561 0 -0.995424 | 0.095561 0 -0.995424 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.75 -0.32 -0.24 | 0.75 -0.32 -0.24 | ||||||
| 0.75 -0.32 0.24 | 0.75 -0.32 0.24 | ||||||
| 0.75 0.32 0.24 | 0.75 0.32 0.24 | ||||||
| 0.75 0.32 -0.24 | 0.75 0.32 -0.24 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.75 0.32 0.24 | 0.75 0.32 0.24 | ||||||
| 0.75 -0.32 0.24 | 0.75 -0.32 0.24 | ||||||
| 0.5 -0.4 0.3 | 0.5 -0.4 0.3 | ||||||
| 0.5 0.4 0.3 | 0.5 0.4 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.095561 0 0.995424 | 0.095561 0 0.995424 | ||||||
| 0.095561 0 0.995424 | 0.095561 0 0.995424 | ||||||
| 0.095561 0 0.995424 | 0.095561 0 0.995424 | ||||||
| 0.095561 0 0.995424 | 0.095561 0 0.995424 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.75 0.32 -0.24 | 0.75 0.32 -0.24 | ||||||
| 0.75 0.32 0.24 | 0.75 0.32 0.24 | ||||||
| 0.5 0.4 0.3 | 0.5 0.4 0.3 | ||||||
| 0.5 0.4 -0.3 | 0.5 0.4 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.304776 0.952424 0 | 0.304776 0.952424 0 | ||||||
| 0.304776 0.952424 0 | 0.304776 0.952424 0 | ||||||
| 0.304776 0.952424 0 | 0.304776 0.952424 0 | ||||||
| 0.304776 0.952424 0 | 0.304776 0.952424 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.75 -0.32 0.24 | 0.75 -0.32 0.24 | ||||||
| 0.75 -0.32 -0.24 | 0.75 -0.32 -0.24 | ||||||
| 0.5 -0.4 -0.3 | 0.5 -0.4 -0.3 | ||||||
| 0.5 -0.4 0.3 | 0.5 -0.4 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.304776 -0.952424 0 | 0.304776 -0.952424 0 | ||||||
| 0.304776 -0.952424 0 | 0.304776 -0.952424 0 | ||||||
| 0.304776 -0.952424 0 | 0.304776 -0.952424 0 | ||||||
| 0.304776 -0.952424 0 | 0.304776 -0.952424 0 | ||||||
| ----------------south quads: | ----------------south quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 0.5 | 0.5 -0.5 0.5 | ||||||
| 0.5 -0.5 -0.5 | 0.5 -0.5 -0.5 | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1.02148 -0.0859375 | 1.02148 -0.0859375 | ||||||
| 1.02148 1.08594 | 1.02148 1.08594 | ||||||
| -0.0214844 1.08594 | -0.0214844 1.08594 | ||||||
| -0.0214844 -0.0859375 | -0.0214844 -0.0859375 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| ----------------west quads: | ----------------west quads: | ||||||
| 6 | 6 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -0.5 | -0.5 -0.5 -0.5 | ||||||
| -0.5 0.5 -0.5 | -0.5 0.5 -0.5 | ||||||
| -0.5 0.5 0.5 | -0.5 0.5 0.5 | ||||||
| -0.5 -0.5 0.5 | -0.5 -0.5 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1.02148 1.08594 | 1.02148 1.08594 | ||||||
| -0.0214844 1.08594 | -0.0214844 1.08594 | ||||||
| -0.0214844 -0.0859375 | -0.0214844 -0.0859375 | ||||||
| 1.02148 -0.0859375 | 1.02148 -0.0859375 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.64 0.4 -0.3 | -0.64 0.4 -0.3 | ||||||
| -0.64 -0.4 -0.3 | -0.64 -0.4 -0.3 | ||||||
| -0.5 -0.4 -0.3 | -0.5 -0.4 -0.3 | ||||||
| -0.5 0.4 -0.3 | -0.5 0.4 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.64 0.4 -0.3 | -0.64 0.4 -0.3 | ||||||
| -0.64 0.4 0.3 | -0.64 0.4 0.3 | ||||||
| -0.64 -0.4 0.3 | -0.64 -0.4 0.3 | ||||||
| -0.64 -0.4 -0.3 | -0.64 -0.4 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.64 -0.4 0.3 | -0.64 -0.4 0.3 | ||||||
| -0.64 0.4 0.3 | -0.64 0.4 0.3 | ||||||
| -0.5 0.4 0.3 | -0.5 0.4 0.3 | ||||||
| -0.5 -0.4 0.3 | -0.5 -0.4 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.64 -0.4 -0.3 | -0.64 -0.4 -0.3 | ||||||
| -0.64 -0.4 0.3 | -0.64 -0.4 0.3 | ||||||
| -0.5 -0.4 0.3 | -0.5 -0.4 0.3 | ||||||
| -0.5 -0.4 -0.3 | -0.5 -0.4 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.64 0.4 0.3 | -0.64 0.4 0.3 | ||||||
| -0.64 0.4 -0.3 | -0.64 0.4 -0.3 | ||||||
| -0.5 0.4 -0.3 | -0.5 0.4 -0.3 | ||||||
| -0.5 0.4 0.3 | -0.5 0.4 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -0 1 0 | -0 1 0 | ||||||
| -0 1 0 | -0 1 0 | ||||||
| -0 1 0 | -0 1 0 | ||||||
| -0 1 0 | -0 1 0 | ||||||
| ----------------omni quads: | ----------------omni quads: | ||||||
| 0 | 0 | ||||||
|   | |||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1,294 +1,294 @@ | |||||||
| 1 1 2 | 1 1 2 | ||||||
| SPECIAL | SPECIAL | ||||||
|  |  | ||||||
| u | u | ||||||
| d | d | ||||||
|  |  | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| 0 0 0 | 0 0 0 | ||||||
| 1 1 2 | 1 1 2 | ||||||
| COVERAGE: | COVERAGE: | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 2 | 1 : 2 | ||||||
| 1 : 2 | 1 : 2 | ||||||
| 1 : 2 | 1 : 2 | ||||||
| 1 : 2 | 1 : 2 | ||||||
| ----------------top quads: | ----------------top quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:TOP | TEX:TOP | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 1 | 0.5 0.5 1 | ||||||
| 0.5 -0.5 1 | 0.5 -0.5 1 | ||||||
| -0.5 -0.5 1 | -0.5 -0.5 1 | ||||||
| -0.5 0.5 1 | -0.5 0.5 1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| ----------------bottom quads: | ----------------bottom quads: | ||||||
| 4 | 4 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -1 | -0.5 -0.5 -1 | ||||||
| 0.5 -0.5 -1 | 0.5 -0.5 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 0.5 -1 | 0.5 0.5 -1 | ||||||
| -0.5 0.5 -1 | -0.5 0.5 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 -1 | 0.5 -0.5 -1 | ||||||
| 0.5 0.5 -1 | 0.5 0.5 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 -1 | -0.5 0.5 -1 | ||||||
| -0.5 -0.5 -1 | -0.5 -0.5 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| ----------------north quads: | ----------------north quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 0.5 1 | -0.5 0.5 1 | ||||||
| -0.5 0.5 -1 | -0.5 0.5 -1 | ||||||
| 0.5 0.5 -1 | 0.5 0.5 -1 | ||||||
| 0.5 0.5 1 | 0.5 0.5 1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| ----------------east quads: | ----------------east quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 1 | 0.5 -0.5 1 | ||||||
| 0.5 0.5 1 | 0.5 0.5 1 | ||||||
| 0.5 0.5 -1 | 0.5 0.5 -1 | ||||||
| 0.5 -0.5 -1 | 0.5 -0.5 -1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.0214844 -0.0322266 | -0.0214844 -0.0322266 | ||||||
| 1.02148 -0.0322266 | 1.02148 -0.0322266 | ||||||
| 1.02148 1.03223 | 1.02148 1.03223 | ||||||
| -0.0214844 1.03223 | -0.0214844 1.03223 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| ----------------south quads: | ----------------south quads: | ||||||
| 6 | 6 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -0.5 1 | 0.5 -0.5 1 | ||||||
| 0.5 -0.5 -1 | 0.5 -0.5 -1 | ||||||
| -0.5 -0.5 -1 | -0.5 -0.5 -1 | ||||||
| -0.5 -0.5 1 | -0.5 -0.5 1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1.02148 -0.0322266 | 1.02148 -0.0322266 | ||||||
| 1.02148 1.03223 | 1.02148 1.03223 | ||||||
| -0.0214844 1.03223 | -0.0214844 1.03223 | ||||||
| -0.0214844 -0.0322266 | -0.0214844 -0.0322266 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 -0.64 -0.8 | -0.4 -0.64 -0.8 | ||||||
| 0.4 -0.64 -0.8 | 0.4 -0.64 -0.8 | ||||||
| 0.4 -0.5 -0.8 | 0.4 -0.5 -0.8 | ||||||
| -0.4 -0.5 -0.8 | -0.4 -0.5 -0.8 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 -0.64 -0.8 | -0.4 -0.64 -0.8 | ||||||
| -0.4 -0.64 -0.2 | -0.4 -0.64 -0.2 | ||||||
| 0.4 -0.64 -0.2 | 0.4 -0.64 -0.2 | ||||||
| 0.4 -0.64 -0.8 | 0.4 -0.64 -0.8 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.4 -0.64 -0.2 | 0.4 -0.64 -0.2 | ||||||
| -0.4 -0.64 -0.2 | -0.4 -0.64 -0.2 | ||||||
| -0.4 -0.5 -0.2 | -0.4 -0.5 -0.2 | ||||||
| 0.4 -0.5 -0.2 | 0.4 -0.5 -0.2 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.4 -0.64 -0.8 | 0.4 -0.64 -0.8 | ||||||
| 0.4 -0.64 -0.2 | 0.4 -0.64 -0.2 | ||||||
| 0.4 -0.5 -0.2 | 0.4 -0.5 -0.2 | ||||||
| 0.4 -0.5 -0.8 | 0.4 -0.5 -0.8 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.4 -0.64 -0.2 | -0.4 -0.64 -0.2 | ||||||
| -0.4 -0.64 -0.8 | -0.4 -0.64 -0.8 | ||||||
| -0.4 -0.5 -0.8 | -0.4 -0.5 -0.8 | ||||||
| -0.4 -0.5 -0.2 | -0.4 -0.5 -0.2 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| ----------------west quads: | ----------------west quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -0.5 -1 | -0.5 -0.5 -1 | ||||||
| -0.5 0.5 -1 | -0.5 0.5 -1 | ||||||
| -0.5 0.5 1 | -0.5 0.5 1 | ||||||
| -0.5 -0.5 1 | -0.5 -0.5 1 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1.02148 1.03223 | 1.02148 1.03223 | ||||||
| -0.0214844 1.03223 | -0.0214844 1.03223 | ||||||
| -0.0214844 -0.0322266 | -0.0214844 -0.0322266 | ||||||
| 1.02148 -0.0322266 | 1.02148 -0.0322266 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| ----------------omni quads: | ----------------omni quads: | ||||||
| 0 | 0 | ||||||
|   | |||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -1,405 +1,405 @@ | |||||||
| 1 2 1 | 1 2 1 | ||||||
| SPECIAL | SPECIAL | ||||||
|  |  | ||||||
| b | b | ||||||
|  |  | ||||||
| b | b | ||||||
|  |  | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| 0 0 0 | 0 0 0 | ||||||
| 1 2 1 | 1 2 1 | ||||||
| COVERAGE: | COVERAGE: | ||||||
| 1 : 2 | 1 : 2 | ||||||
| 1 : 2 | 1 : 2 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 2 | 1 : 2 | ||||||
| 1 : 1 | 1 : 1 | ||||||
| 1 : 2 | 1 : 2 | ||||||
| ----------------top quads: | ----------------top quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:PRINT | TEX:PRINT | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 1 0.5 | 0.5 1 0.5 | ||||||
| 0.5 -1 0.5 | 0.5 -1 0.5 | ||||||
| -0.5 -1 0.5 | -0.5 -1 0.5 | ||||||
| -0.5 1 0.5 | -0.5 1 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 0 | 1 0 | ||||||
| 1 1 | 1 1 | ||||||
| 0 1 | 0 1 | ||||||
| 0 0 | 0 0 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| 0 0 1 | 0 0 1 | ||||||
| ----------------bottom quads: | ----------------bottom quads: | ||||||
| 4 | 4 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -1 -0.5 | -0.5 -1 -0.5 | ||||||
| 0.5 -1 -0.5 | 0.5 -1 -0.5 | ||||||
| 0 -0.5 -0.5 | 0 -0.5 -0.5 | ||||||
| 0 -0.5 -0.5 | 0 -0.5 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 1 -0.5 | 0.5 1 -0.5 | ||||||
| -0.5 1 -0.5 | -0.5 1 -0.5 | ||||||
| 0 0.5 -0.5 | 0 0.5 -0.5 | ||||||
| 0 0.5 -0.5 | 0 0.5 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 0.5 0 | 0.5 0 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -1 -0.5 | 0.5 -1 -0.5 | ||||||
| 0.5 1 -0.5 | 0.5 1 -0.5 | ||||||
| 0 0.5 -0.5 | 0 0.5 -0.5 | ||||||
| 0 -0.5 -0.5 | 0 -0.5 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 1.5 0 | 1.5 0 | ||||||
| 1 0.5 | 1 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
|  |  | ||||||
| TEX:BOTTOMEDGE | TEX:BOTTOMEDGE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 1 -0.5 | -0.5 1 -0.5 | ||||||
| -0.5 -1 -0.5 | -0.5 -1 -0.5 | ||||||
| 0 -0.5 -0.5 | 0 -0.5 -0.5 | ||||||
| 0 0.5 -0.5 | 0 0.5 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| -0.5 0 | -0.5 0 | ||||||
| 1.5 0 | 1.5 0 | ||||||
| 1 0.5 | 1 0.5 | ||||||
| 0 0.5 | 0 0.5 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| 0 0 -1 | 0 0 -1 | ||||||
| ----------------north quads: | ----------------north quads: | ||||||
| 6 | 6 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 1 0.5 | -0.5 1 0.5 | ||||||
| -0.5 1 -0.5 | -0.5 1 -0.5 | ||||||
| 0.5 1 -0.5 | 0.5 1 -0.5 | ||||||
| 0.5 1 0.5 | 0.5 1 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1.02148 -0.0859375 | 1.02148 -0.0859375 | ||||||
| 1.02148 1.08594 | 1.02148 1.08594 | ||||||
| -0.0214844 1.08594 | -0.0214844 1.08594 | ||||||
| -0.0214844 -0.0859375 | -0.0214844 -0.0859375 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 1.25 -0.24 | 0.32 1.25 -0.24 | ||||||
| -0.32 1.25 -0.24 | -0.32 1.25 -0.24 | ||||||
| -0.4 1 -0.3 | -0.4 1 -0.3 | ||||||
| 0.4 1 -0.3 | 0.4 1 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -0 0.095561 -0.995424 | -0 0.095561 -0.995424 | ||||||
| -0 0.095561 -0.995424 | -0 0.095561 -0.995424 | ||||||
| -0 0.095561 -0.995424 | -0 0.095561 -0.995424 | ||||||
| -0 0.095561 -0.995424 | -0 0.095561 -0.995424 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 1.25 -0.24 | 0.32 1.25 -0.24 | ||||||
| 0.32 1.25 0.24 | 0.32 1.25 0.24 | ||||||
| -0.32 1.25 0.24 | -0.32 1.25 0.24 | ||||||
| -0.32 1.25 -0.24 | -0.32 1.25 -0.24 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
| 0 1 0 | 0 1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 1.25 0.24 | -0.32 1.25 0.24 | ||||||
| 0.32 1.25 0.24 | 0.32 1.25 0.24 | ||||||
| 0.4 1 0.3 | 0.4 1 0.3 | ||||||
| -0.4 1 0.3 | -0.4 1 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -0 0.095561 0.995424 | -0 0.095561 0.995424 | ||||||
| -0 0.095561 0.995424 | -0 0.095561 0.995424 | ||||||
| -0 0.095561 0.995424 | -0 0.095561 0.995424 | ||||||
| -0 0.095561 0.995424 | -0 0.095561 0.995424 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 1.25 -0.24 | -0.32 1.25 -0.24 | ||||||
| -0.32 1.25 0.24 | -0.32 1.25 0.24 | ||||||
| -0.4 1 0.3 | -0.4 1 0.3 | ||||||
| -0.4 1 -0.3 | -0.4 1 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -0.952424 0.304776 0 | -0.952424 0.304776 0 | ||||||
| -0.952424 0.304776 0 | -0.952424 0.304776 0 | ||||||
| -0.952424 0.304776 0 | -0.952424 0.304776 0 | ||||||
| -0.952424 0.304776 0 | -0.952424 0.304776 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 1.25 0.24 | 0.32 1.25 0.24 | ||||||
| 0.32 1.25 -0.24 | 0.32 1.25 -0.24 | ||||||
| 0.4 1 -0.3 | 0.4 1 -0.3 | ||||||
| 0.4 1 0.3 | 0.4 1 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.952424 0.304776 0 | 0.952424 0.304776 0 | ||||||
| 0.952424 0.304776 0 | 0.952424 0.304776 0 | ||||||
| 0.952424 0.304776 0 | 0.952424 0.304776 0 | ||||||
| 0.952424 0.304776 0 | 0.952424 0.304776 0 | ||||||
| ----------------east quads: | ----------------east quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -1 0.5 | 0.5 -1 0.5 | ||||||
| 0.5 1 0.5 | 0.5 1 0.5 | ||||||
| 0.5 1 -0.5 | 0.5 1 -0.5 | ||||||
| 0.5 -1 -0.5 | 0.5 -1 -0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0 -0.0859375 | 0 -0.0859375 | ||||||
| 1 -0.0859375 | 1 -0.0859375 | ||||||
| 1 1.08594 | 1 1.08594 | ||||||
| 0 1.08594 | 0 1.08594 | ||||||
| NORMALS: | NORMALS: | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| 1 0 0 | 1 0 0 | ||||||
| ----------------south quads: | ----------------south quads: | ||||||
| 6 | 6 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.5 -1 0.5 | 0.5 -1 0.5 | ||||||
| 0.5 -1 -0.5 | 0.5 -1 -0.5 | ||||||
| -0.5 -1 -0.5 | -0.5 -1 -0.5 | ||||||
| -0.5 -1 0.5 | -0.5 -1 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1.02148 -0.0859375 | 1.02148 -0.0859375 | ||||||
| 1.02148 1.08594 | 1.02148 1.08594 | ||||||
| -0.0214844 1.08594 | -0.0214844 1.08594 | ||||||
| -0.0214844 -0.0859375 | -0.0214844 -0.0859375 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 -1.25 -0.24 | -0.32 -1.25 -0.24 | ||||||
| 0.32 -1.25 -0.24 | 0.32 -1.25 -0.24 | ||||||
| 0.4 -1 -0.3 | 0.4 -1 -0.3 | ||||||
| -0.4 -1 -0.3 | -0.4 -1 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -0.095561 -0.995424 | 0 -0.095561 -0.995424 | ||||||
| 0 -0.095561 -0.995424 | 0 -0.095561 -0.995424 | ||||||
| 0 -0.095561 -0.995424 | 0 -0.095561 -0.995424 | ||||||
| 0 -0.095561 -0.995424 | 0 -0.095561 -0.995424 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 -1.25 -0.24 | -0.32 -1.25 -0.24 | ||||||
| -0.32 -1.25 0.24 | -0.32 -1.25 0.24 | ||||||
| 0.32 -1.25 0.24 | 0.32 -1.25 0.24 | ||||||
| 0.32 -1.25 -0.24 | 0.32 -1.25 -0.24 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
| 0 -1 0 | 0 -1 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 -1.25 0.24 | 0.32 -1.25 0.24 | ||||||
| -0.32 -1.25 0.24 | -0.32 -1.25 0.24 | ||||||
| -0.4 -1 0.3 | -0.4 -1 0.3 | ||||||
| 0.4 -1 0.3 | 0.4 -1 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0 -0.095561 0.995424 | 0 -0.095561 0.995424 | ||||||
| 0 -0.095561 0.995424 | 0 -0.095561 0.995424 | ||||||
| 0 -0.095561 0.995424 | 0 -0.095561 0.995424 | ||||||
| 0 -0.095561 0.995424 | 0 -0.095561 0.995424 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| 0.32 -1.25 -0.24 | 0.32 -1.25 -0.24 | ||||||
| 0.32 -1.25 0.24 | 0.32 -1.25 0.24 | ||||||
| 0.4 -1 0.3 | 0.4 -1 0.3 | ||||||
| 0.4 -1 -0.3 | 0.4 -1 -0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| 0.952424 -0.304776 0 | 0.952424 -0.304776 0 | ||||||
| 0.952424 -0.304776 0 | 0.952424 -0.304776 0 | ||||||
| 0.952424 -0.304776 0 | 0.952424 -0.304776 0 | ||||||
| 0.952424 -0.304776 0 | 0.952424 -0.304776 0 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.32 -1.25 0.24 | -0.32 -1.25 0.24 | ||||||
| -0.32 -1.25 -0.24 | -0.32 -1.25 -0.24 | ||||||
| -0.4 -1 -0.3 | -0.4 -1 -0.3 | ||||||
| -0.4 -1 0.3 | -0.4 -1 0.3 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| 0.5 0.5 | 0.5 0.5 | ||||||
| COLORS: | COLORS: | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| 1 1 1 1 | 1 1 1 1 | ||||||
| NORMALS: | NORMALS: | ||||||
| -0.952424 -0.304775 0 | -0.952424 -0.304775 0 | ||||||
| -0.952424 -0.304775 0 | -0.952424 -0.304775 0 | ||||||
| -0.952424 -0.304775 0 | -0.952424 -0.304775 0 | ||||||
| -0.952424 -0.304775 0 | -0.952424 -0.304775 0 | ||||||
| ----------------west quads: | ----------------west quads: | ||||||
| 1 | 1 | ||||||
|  |  | ||||||
| TEX:SIDE | TEX:SIDE | ||||||
| POSITION: | POSITION: | ||||||
| -0.5 -1 -0.5 | -0.5 -1 -0.5 | ||||||
| -0.5 1 -0.5 | -0.5 1 -0.5 | ||||||
| -0.5 1 0.5 | -0.5 1 0.5 | ||||||
| -0.5 -1 0.5 | -0.5 -1 0.5 | ||||||
| UV COORDS: | UV COORDS: | ||||||
| 1 1.08594 | 1 1.08594 | ||||||
| 0 1.08594 | 0 1.08594 | ||||||
| 0 -0.0859375 | 0 -0.0859375 | ||||||
| 1 -0.0859375 | 1 -0.0859375 | ||||||
| NORMALS: | NORMALS: | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| -1 0 0 | -1 0 0 | ||||||
| ----------------omni quads: | ----------------omni quads: | ||||||
| 0 | 0 | ||||||
|   | |||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 11 1 | 1 11 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 13 1 | 1 13 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 14 1 | 1 14 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 15 1 | 1 15 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 10 | 1 1 10 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 11 | 1 1 11 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 12 | 1 1 12 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 128 | 1 1 128 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 13 | 1 1 13 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 14 | 1 1 14 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 16 | 1 1 16 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 17 | 1 1 17 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 2 | 1 1 2 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 4 | 1 1 4 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 5 | 1 1 5 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 6 | 1 1 6 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 7 | 1 1 7 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 8 | 1 1 8 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 1 9 | 1 1 9 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 2 5 | 1 2 5 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 32 1 | 1 32 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 5 1 | 1 5 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 64 1 | 1 64 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 7 1 | 1 7 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,2 +1,2 @@ | |||||||
| 1 9 1 | 1 9 1 | ||||||
| BRICK | BRICK | ||||||
| @@ -1,120 +1,120 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_8BitDFlipFlop_Data) | datablock fxDTSBrickData(LogicGate_8BitDFlipFlop_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/1x8f_8i_8o_p.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/1x8f_8i_8o_p.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Bus"; | 	subCategory = "Bus"; | ||||||
| 	uiName = "8 Bit D FlipFlop"; | 	uiName = "8 Bit D FlipFlop"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/8 Bit D FlipFlop"; | 	iconName = $LuaLogic::Path @ "icons/8 Bit D FlipFlop"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "8 Bit D FlipFlop"; | 	logicUIName = "8 Bit D FlipFlop"; | ||||||
| 	logicUIDesc = "8 bit d flipflop with clock propagate"; | 	logicUIDesc = "8 bit d flipflop with clock propagate"; | ||||||
|  |  | ||||||
| 	logicUpdate = | 	logicUpdate = | ||||||
| "return function(gate) if gate.ports[9]:isrising() then " @ | "return function(gate) if gate.ports[9]:isrising() then " @ | ||||||
| "	for i = 1, 8 do " @ | "	for i = 1, 8 do " @ | ||||||
| "		gate.ports[i+10]:setstate(gate.ports[i].state) " @ | "		gate.ports[i+10]:setstate(gate.ports[i].state) " @ | ||||||
| "	end " @ | "	end " @ | ||||||
| "end " @ | "end " @ | ||||||
| "gate.ports[10]:setstate(gate.ports[9].state) end"; | "gate.ports[10]:setstate(gate.ports[9].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 18; | 	numLogicPorts = 18; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-7 0 0"; | 	logicPortPos[0] = "-7 0 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortUIName[0] = "D7"; | 	logicPortUIName[0] = "D7"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "-5 0 0"; | 	logicPortPos[1] = "-5 0 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortUIName[1] = "D6"; | 	logicPortUIName[1] = "D6"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "-3 0 0"; | 	logicPortPos[2] = "-3 0 0"; | ||||||
| 	logicPortDir[2] = 3; | 	logicPortDir[2] = 3; | ||||||
| 	logicPortUIName[2] = "D5"; | 	logicPortUIName[2] = "D5"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 1; | 	logicPortType[3] = 1; | ||||||
| 	logicPortPos[3] = "-1 0 0"; | 	logicPortPos[3] = "-1 0 0"; | ||||||
| 	logicPortDir[3] = 3; | 	logicPortDir[3] = 3; | ||||||
| 	logicPortUIName[3] = "D4"; | 	logicPortUIName[3] = "D4"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 1; | 	logicPortType[4] = 1; | ||||||
| 	logicPortPos[4] = "1 0 0"; | 	logicPortPos[4] = "1 0 0"; | ||||||
| 	logicPortDir[4] = 3; | 	logicPortDir[4] = 3; | ||||||
| 	logicPortUIName[4] = "D3"; | 	logicPortUIName[4] = "D3"; | ||||||
|  |  | ||||||
| 	logicPortType[5] = 1; | 	logicPortType[5] = 1; | ||||||
| 	logicPortPos[5] = "3 0 0"; | 	logicPortPos[5] = "3 0 0"; | ||||||
| 	logicPortDir[5] = 3; | 	logicPortDir[5] = 3; | ||||||
| 	logicPortUIName[5] = "D2"; | 	logicPortUIName[5] = "D2"; | ||||||
|  |  | ||||||
| 	logicPortType[6] = 1; | 	logicPortType[6] = 1; | ||||||
| 	logicPortPos[6] = "5 0 0"; | 	logicPortPos[6] = "5 0 0"; | ||||||
| 	logicPortDir[6] = 3; | 	logicPortDir[6] = 3; | ||||||
| 	logicPortUIName[6] = "D1"; | 	logicPortUIName[6] = "D1"; | ||||||
|  |  | ||||||
| 	logicPortType[7] = 1; | 	logicPortType[7] = 1; | ||||||
| 	logicPortPos[7] = "7 0 0"; | 	logicPortPos[7] = "7 0 0"; | ||||||
| 	logicPortDir[7] = 3; | 	logicPortDir[7] = 3; | ||||||
| 	logicPortUIName[7] = "D0"; | 	logicPortUIName[7] = "D0"; | ||||||
|  |  | ||||||
| 	logicPortType[8] = 1; | 	logicPortType[8] = 1; | ||||||
| 	logicPortPos[8] = "7 0 0"; | 	logicPortPos[8] = "7 0 0"; | ||||||
| 	logicPortDir[8] = 2; | 	logicPortDir[8] = 2; | ||||||
| 	logicPortCauseUpdate[8] = true; | 	logicPortCauseUpdate[8] = true; | ||||||
| 	logicPortUIName[8] = "ClockIn"; | 	logicPortUIName[8] = "ClockIn"; | ||||||
|  |  | ||||||
| 	logicPortType[9] = 0; | 	logicPortType[9] = 0; | ||||||
| 	logicPortPos[9] = "-7 0 0"; | 	logicPortPos[9] = "-7 0 0"; | ||||||
| 	logicPortDir[9] = 0; | 	logicPortDir[9] = 0; | ||||||
| 	logicPortUIName[9] = "ClockOut"; | 	logicPortUIName[9] = "ClockOut"; | ||||||
|  |  | ||||||
| 	logicPortType[10] = 0; | 	logicPortType[10] = 0; | ||||||
| 	logicPortPos[10] = "-7 0 0"; | 	logicPortPos[10] = "-7 0 0"; | ||||||
| 	logicPortDir[10] = 1; | 	logicPortDir[10] = 1; | ||||||
| 	logicPortUIName[10] = "Q7"; | 	logicPortUIName[10] = "Q7"; | ||||||
|  |  | ||||||
| 	logicPortType[11] = 0; | 	logicPortType[11] = 0; | ||||||
| 	logicPortPos[11] = "-5 0 0"; | 	logicPortPos[11] = "-5 0 0"; | ||||||
| 	logicPortDir[11] = 1; | 	logicPortDir[11] = 1; | ||||||
| 	logicPortUIName[11] = "Q6"; | 	logicPortUIName[11] = "Q6"; | ||||||
|  |  | ||||||
| 	logicPortType[12] = 0; | 	logicPortType[12] = 0; | ||||||
| 	logicPortPos[12] = "-3 0 0"; | 	logicPortPos[12] = "-3 0 0"; | ||||||
| 	logicPortDir[12] = 1; | 	logicPortDir[12] = 1; | ||||||
| 	logicPortUIName[12] = "Q5"; | 	logicPortUIName[12] = "Q5"; | ||||||
|  |  | ||||||
| 	logicPortType[13] = 0; | 	logicPortType[13] = 0; | ||||||
| 	logicPortPos[13] = "-1 0 0"; | 	logicPortPos[13] = "-1 0 0"; | ||||||
| 	logicPortDir[13] = 1; | 	logicPortDir[13] = 1; | ||||||
| 	logicPortUIName[13] = "Q4"; | 	logicPortUIName[13] = "Q4"; | ||||||
|  |  | ||||||
| 	logicPortType[14] = 0; | 	logicPortType[14] = 0; | ||||||
| 	logicPortPos[14] = "1 0 0"; | 	logicPortPos[14] = "1 0 0"; | ||||||
| 	logicPortDir[14] = 1; | 	logicPortDir[14] = 1; | ||||||
| 	logicPortUIName[14] = "Q3"; | 	logicPortUIName[14] = "Q3"; | ||||||
|  |  | ||||||
| 	logicPortType[15] = 0; | 	logicPortType[15] = 0; | ||||||
| 	logicPortPos[15] = "3 0 0"; | 	logicPortPos[15] = "3 0 0"; | ||||||
| 	logicPortDir[15] = 1; | 	logicPortDir[15] = 1; | ||||||
| 	logicPortUIName[15] = "Q2"; | 	logicPortUIName[15] = "Q2"; | ||||||
|  |  | ||||||
| 	logicPortType[16] = 0; | 	logicPortType[16] = 0; | ||||||
| 	logicPortPos[16] = "5 0 0"; | 	logicPortPos[16] = "5 0 0"; | ||||||
| 	logicPortDir[16] = 1; | 	logicPortDir[16] = 1; | ||||||
| 	logicPortUIName[16] = "Q1"; | 	logicPortUIName[16] = "Q1"; | ||||||
|  |  | ||||||
| 	logicPortType[17] = 0; | 	logicPortType[17] = 0; | ||||||
| 	logicPortPos[17] = "7 0 0"; | 	logicPortPos[17] = "7 0 0"; | ||||||
| 	logicPortDir[17] = 1; | 	logicPortDir[17] = 1; | ||||||
| 	logicPortUIName[17] = "Q0"; | 	logicPortUIName[17] = "Q0"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_8BitDFlipFlop_Data"); | lualogic_registergatedefinition("LogicGate_8BitDFlipFlop_Data"); | ||||||
|   | |||||||
| @@ -1,132 +1,132 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_8BitEnabler_Data) | datablock fxDTSBrickData(LogicGate_8BitEnabler_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/1x8f_8i_8o_p.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/1x8f_8i_8o_p.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Bus"; | 	subCategory = "Bus"; | ||||||
| 	uiName = "8 Bit Enabler"; | 	uiName = "8 Bit Enabler"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/8 Bit Enabler"; | 	iconName = $LuaLogic::Path @ "icons/8 Bit Enabler"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "8 Bit Enabler"; | 	logicUIName = "8 Bit Enabler"; | ||||||
| 	logicUIDesc = "8 bit enabler with enable propagate"; | 	logicUIDesc = "8 bit enabler with enable propagate"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) if gate.ports[9].state then " @ | 	logicUpdate = "return function(gate) if gate.ports[9].state then " @ | ||||||
| "	for i = 1, 8 do " @ | "	for i = 1, 8 do " @ | ||||||
| "		gate.ports[i+10]:setstate(gate.ports[i].state) " @ | "		gate.ports[i+10]:setstate(gate.ports[i].state) " @ | ||||||
| "	end " @ | "	end " @ | ||||||
| "	gate.ports[10]:setstate(true) " @ | "	gate.ports[10]:setstate(true) " @ | ||||||
| "elseif gate.ports[9]:isfalling() then" @ | "elseif gate.ports[9]:isfalling() then" @ | ||||||
| "	for i = 1, 8 do " @ | "	for i = 1, 8 do " @ | ||||||
| "		gate.ports[i+10]:setstate(false) " @ | "		gate.ports[i+10]:setstate(false) " @ | ||||||
| "	end " @ | "	end " @ | ||||||
| "	gate.ports[10]:setstate(false) " @ | "	gate.ports[10]:setstate(false) " @ | ||||||
| "end end"; | "end end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 18; | 	numLogicPorts = 18; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-7 0 0"; | 	logicPortPos[0] = "-7 0 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "D7"; | 	logicPortUIName[0] = "D7"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "-5 0 0"; | 	logicPortPos[1] = "-5 0 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "D6"; | 	logicPortUIName[1] = "D6"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "-3 0 0"; | 	logicPortPos[2] = "-3 0 0"; | ||||||
| 	logicPortDir[2] = 3; | 	logicPortDir[2] = 3; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "D5"; | 	logicPortUIName[2] = "D5"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 1; | 	logicPortType[3] = 1; | ||||||
| 	logicPortPos[3] = "-1 0 0"; | 	logicPortPos[3] = "-1 0 0"; | ||||||
| 	logicPortDir[3] = 3; | 	logicPortDir[3] = 3; | ||||||
| 	logicPortCauseUpdate[3] = true; | 	logicPortCauseUpdate[3] = true; | ||||||
| 	logicPortUIName[3] = "D4"; | 	logicPortUIName[3] = "D4"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 1; | 	logicPortType[4] = 1; | ||||||
| 	logicPortPos[4] = "1 0 0"; | 	logicPortPos[4] = "1 0 0"; | ||||||
| 	logicPortDir[4] = 3; | 	logicPortDir[4] = 3; | ||||||
| 	logicPortCauseUpdate[4] = true; | 	logicPortCauseUpdate[4] = true; | ||||||
| 	logicPortUIName[4] = "D3"; | 	logicPortUIName[4] = "D3"; | ||||||
|  |  | ||||||
| 	logicPortType[5] = 1; | 	logicPortType[5] = 1; | ||||||
| 	logicPortPos[5] = "3 0 0"; | 	logicPortPos[5] = "3 0 0"; | ||||||
| 	logicPortDir[5] = 3; | 	logicPortDir[5] = 3; | ||||||
| 	logicPortCauseUpdate[5] = true; | 	logicPortCauseUpdate[5] = true; | ||||||
| 	logicPortUIName[5] = "D2"; | 	logicPortUIName[5] = "D2"; | ||||||
|  |  | ||||||
| 	logicPortType[6] = 1; | 	logicPortType[6] = 1; | ||||||
| 	logicPortPos[6] = "5 0 0"; | 	logicPortPos[6] = "5 0 0"; | ||||||
| 	logicPortDir[6] = 3; | 	logicPortDir[6] = 3; | ||||||
| 	logicPortCauseUpdate[6] = true; | 	logicPortCauseUpdate[6] = true; | ||||||
| 	logicPortUIName[6] = "D1"; | 	logicPortUIName[6] = "D1"; | ||||||
|  |  | ||||||
| 	logicPortType[7] = 1; | 	logicPortType[7] = 1; | ||||||
| 	logicPortPos[7] = "7 0 0"; | 	logicPortPos[7] = "7 0 0"; | ||||||
| 	logicPortDir[7] = 3; | 	logicPortDir[7] = 3; | ||||||
| 	logicPortCauseUpdate[7] = true; | 	logicPortCauseUpdate[7] = true; | ||||||
| 	logicPortUIName[7] = "D0"; | 	logicPortUIName[7] = "D0"; | ||||||
|  |  | ||||||
| 	logicPortType[8] = 1; | 	logicPortType[8] = 1; | ||||||
| 	logicPortPos[8] = "7 0 0"; | 	logicPortPos[8] = "7 0 0"; | ||||||
| 	logicPortDir[8] = 2; | 	logicPortDir[8] = 2; | ||||||
| 	logicPortCauseUpdate[8] = true; | 	logicPortCauseUpdate[8] = true; | ||||||
| 	logicPortUIName[8] = "EnableIn"; | 	logicPortUIName[8] = "EnableIn"; | ||||||
|  |  | ||||||
| 	logicPortType[9] = 0; | 	logicPortType[9] = 0; | ||||||
| 	logicPortPos[9] = "-7 0 0"; | 	logicPortPos[9] = "-7 0 0"; | ||||||
| 	logicPortDir[9] = 0; | 	logicPortDir[9] = 0; | ||||||
| 	logicPortUIName[9] = "EnableOut"; | 	logicPortUIName[9] = "EnableOut"; | ||||||
|  |  | ||||||
| 	logicPortType[10] = 0; | 	logicPortType[10] = 0; | ||||||
| 	logicPortPos[10] = "-7 0 0"; | 	logicPortPos[10] = "-7 0 0"; | ||||||
| 	logicPortDir[10] = 1; | 	logicPortDir[10] = 1; | ||||||
| 	logicPortUIName[10] = "Q7"; | 	logicPortUIName[10] = "Q7"; | ||||||
|  |  | ||||||
| 	logicPortType[11] = 0; | 	logicPortType[11] = 0; | ||||||
| 	logicPortPos[11] = "-5 0 0"; | 	logicPortPos[11] = "-5 0 0"; | ||||||
| 	logicPortDir[11] = 1; | 	logicPortDir[11] = 1; | ||||||
| 	logicPortUIName[11] = "Q6"; | 	logicPortUIName[11] = "Q6"; | ||||||
|  |  | ||||||
| 	logicPortType[12] = 0; | 	logicPortType[12] = 0; | ||||||
| 	logicPortPos[12] = "-3 0 0"; | 	logicPortPos[12] = "-3 0 0"; | ||||||
| 	logicPortDir[12] = 1; | 	logicPortDir[12] = 1; | ||||||
| 	logicPortUIName[12] = "Q5"; | 	logicPortUIName[12] = "Q5"; | ||||||
|  |  | ||||||
| 	logicPortType[13] = 0; | 	logicPortType[13] = 0; | ||||||
| 	logicPortPos[13] = "-1 0 0"; | 	logicPortPos[13] = "-1 0 0"; | ||||||
| 	logicPortDir[13] = 1; | 	logicPortDir[13] = 1; | ||||||
| 	logicPortUIName[13] = "Q4"; | 	logicPortUIName[13] = "Q4"; | ||||||
|  |  | ||||||
| 	logicPortType[14] = 0; | 	logicPortType[14] = 0; | ||||||
| 	logicPortPos[14] = "1 0 0"; | 	logicPortPos[14] = "1 0 0"; | ||||||
| 	logicPortDir[14] = 1; | 	logicPortDir[14] = 1; | ||||||
| 	logicPortUIName[14] = "Q3"; | 	logicPortUIName[14] = "Q3"; | ||||||
|  |  | ||||||
| 	logicPortType[15] = 0; | 	logicPortType[15] = 0; | ||||||
| 	logicPortPos[15] = "3 0 0"; | 	logicPortPos[15] = "3 0 0"; | ||||||
| 	logicPortDir[15] = 1; | 	logicPortDir[15] = 1; | ||||||
| 	logicPortUIName[15] = "Q2"; | 	logicPortUIName[15] = "Q2"; | ||||||
|  |  | ||||||
| 	logicPortType[16] = 0; | 	logicPortType[16] = 0; | ||||||
| 	logicPortPos[16] = "5 0 0"; | 	logicPortPos[16] = "5 0 0"; | ||||||
| 	logicPortDir[16] = 1; | 	logicPortDir[16] = 1; | ||||||
| 	logicPortUIName[16] = "Q1"; | 	logicPortUIName[16] = "Q1"; | ||||||
|  |  | ||||||
| 	logicPortType[17] = 0; | 	logicPortType[17] = 0; | ||||||
| 	logicPortPos[17] = "7 0 0"; | 	logicPortPos[17] = "7 0 0"; | ||||||
| 	logicPortDir[17] = 1; | 	logicPortDir[17] = 1; | ||||||
| 	logicPortUIName[17] = "Q0"; | 	logicPortUIName[17] = "Q0"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_8BitEnabler_Data"); | lualogic_registergatedefinition("LogicGate_8BitEnabler_Data"); | ||||||
|   | |||||||
| @@ -1,9 +1,9 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_AND_Data : LogicGate_OR_Data) | datablock fxDTSBrickData(LogicGate_AND_Data : LogicGate_OR_Data) | ||||||
| { | { | ||||||
| 	uiName = "1x2f AND"; | 	uiName = "1x2f AND"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/1x2f AND"; | 	iconName = $LuaLogic::Path @ "icons/1x2f AND"; | ||||||
| 	logicUIName = "AND"; | 	logicUIName = "AND"; | ||||||
| 	logicUIDesc = "C is true if A and B are true"; | 	logicUIDesc = "C is true if A and B are true"; | ||||||
| 	logicUpdate = "return function(gate) gate.ports[3]:setstate(gate.ports[1].state and gate.ports[2].state) end"; | 	logicUpdate = "return function(gate) gate.ports[3]:setstate(gate.ports[1].state and gate.ports[2].state) end"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_AND_Data"); | lualogic_registergatedefinition("LogicGate_AND_Data"); | ||||||
|   | |||||||
| @@ -1,9 +1,9 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_NOR_Data : LogicGate_OR_Data) | datablock fxDTSBrickData(LogicGate_NOR_Data : LogicGate_OR_Data) | ||||||
| { | { | ||||||
| 	uiName = "1x2f NOR"; | 	uiName = "1x2f NOR"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/1x2f NOR"; | 	iconName = $LuaLogic::Path @ "icons/1x2f NOR"; | ||||||
| 	logicUIName = "NOR"; | 	logicUIName = "NOR"; | ||||||
| 	logicUIDesc = "C is false if A or B are true"; | 	logicUIDesc = "C is false if A or B are true"; | ||||||
| 	logicUpdate = "return function(gate) gate.ports[3]:setstate(not (gate.ports[1].state or gate.ports[2].state)) end"; | 	logicUpdate = "return function(gate) gate.ports[3]:setstate(not (gate.ports[1].state or gate.ports[2].state)) end"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_NOR_Data"); | lualogic_registergatedefinition("LogicGate_NOR_Data"); | ||||||
|   | |||||||
| @@ -1,24 +1,24 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_NOT_Data : LogicGate_Diode_Data) | datablock fxDTSBrickData(LogicGate_NOT_Data : LogicGate_Diode_Data) | ||||||
| { | { | ||||||
| 	uiName = "1x1f NOT"; | 	uiName = "1x1f NOT"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/1x1f NOT"; | 	iconName = $LuaLogic::Path @ "icons/1x1f NOT"; | ||||||
|  |  | ||||||
| 	logicUIName = "NOT"; | 	logicUIName = "NOT"; | ||||||
| 	logicUIDesc = "B is the opposite of A"; | 	logicUIDesc = "B is the opposite of A"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[2]:setstate(not gate.ports[1].state) end"; | 	logicUpdate = "return function(gate) gate.ports[2]:setstate(not gate.ports[1].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 2; | 	numLogicPorts = 2; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_NOT_Data"); | lualogic_registergatedefinition("LogicGate_NOT_Data"); | ||||||
|  |  | ||||||
| function LogicGate_NOT_Data::onPlant(%this, %obj) | function LogicGate_NOT_Data::onPlant(%this, %obj) | ||||||
| { | { | ||||||
| 	if(lualogic_iscolor("RED")) | 	if(lualogic_iscolor("RED")) | ||||||
| 		%obj.setColor(lualogic_getcolor("RED")); | 		%obj.setColor(lualogic_getcolor("RED")); | ||||||
| 	 | 	 | ||||||
| 	if(lualogic_isprint("ARROW")) | 	if(lualogic_isprint("ARROW")) | ||||||
| 		%obj.setPrint(lualogic_getprint("ARROW")); | 		%obj.setPrint(lualogic_getprint("ARROW")); | ||||||
| 	 | 	 | ||||||
| 	parent::onPlant(%this, %obj); | 	parent::onPlant(%this, %obj); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,37 +1,37 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_OR_Data) | datablock fxDTSBrickData(LogicGate_OR_Data) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Gates"; | 	subCategory = "Gates"; | ||||||
| 	uiName = "1x2f OR"; | 	uiName = "1x2f OR"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/1x2f OR"; | 	iconName = $LuaLogic::Path @ "icons/1x2f OR"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/1x2f_2i_1o.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/1x2f_2i_1o.blb"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
|  |  | ||||||
| 	isLogic = 1; | 	isLogic = 1; | ||||||
| 	isLogicGate = 1; | 	isLogicGate = 1; | ||||||
| 	logicUIName = "OR"; | 	logicUIName = "OR"; | ||||||
| 	logicUIDesc = "C is true if A or B are true"; | 	logicUIDesc = "C is true if A or B are true"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[3]:setstate(gate.ports[1].state or gate.ports[2].state) end"; | 	logicUpdate = "return function(gate) gate.ports[3]:setstate(gate.ports[1].state or gate.ports[2].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 3; | 	numLogicPorts = 3; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "0 1 0"; | 	logicPortPos[0] = "0 1 0"; | ||||||
| 	logicPortDir[0] = "0"; | 	logicPortDir[0] = "0"; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A"; | 	logicPortUIName[0] = "A"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "0 -1 0"; | 	logicPortPos[1] = "0 -1 0"; | ||||||
| 	logicPortDir[1] = "0"; | 	logicPortDir[1] = "0"; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "B"; | 	logicPortUIName[1] = "B"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 0; | 	logicPortType[2] = 0; | ||||||
| 	logicPortPos[2] = "0 -1 0"; | 	logicPortPos[2] = "0 -1 0"; | ||||||
| 	logicPortDir[2] = "2"; | 	logicPortDir[2] = "2"; | ||||||
| 	logicPortUIName[2] = "C"; | 	logicPortUIName[2] = "C"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_OR_Data"); | lualogic_registergatedefinition("LogicGate_OR_Data"); | ||||||
|   | |||||||
| @@ -1,9 +1,9 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_XNOR_Data : LogicGate_OR_Data) | datablock fxDTSBrickData(LogicGate_XNOR_Data : LogicGate_OR_Data) | ||||||
| { | { | ||||||
| 	uiName = "1x2f XNOR"; | 	uiName = "1x2f XNOR"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/1x2f XNOR"; | 	iconName = $LuaLogic::Path @ "icons/1x2f XNOR"; | ||||||
| 	logicUIName = "XNOR"; | 	logicUIName = "XNOR"; | ||||||
| 	logicUIDesc = "C is true if A and B are both true or both false"; | 	logicUIDesc = "C is true if A and B are both true or both false"; | ||||||
| 	logicUpdate = "return function(gate) gate.ports[3]:setstate((gate.ports[1].state and gate.ports[2].state) or (not gate.ports[1].state and not gate.ports[2].state)) end"; | 	logicUpdate = "return function(gate) gate.ports[3]:setstate((gate.ports[1].state and gate.ports[2].state) or (not gate.ports[1].state and not gate.ports[2].state)) end"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_XNOR_Data"); | lualogic_registergatedefinition("LogicGate_XNOR_Data"); | ||||||
|   | |||||||
| @@ -1,9 +1,9 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_XOR_Data : LogicGate_OR_Data) | datablock fxDTSBrickData(LogicGate_XOR_Data : LogicGate_OR_Data) | ||||||
| { | { | ||||||
| 	uiName = "1x2f XOR"; | 	uiName = "1x2f XOR"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/1x2f XOR"; | 	iconName = $LuaLogic::Path @ "icons/1x2f XOR"; | ||||||
| 	logicUIName = "XOR"; | 	logicUIName = "XOR"; | ||||||
| 	logicUIDesc = "C is true if A or B are true but false if A and B are true"; | 	logicUIDesc = "C is true if A or B are true but false if A and B are true"; | ||||||
| 	logicUpdate = "return function(gate) gate.ports[3]:setstate((gate.ports[1].state or gate.ports[2].state) and not (gate.ports[1].state and gate.ports[2].state)) end"; | 	logicUpdate = "return function(gate) gate.ports[3]:setstate((gate.ports[1].state or gate.ports[2].state) and not (gate.ports[1].state and gate.ports[2].state)) end"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_XOR_Data"); | lualogic_registergatedefinition("LogicGate_XOR_Data"); | ||||||
|   | |||||||
| @@ -1,44 +1,44 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_Diode_Data) | datablock fxDTSBrickData(LogicGate_Diode_Data) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Gates"; | 	subCategory = "Gates"; | ||||||
| 	uiName = "1x1f Diode"; | 	uiName = "1x1f Diode"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/1x1f Diode"; | 	iconName = $LuaLogic::Path @ "icons/1x1f Diode"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/1x1f_1i_1o.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/1x1f_1i_1o.blb"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
|  |  | ||||||
| 	isLogic = 1; | 	isLogic = 1; | ||||||
| 	isLogicGate = 1; | 	isLogicGate = 1; | ||||||
| 	logicUIName = "Diode"; | 	logicUIName = "Diode"; | ||||||
| 	logicUIDesc = "B is A"; | 	logicUIDesc = "B is A"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[2]:setstate(gate.ports[1].state) end"; | 	logicUpdate = "return function(gate) gate.ports[2]:setstate(gate.ports[1].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 2; | 	numLogicPorts = 2; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "0 0 0"; | 	logicPortPos[0] = "0 0 0"; | ||||||
| 	logicPortDir[0] = "0"; | 	logicPortDir[0] = "0"; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A"; | 	logicPortUIName[0] = "A"; | ||||||
| 	logicPortUIDesc[0] = ""; | 	logicPortUIDesc[0] = ""; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 0; | 	logicPortType[1] = 0; | ||||||
| 	logicPortPos[1] = "0 0 0"; | 	logicPortPos[1] = "0 0 0"; | ||||||
| 	logicPortDir[1] = "2"; | 	logicPortDir[1] = "2"; | ||||||
| 	logicPortUIName[1] = "B"; | 	logicPortUIName[1] = "B"; | ||||||
| 	logicPortUIDesc[1] = ""; | 	logicPortUIDesc[1] = ""; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_Diode_Data"); | lualogic_registergatedefinition("LogicGate_Diode_Data"); | ||||||
|  |  | ||||||
| function LogicGate_Diode_Data::onPlant(%this, %obj) | function LogicGate_Diode_Data::onPlant(%this, %obj) | ||||||
| { | { | ||||||
| 	if(lualogic_iscolor("GREEN")) | 	if(lualogic_iscolor("GREEN")) | ||||||
| 		%obj.setColor(lualogic_getcolor("GREEN")); | 		%obj.setColor(lualogic_getcolor("GREEN")); | ||||||
| 	 | 	 | ||||||
| 	if(lualogic_isprint("ARROW")) | 	if(lualogic_isprint("ARROW")) | ||||||
| 		%obj.setPrint(lualogic_getprint("ARROW")); | 		%obj.setPrint(lualogic_getprint("ARROW")); | ||||||
| 	 | 	 | ||||||
| 	parent::onPlant(%this, %obj); | 	parent::onPlant(%this, %obj); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,69 +1,69 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_DiodeUp_Data) | datablock fxDTSBrickData(LogicGate_DiodeUp_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/1x1fU_1i_1o.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/1x1fU_1i_1o.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Gates"; | 	subCategory = "Gates"; | ||||||
| 	uiName = "Diode Up"; | 	uiName = "Diode Up"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Diode Up"; | 	iconName = $LuaLogic::Path @ "icons/Diode Up"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "Diode Up"; | 	logicUIName = "Diode Up"; | ||||||
| 	logicUIDesc = "B is A"; | 	logicUIDesc = "B is A"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[2]:setstate(gate.ports[1].state) end"; | 	logicUpdate = "return function(gate) gate.ports[2]:setstate(gate.ports[1].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 2; | 	numLogicPorts = 2; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "0 0 0"; | 	logicPortPos[0] = "0 0 0"; | ||||||
| 	logicPortDir[0] = 5; | 	logicPortDir[0] = 5; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A"; | 	logicPortUIName[0] = "A"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 0; | 	logicPortType[1] = 0; | ||||||
| 	logicPortPos[1] = "0 0 0"; | 	logicPortPos[1] = "0 0 0"; | ||||||
| 	logicPortDir[1] = 4; | 	logicPortDir[1] = 4; | ||||||
| 	logicPortUIName[1] = "B"; | 	logicPortUIName[1] = "B"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_DiodeUp_Data"); | lualogic_registergatedefinition("LogicGate_DiodeUp_Data"); | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicGate_DiodeDown_Data : LogicGate_DiodeUp_Data) | datablock fxDTSBrickData(LogicGate_DiodeDown_Data : LogicGate_DiodeUp_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/1x1fD_1i_1o.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/1x1fD_1i_1o.blb"; | ||||||
| 	uiName = "Diode Down"; | 	uiName = "Diode Down"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Diode Down"; | 	iconName = $LuaLogic::Path @ "icons/Diode Down"; | ||||||
|  |  | ||||||
| 	logicUIName = "Diode Down"; | 	logicUIName = "Diode Down"; | ||||||
|  |  | ||||||
| 	logicPortDir[0] = 4; | 	logicPortDir[0] = 4; | ||||||
| 	logicPortDir[1] = 5; | 	logicPortDir[1] = 5; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_DiodeDown_Data"); | lualogic_registergatedefinition("LogicGate_DiodeDown_Data"); | ||||||
|  |  | ||||||
| function LogicGate_DiodeUp_Data::onPlant(%this, %obj) | function LogicGate_DiodeUp_Data::onPlant(%this, %obj) | ||||||
| { | { | ||||||
| 	if(lualogic_iscolor("GREEN")) | 	if(lualogic_iscolor("GREEN")) | ||||||
| 		%obj.setColor(lualogic_getcolor("GREEN")); | 		%obj.setColor(lualogic_getcolor("GREEN")); | ||||||
| 	 | 	 | ||||||
| 	if(lualogic_isprint("UPARROW")) | 	if(lualogic_isprint("UPARROW")) | ||||||
| 		%obj.setPrint(lualogic_getprint("UPARROW")); | 		%obj.setPrint(lualogic_getprint("UPARROW")); | ||||||
| 	 | 	 | ||||||
| 	parent::onPlant(%this, %obj); | 	parent::onPlant(%this, %obj); | ||||||
| } | } | ||||||
|  |  | ||||||
| function LogicGate_DiodeDown_Data::onPlant(%this, %obj) | function LogicGate_DiodeDown_Data::onPlant(%this, %obj) | ||||||
| { | { | ||||||
| 	if(lualogic_iscolor("GREEN")) | 	if(lualogic_iscolor("GREEN")) | ||||||
| 		%obj.setColor(lualogic_getcolor("GREEN")); | 		%obj.setColor(lualogic_getcolor("GREEN")); | ||||||
| 	 | 	 | ||||||
| 	if(lualogic_isprint("DOWNARROW")) | 	if(lualogic_isprint("DOWNARROW")) | ||||||
| 		%obj.setPrint(lualogic_getprint("DOWNARROW")); | 		%obj.setPrint(lualogic_getprint("DOWNARROW")); | ||||||
| 	 | 	 | ||||||
| 	parent::onPlant(%this, %obj); | 	parent::onPlant(%this, %obj); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,45 +1,45 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_NotUp_Data : LogicGate_DiodeUp_Data) | datablock fxDTSBrickData(LogicGate_NotUp_Data : LogicGate_DiodeUp_Data) | ||||||
| { | { | ||||||
| 	uiName = "Not Up"; | 	uiName = "Not Up"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Not Up"; | 	iconName = $LuaLogic::Path @ "icons/Not Up"; | ||||||
|  |  | ||||||
| 	logicUIName = "Not Up"; | 	logicUIName = "Not Up"; | ||||||
| 	logicUIDesc = "B is the inverse of A"; | 	logicUIDesc = "B is the inverse of A"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[2]:setstate(not gate.ports[1].state) end"; | 	logicUpdate = "return function(gate) gate.ports[2]:setstate(not gate.ports[1].state) end"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_NotUp_Data"); | lualogic_registergatedefinition("LogicGate_NotUp_Data"); | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicGate_NotDown_Data : LogicGate_DiodeDown_Data) | datablock fxDTSBrickData(LogicGate_NotDown_Data : LogicGate_DiodeDown_Data) | ||||||
| { | { | ||||||
| 	uiName = "Not Down"; | 	uiName = "Not Down"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Not Down"; | 	iconName = $LuaLogic::Path @ "icons/Not Down"; | ||||||
|  |  | ||||||
| 	logicUIName = "Not Down"; | 	logicUIName = "Not Down"; | ||||||
| 	logicUIDesc = "B is the inverse of A"; | 	logicUIDesc = "B is the inverse of A"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[2]:setstate(not gate.ports[1].state) end"; | 	logicUpdate = "return function(gate) gate.ports[2]:setstate(not gate.ports[1].state) end"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_NotDown_Data"); | lualogic_registergatedefinition("LogicGate_NotDown_Data"); | ||||||
|  |  | ||||||
| function LogicGate_NotUp_Data::onPlant(%this, %obj) | function LogicGate_NotUp_Data::onPlant(%this, %obj) | ||||||
| { | { | ||||||
| 	if(lualogic_iscolor("RED")) | 	if(lualogic_iscolor("RED")) | ||||||
| 		%obj.setColor(lualogic_getcolor("RED")); | 		%obj.setColor(lualogic_getcolor("RED")); | ||||||
| 	 | 	 | ||||||
| 	if(lualogic_isprint("UPARROW")) | 	if(lualogic_isprint("UPARROW")) | ||||||
| 		%obj.setPrint(lualogic_getprint("UPARROW")); | 		%obj.setPrint(lualogic_getprint("UPARROW")); | ||||||
| 	 | 	 | ||||||
| 	parent::onPlant(%this, %obj); | 	parent::onPlant(%this, %obj); | ||||||
| } | } | ||||||
|  |  | ||||||
| function LogicGate_NotDown_Data::onPlant(%this, %obj) | function LogicGate_NotDown_Data::onPlant(%this, %obj) | ||||||
| { | { | ||||||
| 	if(lualogic_iscolor("RED")) | 	if(lualogic_iscolor("RED")) | ||||||
| 		%obj.setColor(lualogic_getcolor("RED")); | 		%obj.setColor(lualogic_getcolor("RED")); | ||||||
| 	 | 	 | ||||||
| 	if(lualogic_isprint("DOWNARROW")) | 	if(lualogic_isprint("DOWNARROW")) | ||||||
| 		%obj.setPrint(lualogic_getprint("DOWNARROW")); | 		%obj.setPrint(lualogic_getprint("DOWNARROW")); | ||||||
| 	 | 	 | ||||||
| 	parent::onPlant(%this, %obj); | 	parent::onPlant(%this, %obj); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,24 +1,24 @@ | |||||||
|  |  | ||||||
| return function(gate, argv) | return function(gate, argv) | ||||||
| 	if argv[1]=="\\:" then argv[1] = ";" end | 	if argv[1]=="\\:" then argv[1] = ";" end | ||||||
| 	 | 	 | ||||||
| 	local keycode = keyboard_keyToCode[argv[1]] or keyboard_keyToCode["invalid"] | 	local keycode = keyboard_keyToCode[argv[1]] or keyboard_keyToCode["invalid"] | ||||||
| 	local status = keyboard_strToBool[argv[2]] | 	local status = keyboard_strToBool[argv[2]] | ||||||
| 	 | 	 | ||||||
| 	local code = keycode+(status and 128 or 0) | 	local code = keycode+(status and 128 or 0) | ||||||
| 	 | 	 | ||||||
| 	local function queueBit(bit) | 	local function queueBit(bit) | ||||||
| 		table.insert(gate.queueBits, 1, bit) | 		table.insert(gate.queueBits, 1, bit) | ||||||
| 	end | 	end | ||||||
| 	 | 	 | ||||||
| 	queueBit(true) | 	queueBit(true) | ||||||
| 	for bitidx = 1, 8 do | 	for bitidx = 1, 8 do | ||||||
| 		local val = bit.band(code, 0x80)~=0 | 		local val = bit.band(code, 0x80)~=0 | ||||||
| 		queueBit(val) | 		queueBit(val) | ||||||
| 		 | 		 | ||||||
| 		code = bit.lshift(code, 1) | 		code = bit.lshift(code, 1) | ||||||
| 	end | 	end | ||||||
| 	queueBit(false) | 	queueBit(false) | ||||||
| 	 | 	 | ||||||
| 	gate:queue(0) | 	gate:queue(0) | ||||||
| end | end | ||||||
|   | |||||||
| @@ -1,10 +1,10 @@ | |||||||
|  |  | ||||||
| return function(gate) | return function(gate) | ||||||
| 	if #gate.queueBits~=0 then | 	if #gate.queueBits~=0 then | ||||||
| 		local bit = table.remove(gate.queueBits, #gate.queueBits) | 		local bit = table.remove(gate.queueBits, #gate.queueBits) | ||||||
| 		gate.ports[1]:setstate(bit) | 		gate.ports[1]:setstate(bit) | ||||||
| 		gate:queue(1) | 		gate:queue(1) | ||||||
| 	else | 	else | ||||||
| 		gate.ports[1]:setstate(false) | 		gate.ports[1]:setstate(false) | ||||||
| 	end | 	end | ||||||
| end | end | ||||||
|   | |||||||
| @@ -1,44 +1,44 @@ | |||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicGate_Switch_Data) | datablock fxDTSBrickData(LogicGate_Switch_Data) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Inputs"; | 	subCategory = "Inputs"; | ||||||
| 	uiName = "Switch"; | 	uiName = "Switch"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Switch"; | 	iconName = $LuaLogic::Path @ "icons/Switch"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/switch.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/switch.blb"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
| 	 | 	 | ||||||
| 	isLogic = 1; | 	isLogic = 1; | ||||||
| 	isLogicGate = 1; | 	isLogicGate = 1; | ||||||
| 	isLogicInput = 1; | 	isLogicInput = 1; | ||||||
| 	 | 	 | ||||||
| 	logicInput = lualogic_readfile($LuaLogic::Path @ "bricks/inputs/switch-input.lua"); | 	logicInput = lualogic_readfile($LuaLogic::Path @ "bricks/inputs/switch-input.lua"); | ||||||
| 	 | 	 | ||||||
| 	numLogicPorts = 2; | 	numLogicPorts = 2; | ||||||
| 	 | 	 | ||||||
| 	logicPortType[0] = 0; | 	logicPortType[0] = 0; | ||||||
| 	logicPortPos[0] = "0 1 0"; | 	logicPortPos[0] = "0 1 0"; | ||||||
| 	logicPortDir[0] = "1"; | 	logicPortDir[0] = "1"; | ||||||
| 	 | 	 | ||||||
| 	logicPortType[1] = 0; | 	logicPortType[1] = 0; | ||||||
| 	logicPortPos[1] = "0 -1 0"; | 	logicPortPos[1] = "0 -1 0"; | ||||||
| 	logicPortDir[1] = "3"; | 	logicPortDir[1] = "3"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_Switch_Data"); | lualogic_registergatedefinition("LogicGate_Switch_Data"); | ||||||
|  |  | ||||||
| function LogicGate_Switch_Data::Logic_onInput(%this, %obj, %pos, %norm) | function LogicGate_Switch_Data::Logic_onInput(%this, %obj, %pos, %norm) | ||||||
| { | { | ||||||
| 	lualogic_sendinput(%obj, 0); | 	lualogic_sendinput(%obj, 0); | ||||||
| } | } | ||||||
|  |  | ||||||
| function LogicGate_Switch_Data::Logic_onAdd(%this, %obj) | function LogicGate_Switch_Data::Logic_onAdd(%this, %obj) | ||||||
| { | { | ||||||
| 	lualogic_sendinput(%obj, 1, %obj.getColorFXID() == 3); | 	lualogic_sendinput(%obj, 1, %obj.getColorFXID() == 3); | ||||||
| } | } | ||||||
|  |  | ||||||
| function LogicGate_Switch_Data::LuaLogic_Callback(%this, %obj, %data) | function LogicGate_Switch_Data::LuaLogic_Callback(%this, %obj, %data) | ||||||
| { | { | ||||||
| 	%obj.setColorFX(getField(%data, 0) == 1 ? 3 : 0); | 	%obj.setColorFX(getField(%data, 0) == 1 ? 3 : 0); | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,179 +1,179 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_8bitAdder_Data) | datablock fxDTSBrickData(LogicGate_8bitAdder_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitAdder.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitAdder.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "8bit Adder"; | 	uiName = "8bit Adder"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/8bit Adder"; | 	iconName = $LuaLogic::Path @ "icons/8bit Adder"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "8bit Adder"; | 	logicUIName = "8bit Adder"; | ||||||
| 	logicUIDesc = ""; | 	logicUIDesc = ""; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) local c = bool_to_int[gate.ports[17].state] " @ | 	logicUpdate = "return function(gate) local c = bool_to_int[gate.ports[17].state] " @ | ||||||
| "local a = 0 " @ | "local a = 0 " @ | ||||||
| "local b = 0 " @ | "local b = 0 " @ | ||||||
| "for i = 1, 8 do " @ | "for i = 1, 8 do " @ | ||||||
| 	"a = bool_to_int[gate.ports[i].state] " @ | 	"a = bool_to_int[gate.ports[i].state] " @ | ||||||
| 	"b = bool_to_int[gate.ports[i+8].state] " @ | 	"b = bool_to_int[gate.ports[i+8].state] " @ | ||||||
| 	"gate.ports[i+17]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | 	"gate.ports[i+17]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | ||||||
| 	"c = bit.bor(bit.band(a, b), bit.band(c, bit.bor(a, b))) " @ | 	"c = bit.bor(bit.band(a, b), bit.band(c, bit.bor(a, b))) " @ | ||||||
| "end " @ | "end " @ | ||||||
| "gate.ports[26]:setstate(c == 1) end"; | "gate.ports[26]:setstate(c == 1) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 26; | 	numLogicPorts = 26; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 -1 0"; | 	logicPortPos[0] = "-1 -1 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A0"; | 	logicPortUIName[0] = "A0"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "-3 -1 0"; | 	logicPortPos[1] = "-3 -1 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "A1"; | 	logicPortUIName[1] = "A1"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "-5 -1 0"; | 	logicPortPos[2] = "-5 -1 0"; | ||||||
| 	logicPortDir[2] = 3; | 	logicPortDir[2] = 3; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "A2"; | 	logicPortUIName[2] = "A2"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 1; | 	logicPortType[3] = 1; | ||||||
| 	logicPortPos[3] = "-7 -1 0"; | 	logicPortPos[3] = "-7 -1 0"; | ||||||
| 	logicPortDir[3] = 3; | 	logicPortDir[3] = 3; | ||||||
| 	logicPortCauseUpdate[3] = true; | 	logicPortCauseUpdate[3] = true; | ||||||
| 	logicPortUIName[3] = "A3"; | 	logicPortUIName[3] = "A3"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 1; | 	logicPortType[4] = 1; | ||||||
| 	logicPortPos[4] = "-9 -1 0"; | 	logicPortPos[4] = "-9 -1 0"; | ||||||
| 	logicPortDir[4] = 3; | 	logicPortDir[4] = 3; | ||||||
| 	logicPortCauseUpdate[4] = true; | 	logicPortCauseUpdate[4] = true; | ||||||
| 	logicPortUIName[4] = "A4"; | 	logicPortUIName[4] = "A4"; | ||||||
|  |  | ||||||
| 	logicPortType[5] = 1; | 	logicPortType[5] = 1; | ||||||
| 	logicPortPos[5] = "-11 -1 0"; | 	logicPortPos[5] = "-11 -1 0"; | ||||||
| 	logicPortDir[5] = 3; | 	logicPortDir[5] = 3; | ||||||
| 	logicPortCauseUpdate[5] = true; | 	logicPortCauseUpdate[5] = true; | ||||||
| 	logicPortUIName[5] = "A5"; | 	logicPortUIName[5] = "A5"; | ||||||
|  |  | ||||||
| 	logicPortType[6] = 1; | 	logicPortType[6] = 1; | ||||||
| 	logicPortPos[6] = "-13 -1 0"; | 	logicPortPos[6] = "-13 -1 0"; | ||||||
| 	logicPortDir[6] = 3; | 	logicPortDir[6] = 3; | ||||||
| 	logicPortCauseUpdate[6] = true; | 	logicPortCauseUpdate[6] = true; | ||||||
| 	logicPortUIName[6] = "A6"; | 	logicPortUIName[6] = "A6"; | ||||||
|  |  | ||||||
| 	logicPortType[7] = 1; | 	logicPortType[7] = 1; | ||||||
| 	logicPortPos[7] = "-15 -1 0"; | 	logicPortPos[7] = "-15 -1 0"; | ||||||
| 	logicPortDir[7] = 3; | 	logicPortDir[7] = 3; | ||||||
| 	logicPortCauseUpdate[7] = true; | 	logicPortCauseUpdate[7] = true; | ||||||
| 	logicPortUIName[7] = "A7"; | 	logicPortUIName[7] = "A7"; | ||||||
|  |  | ||||||
| 	logicPortType[8] = 1; | 	logicPortType[8] = 1; | ||||||
| 	logicPortPos[8] = "15 -1 0"; | 	logicPortPos[8] = "15 -1 0"; | ||||||
| 	logicPortDir[8] = 3; | 	logicPortDir[8] = 3; | ||||||
| 	logicPortCauseUpdate[8] = true; | 	logicPortCauseUpdate[8] = true; | ||||||
| 	logicPortUIName[8] = "B0"; | 	logicPortUIName[8] = "B0"; | ||||||
|  |  | ||||||
| 	logicPortType[9] = 1; | 	logicPortType[9] = 1; | ||||||
| 	logicPortPos[9] = "13 -1 0"; | 	logicPortPos[9] = "13 -1 0"; | ||||||
| 	logicPortDir[9] = 3; | 	logicPortDir[9] = 3; | ||||||
| 	logicPortCauseUpdate[9] = true; | 	logicPortCauseUpdate[9] = true; | ||||||
| 	logicPortUIName[9] = "B1"; | 	logicPortUIName[9] = "B1"; | ||||||
|  |  | ||||||
| 	logicPortType[10] = 1; | 	logicPortType[10] = 1; | ||||||
| 	logicPortPos[10] = "11 -1 0"; | 	logicPortPos[10] = "11 -1 0"; | ||||||
| 	logicPortDir[10] = 3; | 	logicPortDir[10] = 3; | ||||||
| 	logicPortCauseUpdate[10] = true; | 	logicPortCauseUpdate[10] = true; | ||||||
| 	logicPortUIName[10] = "B2"; | 	logicPortUIName[10] = "B2"; | ||||||
|  |  | ||||||
| 	logicPortType[11] = 1; | 	logicPortType[11] = 1; | ||||||
| 	logicPortPos[11] = "9 -1 0"; | 	logicPortPos[11] = "9 -1 0"; | ||||||
| 	logicPortDir[11] = 3; | 	logicPortDir[11] = 3; | ||||||
| 	logicPortCauseUpdate[11] = true; | 	logicPortCauseUpdate[11] = true; | ||||||
| 	logicPortUIName[11] = "B3"; | 	logicPortUIName[11] = "B3"; | ||||||
|  |  | ||||||
| 	logicPortType[12] = 1; | 	logicPortType[12] = 1; | ||||||
| 	logicPortPos[12] = "7 -1 0"; | 	logicPortPos[12] = "7 -1 0"; | ||||||
| 	logicPortDir[12] = 3; | 	logicPortDir[12] = 3; | ||||||
| 	logicPortCauseUpdate[12] = true; | 	logicPortCauseUpdate[12] = true; | ||||||
| 	logicPortUIName[12] = "B4"; | 	logicPortUIName[12] = "B4"; | ||||||
|  |  | ||||||
| 	logicPortType[13] = 1; | 	logicPortType[13] = 1; | ||||||
| 	logicPortPos[13] = "5 -1 0"; | 	logicPortPos[13] = "5 -1 0"; | ||||||
| 	logicPortDir[13] = 3; | 	logicPortDir[13] = 3; | ||||||
| 	logicPortCauseUpdate[13] = true; | 	logicPortCauseUpdate[13] = true; | ||||||
| 	logicPortUIName[13] = "B5"; | 	logicPortUIName[13] = "B5"; | ||||||
|  |  | ||||||
| 	logicPortType[14] = 1; | 	logicPortType[14] = 1; | ||||||
| 	logicPortPos[14] = "3 -1 0"; | 	logicPortPos[14] = "3 -1 0"; | ||||||
| 	logicPortDir[14] = 3; | 	logicPortDir[14] = 3; | ||||||
| 	logicPortCauseUpdate[14] = true; | 	logicPortCauseUpdate[14] = true; | ||||||
| 	logicPortUIName[14] = "B6"; | 	logicPortUIName[14] = "B6"; | ||||||
|  |  | ||||||
| 	logicPortType[15] = 1; | 	logicPortType[15] = 1; | ||||||
| 	logicPortPos[15] = "1 -1 0"; | 	logicPortPos[15] = "1 -1 0"; | ||||||
| 	logicPortDir[15] = 3; | 	logicPortDir[15] = 3; | ||||||
| 	logicPortCauseUpdate[15] = true; | 	logicPortCauseUpdate[15] = true; | ||||||
| 	logicPortUIName[15] = "B7"; | 	logicPortUIName[15] = "B7"; | ||||||
|  |  | ||||||
| 	logicPortType[16] = 1; | 	logicPortType[16] = 1; | ||||||
| 	logicPortPos[16] = "15 -1 0"; | 	logicPortPos[16] = "15 -1 0"; | ||||||
| 	logicPortDir[16] = 2; | 	logicPortDir[16] = 2; | ||||||
| 	logicPortCauseUpdate[16] = true; | 	logicPortCauseUpdate[16] = true; | ||||||
| 	logicPortUIName[16] = "Carry In"; | 	logicPortUIName[16] = "Carry In"; | ||||||
|  |  | ||||||
| 	logicPortType[17] = 0; | 	logicPortType[17] = 0; | ||||||
| 	logicPortPos[17] = "15 1 0"; | 	logicPortPos[17] = "15 1 0"; | ||||||
| 	logicPortDir[17] = 1; | 	logicPortDir[17] = 1; | ||||||
| 	logicPortUIName[17] = "Sum0"; | 	logicPortUIName[17] = "Sum0"; | ||||||
|  |  | ||||||
| 	logicPortType[18] = 0; | 	logicPortType[18] = 0; | ||||||
| 	logicPortPos[18] = "13 1 0"; | 	logicPortPos[18] = "13 1 0"; | ||||||
| 	logicPortDir[18] = 1; | 	logicPortDir[18] = 1; | ||||||
| 	logicPortUIName[18] = "Sum1"; | 	logicPortUIName[18] = "Sum1"; | ||||||
|  |  | ||||||
| 	logicPortType[19] = 0; | 	logicPortType[19] = 0; | ||||||
| 	logicPortPos[19] = "11 1 0"; | 	logicPortPos[19] = "11 1 0"; | ||||||
| 	logicPortDir[19] = 1; | 	logicPortDir[19] = 1; | ||||||
| 	logicPortUIName[19] = "Sum2"; | 	logicPortUIName[19] = "Sum2"; | ||||||
|  |  | ||||||
| 	logicPortType[20] = 0; | 	logicPortType[20] = 0; | ||||||
| 	logicPortPos[20] = "9 1 0"; | 	logicPortPos[20] = "9 1 0"; | ||||||
| 	logicPortDir[20] = 1; | 	logicPortDir[20] = 1; | ||||||
| 	logicPortUIName[20] = "Sum3"; | 	logicPortUIName[20] = "Sum3"; | ||||||
|  |  | ||||||
| 	logicPortType[21] = 0; | 	logicPortType[21] = 0; | ||||||
| 	logicPortPos[21] = "7 1 0"; | 	logicPortPos[21] = "7 1 0"; | ||||||
| 	logicPortDir[21] = 1; | 	logicPortDir[21] = 1; | ||||||
| 	logicPortUIName[21] = "Sum4"; | 	logicPortUIName[21] = "Sum4"; | ||||||
|  |  | ||||||
| 	logicPortType[22] = 0; | 	logicPortType[22] = 0; | ||||||
| 	logicPortPos[22] = "5 1 0"; | 	logicPortPos[22] = "5 1 0"; | ||||||
| 	logicPortDir[22] = 1; | 	logicPortDir[22] = 1; | ||||||
| 	logicPortUIName[22] = "Sum5"; | 	logicPortUIName[22] = "Sum5"; | ||||||
|  |  | ||||||
| 	logicPortType[23] = 0; | 	logicPortType[23] = 0; | ||||||
| 	logicPortPos[23] = "3 1 0"; | 	logicPortPos[23] = "3 1 0"; | ||||||
| 	logicPortDir[23] = 1; | 	logicPortDir[23] = 1; | ||||||
| 	logicPortUIName[23] = "Sum6"; | 	logicPortUIName[23] = "Sum6"; | ||||||
|  |  | ||||||
| 	logicPortType[24] = 0; | 	logicPortType[24] = 0; | ||||||
| 	logicPortPos[24] = "1 1 0"; | 	logicPortPos[24] = "1 1 0"; | ||||||
| 	logicPortDir[24] = 1; | 	logicPortDir[24] = 1; | ||||||
| 	logicPortUIName[24] = "Sum7"; | 	logicPortUIName[24] = "Sum7"; | ||||||
|  |  | ||||||
| 	logicPortType[25] = 0; | 	logicPortType[25] = 0; | ||||||
| 	logicPortPos[25] = "-15 -1 0"; | 	logicPortPos[25] = "-15 -1 0"; | ||||||
| 	logicPortDir[25] = 0; | 	logicPortDir[25] = 0; | ||||||
| 	logicPortUIName[25] = "Carry Out"; | 	logicPortUIName[25] = "Carry Out"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_8bitAdder_Data"); | lualogic_registergatedefinition("LogicGate_8bitAdder_Data"); | ||||||
|   | |||||||
| @@ -1,218 +1,218 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_8bitDivider_Data) | datablock fxDTSBrickData(LogicGate_8bitDivider_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitMultiplier.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitMultiplier.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "8bit Divider"; | 	uiName = "8bit Divider"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/8bit Divider"; | 	iconName = $LuaLogic::Path @ "icons/8bit Divider"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "8bit Divider"; | 	logicUIName = "8bit Divider"; | ||||||
| 	logicUIDesc = "Divides A by B"; | 	logicUIDesc = "Divides A by B"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) local a, b, n = 0, 0 " @ | 	logicUpdate = "return function(gate) local a, b, n = 0, 0 " @ | ||||||
| "for i = 1, 8 do " @ | "for i = 1, 8 do " @ | ||||||
| 	"local n = 2^(i-1) " @ | 	"local n = 2^(i-1) " @ | ||||||
| 	"a = a + bool_to_int[gate.ports[i].state] * n " @ | 	"a = a + bool_to_int[gate.ports[i].state] * n " @ | ||||||
| 	"b = b + bool_to_int[gate.ports[i+8].state] * n " @ | 	"b = b + bool_to_int[gate.ports[i+8].state] * n " @ | ||||||
| "end " @ | "end " @ | ||||||
| "if b ~= 0 then " @ | "if b ~= 0 then " @ | ||||||
| 	"local q = math.floor(a/b) " @ | 	"local q = math.floor(a/b) " @ | ||||||
| 	"local r = a-q*b " @ | 	"local r = a-q*b " @ | ||||||
| 	"for i = 1, 8 do " @ | 	"for i = 1, 8 do " @ | ||||||
| 		"local n = 2^(i-1) " @ | 		"local n = 2^(i-1) " @ | ||||||
| 		"gate.ports[i+16]:setstate(bit.band(q, n) > 0) " @ | 		"gate.ports[i+16]:setstate(bit.band(q, n) > 0) " @ | ||||||
| 		"gate.ports[i+24]:setstate(bit.band(r, n) > 0) " @ | 		"gate.ports[i+24]:setstate(bit.band(r, n) > 0) " @ | ||||||
| 	"end " @ | 	"end " @ | ||||||
| "else " @ | "else " @ | ||||||
| 	"for i = 1, 8 do " @ | 	"for i = 1, 8 do " @ | ||||||
| 		"gate.ports[i+16]:setstate(false) " @ | 		"gate.ports[i+16]:setstate(false) " @ | ||||||
| 		"gate.ports[i+24]:setstate(false) " @ | 		"gate.ports[i+24]:setstate(false) " @ | ||||||
| 	"end " @ | 	"end " @ | ||||||
| "end end"; | "end end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 32; | 	numLogicPorts = 32; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 -1 0"; | 	logicPortPos[0] = "-1 -1 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A0"; | 	logicPortUIName[0] = "A0"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "-3 -1 0"; | 	logicPortPos[1] = "-3 -1 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "A1"; | 	logicPortUIName[1] = "A1"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "-5 -1 0"; | 	logicPortPos[2] = "-5 -1 0"; | ||||||
| 	logicPortDir[2] = 3; | 	logicPortDir[2] = 3; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "A2"; | 	logicPortUIName[2] = "A2"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 1; | 	logicPortType[3] = 1; | ||||||
| 	logicPortPos[3] = "-7 -1 0"; | 	logicPortPos[3] = "-7 -1 0"; | ||||||
| 	logicPortDir[3] = 3; | 	logicPortDir[3] = 3; | ||||||
| 	logicPortCauseUpdate[3] = true; | 	logicPortCauseUpdate[3] = true; | ||||||
| 	logicPortUIName[3] = "A3"; | 	logicPortUIName[3] = "A3"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 1; | 	logicPortType[4] = 1; | ||||||
| 	logicPortPos[4] = "-9 -1 0"; | 	logicPortPos[4] = "-9 -1 0"; | ||||||
| 	logicPortDir[4] = 3; | 	logicPortDir[4] = 3; | ||||||
| 	logicPortCauseUpdate[4] = true; | 	logicPortCauseUpdate[4] = true; | ||||||
| 	logicPortUIName[4] = "A4"; | 	logicPortUIName[4] = "A4"; | ||||||
|  |  | ||||||
| 	logicPortType[5] = 1; | 	logicPortType[5] = 1; | ||||||
| 	logicPortPos[5] = "-11 -1 0"; | 	logicPortPos[5] = "-11 -1 0"; | ||||||
| 	logicPortDir[5] = 3; | 	logicPortDir[5] = 3; | ||||||
| 	logicPortCauseUpdate[5] = true; | 	logicPortCauseUpdate[5] = true; | ||||||
| 	logicPortUIName[5] = "A5"; | 	logicPortUIName[5] = "A5"; | ||||||
|  |  | ||||||
| 	logicPortType[6] = 1; | 	logicPortType[6] = 1; | ||||||
| 	logicPortPos[6] = "-13 -1 0"; | 	logicPortPos[6] = "-13 -1 0"; | ||||||
| 	logicPortDir[6] = 3; | 	logicPortDir[6] = 3; | ||||||
| 	logicPortCauseUpdate[6] = true; | 	logicPortCauseUpdate[6] = true; | ||||||
| 	logicPortUIName[6] = "A6"; | 	logicPortUIName[6] = "A6"; | ||||||
|  |  | ||||||
| 	logicPortType[7] = 1; | 	logicPortType[7] = 1; | ||||||
| 	logicPortPos[7] = "-15 -1 0"; | 	logicPortPos[7] = "-15 -1 0"; | ||||||
| 	logicPortDir[7] = 3; | 	logicPortDir[7] = 3; | ||||||
| 	logicPortCauseUpdate[7] = true; | 	logicPortCauseUpdate[7] = true; | ||||||
| 	logicPortUIName[7] = "A7"; | 	logicPortUIName[7] = "A7"; | ||||||
|  |  | ||||||
| 	logicPortType[8] = 1; | 	logicPortType[8] = 1; | ||||||
| 	logicPortPos[8] = "15 -1 0"; | 	logicPortPos[8] = "15 -1 0"; | ||||||
| 	logicPortDir[8] = 3; | 	logicPortDir[8] = 3; | ||||||
| 	logicPortCauseUpdate[8] = true; | 	logicPortCauseUpdate[8] = true; | ||||||
| 	logicPortUIName[8] = "B0"; | 	logicPortUIName[8] = "B0"; | ||||||
|  |  | ||||||
| 	logicPortType[9] = 1; | 	logicPortType[9] = 1; | ||||||
| 	logicPortPos[9] = "13 -1 0"; | 	logicPortPos[9] = "13 -1 0"; | ||||||
| 	logicPortDir[9] = 3; | 	logicPortDir[9] = 3; | ||||||
| 	logicPortCauseUpdate[9] = true; | 	logicPortCauseUpdate[9] = true; | ||||||
| 	logicPortUIName[9] = "B1"; | 	logicPortUIName[9] = "B1"; | ||||||
|  |  | ||||||
| 	logicPortType[10] = 1; | 	logicPortType[10] = 1; | ||||||
| 	logicPortPos[10] = "11 -1 0"; | 	logicPortPos[10] = "11 -1 0"; | ||||||
| 	logicPortDir[10] = 3; | 	logicPortDir[10] = 3; | ||||||
| 	logicPortCauseUpdate[10] = true; | 	logicPortCauseUpdate[10] = true; | ||||||
| 	logicPortUIName[10] = "B2"; | 	logicPortUIName[10] = "B2"; | ||||||
|  |  | ||||||
| 	logicPortType[11] = 1; | 	logicPortType[11] = 1; | ||||||
| 	logicPortPos[11] = "9 -1 0"; | 	logicPortPos[11] = "9 -1 0"; | ||||||
| 	logicPortDir[11] = 3; | 	logicPortDir[11] = 3; | ||||||
| 	logicPortCauseUpdate[11] = true; | 	logicPortCauseUpdate[11] = true; | ||||||
| 	logicPortUIName[11] = "B3"; | 	logicPortUIName[11] = "B3"; | ||||||
|  |  | ||||||
| 	logicPortType[12] = 1; | 	logicPortType[12] = 1; | ||||||
| 	logicPortPos[12] = "7 -1 0"; | 	logicPortPos[12] = "7 -1 0"; | ||||||
| 	logicPortDir[12] = 3; | 	logicPortDir[12] = 3; | ||||||
| 	logicPortCauseUpdate[12] = true; | 	logicPortCauseUpdate[12] = true; | ||||||
| 	logicPortUIName[12] = "B4"; | 	logicPortUIName[12] = "B4"; | ||||||
|  |  | ||||||
| 	logicPortType[13] = 1; | 	logicPortType[13] = 1; | ||||||
| 	logicPortPos[13] = "5 -1 0"; | 	logicPortPos[13] = "5 -1 0"; | ||||||
| 	logicPortDir[13] = 3; | 	logicPortDir[13] = 3; | ||||||
| 	logicPortCauseUpdate[13] = true; | 	logicPortCauseUpdate[13] = true; | ||||||
| 	logicPortUIName[13] = "B5"; | 	logicPortUIName[13] = "B5"; | ||||||
|  |  | ||||||
| 	logicPortType[14] = 1; | 	logicPortType[14] = 1; | ||||||
| 	logicPortPos[14] = "3 -1 0"; | 	logicPortPos[14] = "3 -1 0"; | ||||||
| 	logicPortDir[14] = 3; | 	logicPortDir[14] = 3; | ||||||
| 	logicPortCauseUpdate[14] = true; | 	logicPortCauseUpdate[14] = true; | ||||||
| 	logicPortUIName[14] = "B6"; | 	logicPortUIName[14] = "B6"; | ||||||
|  |  | ||||||
| 	logicPortType[15] = 1; | 	logicPortType[15] = 1; | ||||||
| 	logicPortPos[15] = "1 -1 0"; | 	logicPortPos[15] = "1 -1 0"; | ||||||
| 	logicPortDir[15] = 3; | 	logicPortDir[15] = 3; | ||||||
| 	logicPortCauseUpdate[15] = true; | 	logicPortCauseUpdate[15] = true; | ||||||
| 	logicPortUIName[15] = "B7"; | 	logicPortUIName[15] = "B7"; | ||||||
|  |  | ||||||
| 	logicPortType[16] = 0; | 	logicPortType[16] = 0; | ||||||
| 	logicPortPos[16] = "15 1 0"; | 	logicPortPos[16] = "15 1 0"; | ||||||
| 	logicPortDir[16] = 1; | 	logicPortDir[16] = 1; | ||||||
| 	logicPortUIName[16] = "Q0"; | 	logicPortUIName[16] = "Q0"; | ||||||
|  |  | ||||||
| 	logicPortType[17] = 0; | 	logicPortType[17] = 0; | ||||||
| 	logicPortPos[17] = "13 1 0"; | 	logicPortPos[17] = "13 1 0"; | ||||||
| 	logicPortDir[17] = 1; | 	logicPortDir[17] = 1; | ||||||
| 	logicPortUIName[17] = "Q1"; | 	logicPortUIName[17] = "Q1"; | ||||||
|  |  | ||||||
| 	logicPortType[18] = 0; | 	logicPortType[18] = 0; | ||||||
| 	logicPortPos[18] = "11 1 0"; | 	logicPortPos[18] = "11 1 0"; | ||||||
| 	logicPortDir[18] = 1; | 	logicPortDir[18] = 1; | ||||||
| 	logicPortUIName[18] = "Q2"; | 	logicPortUIName[18] = "Q2"; | ||||||
|  |  | ||||||
| 	logicPortType[19] = 0; | 	logicPortType[19] = 0; | ||||||
| 	logicPortPos[19] = "9 1 0"; | 	logicPortPos[19] = "9 1 0"; | ||||||
| 	logicPortDir[19] = 1; | 	logicPortDir[19] = 1; | ||||||
| 	logicPortUIName[19] = "Q3"; | 	logicPortUIName[19] = "Q3"; | ||||||
|  |  | ||||||
| 	logicPortType[20] = 0; | 	logicPortType[20] = 0; | ||||||
| 	logicPortPos[20] = "7 1 0"; | 	logicPortPos[20] = "7 1 0"; | ||||||
| 	logicPortDir[20] = 1; | 	logicPortDir[20] = 1; | ||||||
| 	logicPortUIName[20] = "Q4"; | 	logicPortUIName[20] = "Q4"; | ||||||
|  |  | ||||||
| 	logicPortType[21] = 0; | 	logicPortType[21] = 0; | ||||||
| 	logicPortPos[21] = "5 1 0"; | 	logicPortPos[21] = "5 1 0"; | ||||||
| 	logicPortDir[21] = 1; | 	logicPortDir[21] = 1; | ||||||
| 	logicPortUIName[21] = "Q5"; | 	logicPortUIName[21] = "Q5"; | ||||||
|  |  | ||||||
| 	logicPortType[22] = 0; | 	logicPortType[22] = 0; | ||||||
| 	logicPortPos[22] = "3 1 0"; | 	logicPortPos[22] = "3 1 0"; | ||||||
| 	logicPortDir[22] = 1; | 	logicPortDir[22] = 1; | ||||||
| 	logicPortUIName[22] = "Q6"; | 	logicPortUIName[22] = "Q6"; | ||||||
|  |  | ||||||
| 	logicPortType[23] = 0; | 	logicPortType[23] = 0; | ||||||
| 	logicPortPos[23] = "1 1 0"; | 	logicPortPos[23] = "1 1 0"; | ||||||
| 	logicPortDir[23] = 1; | 	logicPortDir[23] = 1; | ||||||
| 	logicPortUIName[23] = "Q7"; | 	logicPortUIName[23] = "Q7"; | ||||||
|  |  | ||||||
| 	logicPortType[24] = 0; | 	logicPortType[24] = 0; | ||||||
| 	logicPortPos[24] = "-1 1 0"; | 	logicPortPos[24] = "-1 1 0"; | ||||||
| 	logicPortDir[24] = 1; | 	logicPortDir[24] = 1; | ||||||
| 	logicPortUIName[24] = "R0"; | 	logicPortUIName[24] = "R0"; | ||||||
|  |  | ||||||
| 	logicPortType[25] = 0; | 	logicPortType[25] = 0; | ||||||
| 	logicPortPos[25] = "-3 1 0"; | 	logicPortPos[25] = "-3 1 0"; | ||||||
| 	logicPortDir[25] = 1; | 	logicPortDir[25] = 1; | ||||||
| 	logicPortUIName[25] = "R1"; | 	logicPortUIName[25] = "R1"; | ||||||
|  |  | ||||||
| 	logicPortType[26] = 0; | 	logicPortType[26] = 0; | ||||||
| 	logicPortPos[26] = "-5 1 0"; | 	logicPortPos[26] = "-5 1 0"; | ||||||
| 	logicPortDir[26] = 1; | 	logicPortDir[26] = 1; | ||||||
| 	logicPortUIName[26] = "R2"; | 	logicPortUIName[26] = "R2"; | ||||||
|  |  | ||||||
| 	logicPortType[27] = 0; | 	logicPortType[27] = 0; | ||||||
| 	logicPortPos[27] = "-7 1 0"; | 	logicPortPos[27] = "-7 1 0"; | ||||||
| 	logicPortDir[27] = 1; | 	logicPortDir[27] = 1; | ||||||
| 	logicPortUIName[27] = "R3"; | 	logicPortUIName[27] = "R3"; | ||||||
|  |  | ||||||
| 	logicPortType[28] = 0; | 	logicPortType[28] = 0; | ||||||
| 	logicPortPos[28] = "-9 1 0"; | 	logicPortPos[28] = "-9 1 0"; | ||||||
| 	logicPortDir[28] = 1; | 	logicPortDir[28] = 1; | ||||||
| 	logicPortUIName[28] = "R4"; | 	logicPortUIName[28] = "R4"; | ||||||
|  |  | ||||||
| 	logicPortType[29] = 0; | 	logicPortType[29] = 0; | ||||||
| 	logicPortPos[29] = "-11 1 0"; | 	logicPortPos[29] = "-11 1 0"; | ||||||
| 	logicPortDir[29] = 1; | 	logicPortDir[29] = 1; | ||||||
| 	logicPortUIName[29] = "R5"; | 	logicPortUIName[29] = "R5"; | ||||||
|  |  | ||||||
| 	logicPortType[30] = 0; | 	logicPortType[30] = 0; | ||||||
| 	logicPortPos[30] = "-13 1 0"; | 	logicPortPos[30] = "-13 1 0"; | ||||||
| 	logicPortDir[30] = 1; | 	logicPortDir[30] = 1; | ||||||
| 	logicPortUIName[30] = "R6"; | 	logicPortUIName[30] = "R6"; | ||||||
|  |  | ||||||
| 	logicPortType[31] = 0; | 	logicPortType[31] = 0; | ||||||
| 	logicPortPos[31] = "-15 1 0"; | 	logicPortPos[31] = "-15 1 0"; | ||||||
| 	logicPortDir[31] = 1; | 	logicPortDir[31] = 1; | ||||||
| 	logicPortUIName[31] = "R7"; | 	logicPortUIName[31] = "R7"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_8bitDivider_Data"); | lualogic_registergatedefinition("LogicGate_8bitDivider_Data"); | ||||||
|   | |||||||
| @@ -1,208 +1,208 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_8bitMultiplier_Data) | datablock fxDTSBrickData(LogicGate_8bitMultiplier_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitMultiplier.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitMultiplier.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "8bit Multiplier"; | 	uiName = "8bit Multiplier"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/8bit Multiplier"; | 	iconName = $LuaLogic::Path @ "icons/8bit Multiplier"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "8bit Multiplier"; | 	logicUIName = "8bit Multiplier"; | ||||||
| 	logicUIDesc = "Multiplies A by B"; | 	logicUIDesc = "Multiplies A by B"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) local a, b = 0, 0 " @ | 	logicUpdate = "return function(gate) local a, b = 0, 0 " @ | ||||||
| "local sum = 0 " @ | "local sum = 0 " @ | ||||||
| "for i = 1, 8 do " @ | "for i = 1, 8 do " @ | ||||||
| 	"a = a + bool_to_int[gate.ports[i].state] * 2^(i-1) " @ | 	"a = a + bool_to_int[gate.ports[i].state] * 2^(i-1) " @ | ||||||
| 	"b = b + bool_to_int[gate.ports[i+8].state] * 2^(i-1) " @ | 	"b = b + bool_to_int[gate.ports[i+8].state] * 2^(i-1) " @ | ||||||
| "end " @ | "end " @ | ||||||
| "local sum = a * b " @ | "local sum = a * b " @ | ||||||
| "for i = 1, 16 do " @ | "for i = 1, 16 do " @ | ||||||
| 	"gate.ports[i+16]:setstate(bit.band(sum, 2^(i-1)) > 0) " @ | 	"gate.ports[i+16]:setstate(bit.band(sum, 2^(i-1)) > 0) " @ | ||||||
| "end end"; | "end end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 32; | 	numLogicPorts = 32; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 -1 0"; | 	logicPortPos[0] = "-1 -1 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A0"; | 	logicPortUIName[0] = "A0"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "-3 -1 0"; | 	logicPortPos[1] = "-3 -1 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "A1"; | 	logicPortUIName[1] = "A1"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "-5 -1 0"; | 	logicPortPos[2] = "-5 -1 0"; | ||||||
| 	logicPortDir[2] = 3; | 	logicPortDir[2] = 3; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "A2"; | 	logicPortUIName[2] = "A2"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 1; | 	logicPortType[3] = 1; | ||||||
| 	logicPortPos[3] = "-7 -1 0"; | 	logicPortPos[3] = "-7 -1 0"; | ||||||
| 	logicPortDir[3] = 3; | 	logicPortDir[3] = 3; | ||||||
| 	logicPortCauseUpdate[3] = true; | 	logicPortCauseUpdate[3] = true; | ||||||
| 	logicPortUIName[3] = "A3"; | 	logicPortUIName[3] = "A3"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 1; | 	logicPortType[4] = 1; | ||||||
| 	logicPortPos[4] = "-9 -1 0"; | 	logicPortPos[4] = "-9 -1 0"; | ||||||
| 	logicPortDir[4] = 3; | 	logicPortDir[4] = 3; | ||||||
| 	logicPortCauseUpdate[4] = true; | 	logicPortCauseUpdate[4] = true; | ||||||
| 	logicPortUIName[4] = "A4"; | 	logicPortUIName[4] = "A4"; | ||||||
|  |  | ||||||
| 	logicPortType[5] = 1; | 	logicPortType[5] = 1; | ||||||
| 	logicPortPos[5] = "-11 -1 0"; | 	logicPortPos[5] = "-11 -1 0"; | ||||||
| 	logicPortDir[5] = 3; | 	logicPortDir[5] = 3; | ||||||
| 	logicPortCauseUpdate[5] = true; | 	logicPortCauseUpdate[5] = true; | ||||||
| 	logicPortUIName[5] = "A5"; | 	logicPortUIName[5] = "A5"; | ||||||
|  |  | ||||||
| 	logicPortType[6] = 1; | 	logicPortType[6] = 1; | ||||||
| 	logicPortPos[6] = "-13 -1 0"; | 	logicPortPos[6] = "-13 -1 0"; | ||||||
| 	logicPortDir[6] = 3; | 	logicPortDir[6] = 3; | ||||||
| 	logicPortCauseUpdate[6] = true; | 	logicPortCauseUpdate[6] = true; | ||||||
| 	logicPortUIName[6] = "A6"; | 	logicPortUIName[6] = "A6"; | ||||||
|  |  | ||||||
| 	logicPortType[7] = 1; | 	logicPortType[7] = 1; | ||||||
| 	logicPortPos[7] = "-15 -1 0"; | 	logicPortPos[7] = "-15 -1 0"; | ||||||
| 	logicPortDir[7] = 3; | 	logicPortDir[7] = 3; | ||||||
| 	logicPortCauseUpdate[7] = true; | 	logicPortCauseUpdate[7] = true; | ||||||
| 	logicPortUIName[7] = "A7"; | 	logicPortUIName[7] = "A7"; | ||||||
|  |  | ||||||
| 	logicPortType[8] = 1; | 	logicPortType[8] = 1; | ||||||
| 	logicPortPos[8] = "15 -1 0"; | 	logicPortPos[8] = "15 -1 0"; | ||||||
| 	logicPortDir[8] = 3; | 	logicPortDir[8] = 3; | ||||||
| 	logicPortCauseUpdate[8] = true; | 	logicPortCauseUpdate[8] = true; | ||||||
| 	logicPortUIName[8] = "B0"; | 	logicPortUIName[8] = "B0"; | ||||||
|  |  | ||||||
| 	logicPortType[9] = 1; | 	logicPortType[9] = 1; | ||||||
| 	logicPortPos[9] = "13 -1 0"; | 	logicPortPos[9] = "13 -1 0"; | ||||||
| 	logicPortDir[9] = 3; | 	logicPortDir[9] = 3; | ||||||
| 	logicPortCauseUpdate[9] = true; | 	logicPortCauseUpdate[9] = true; | ||||||
| 	logicPortUIName[9] = "B1"; | 	logicPortUIName[9] = "B1"; | ||||||
|  |  | ||||||
| 	logicPortType[10] = 1; | 	logicPortType[10] = 1; | ||||||
| 	logicPortPos[10] = "11 -1 0"; | 	logicPortPos[10] = "11 -1 0"; | ||||||
| 	logicPortDir[10] = 3; | 	logicPortDir[10] = 3; | ||||||
| 	logicPortCauseUpdate[10] = true; | 	logicPortCauseUpdate[10] = true; | ||||||
| 	logicPortUIName[10] = "B2"; | 	logicPortUIName[10] = "B2"; | ||||||
|  |  | ||||||
| 	logicPortType[11] = 1; | 	logicPortType[11] = 1; | ||||||
| 	logicPortPos[11] = "9 -1 0"; | 	logicPortPos[11] = "9 -1 0"; | ||||||
| 	logicPortDir[11] = 3; | 	logicPortDir[11] = 3; | ||||||
| 	logicPortCauseUpdate[11] = true; | 	logicPortCauseUpdate[11] = true; | ||||||
| 	logicPortUIName[11] = "B3"; | 	logicPortUIName[11] = "B3"; | ||||||
|  |  | ||||||
| 	logicPortType[12] = 1; | 	logicPortType[12] = 1; | ||||||
| 	logicPortPos[12] = "7 -1 0"; | 	logicPortPos[12] = "7 -1 0"; | ||||||
| 	logicPortDir[12] = 3; | 	logicPortDir[12] = 3; | ||||||
| 	logicPortCauseUpdate[12] = true; | 	logicPortCauseUpdate[12] = true; | ||||||
| 	logicPortUIName[12] = "B4"; | 	logicPortUIName[12] = "B4"; | ||||||
|  |  | ||||||
| 	logicPortType[13] = 1; | 	logicPortType[13] = 1; | ||||||
| 	logicPortPos[13] = "5 -1 0"; | 	logicPortPos[13] = "5 -1 0"; | ||||||
| 	logicPortDir[13] = 3; | 	logicPortDir[13] = 3; | ||||||
| 	logicPortCauseUpdate[13] = true; | 	logicPortCauseUpdate[13] = true; | ||||||
| 	logicPortUIName[13] = "B5"; | 	logicPortUIName[13] = "B5"; | ||||||
|  |  | ||||||
| 	logicPortType[14] = 1; | 	logicPortType[14] = 1; | ||||||
| 	logicPortPos[14] = "3 -1 0"; | 	logicPortPos[14] = "3 -1 0"; | ||||||
| 	logicPortDir[14] = 3; | 	logicPortDir[14] = 3; | ||||||
| 	logicPortCauseUpdate[14] = true; | 	logicPortCauseUpdate[14] = true; | ||||||
| 	logicPortUIName[14] = "B6"; | 	logicPortUIName[14] = "B6"; | ||||||
|  |  | ||||||
| 	logicPortType[15] = 1; | 	logicPortType[15] = 1; | ||||||
| 	logicPortPos[15] = "1 -1 0"; | 	logicPortPos[15] = "1 -1 0"; | ||||||
| 	logicPortDir[15] = 3; | 	logicPortDir[15] = 3; | ||||||
| 	logicPortCauseUpdate[15] = true; | 	logicPortCauseUpdate[15] = true; | ||||||
| 	logicPortUIName[15] = "B7"; | 	logicPortUIName[15] = "B7"; | ||||||
|  |  | ||||||
| 	logicPortType[16] = 0; | 	logicPortType[16] = 0; | ||||||
| 	logicPortPos[16] = "15 1 0"; | 	logicPortPos[16] = "15 1 0"; | ||||||
| 	logicPortDir[16] = 1; | 	logicPortDir[16] = 1; | ||||||
| 	logicPortUIName[16] = "Out0"; | 	logicPortUIName[16] = "Out0"; | ||||||
|  |  | ||||||
| 	logicPortType[17] = 0; | 	logicPortType[17] = 0; | ||||||
| 	logicPortPos[17] = "13 1 0"; | 	logicPortPos[17] = "13 1 0"; | ||||||
| 	logicPortDir[17] = 1; | 	logicPortDir[17] = 1; | ||||||
| 	logicPortUIName[17] = "Out1"; | 	logicPortUIName[17] = "Out1"; | ||||||
|  |  | ||||||
| 	logicPortType[18] = 0; | 	logicPortType[18] = 0; | ||||||
| 	logicPortPos[18] = "11 1 0"; | 	logicPortPos[18] = "11 1 0"; | ||||||
| 	logicPortDir[18] = 1; | 	logicPortDir[18] = 1; | ||||||
| 	logicPortUIName[18] = "Out2"; | 	logicPortUIName[18] = "Out2"; | ||||||
|  |  | ||||||
| 	logicPortType[19] = 0; | 	logicPortType[19] = 0; | ||||||
| 	logicPortPos[19] = "9 1 0"; | 	logicPortPos[19] = "9 1 0"; | ||||||
| 	logicPortDir[19] = 1; | 	logicPortDir[19] = 1; | ||||||
| 	logicPortUIName[19] = "Out3"; | 	logicPortUIName[19] = "Out3"; | ||||||
|  |  | ||||||
| 	logicPortType[20] = 0; | 	logicPortType[20] = 0; | ||||||
| 	logicPortPos[20] = "7 1 0"; | 	logicPortPos[20] = "7 1 0"; | ||||||
| 	logicPortDir[20] = 1; | 	logicPortDir[20] = 1; | ||||||
| 	logicPortUIName[20] = "Out4"; | 	logicPortUIName[20] = "Out4"; | ||||||
|  |  | ||||||
| 	logicPortType[21] = 0; | 	logicPortType[21] = 0; | ||||||
| 	logicPortPos[21] = "5 1 0"; | 	logicPortPos[21] = "5 1 0"; | ||||||
| 	logicPortDir[21] = 1; | 	logicPortDir[21] = 1; | ||||||
| 	logicPortUIName[21] = "Out5"; | 	logicPortUIName[21] = "Out5"; | ||||||
|  |  | ||||||
| 	logicPortType[22] = 0; | 	logicPortType[22] = 0; | ||||||
| 	logicPortPos[22] = "3 1 0"; | 	logicPortPos[22] = "3 1 0"; | ||||||
| 	logicPortDir[22] = 1; | 	logicPortDir[22] = 1; | ||||||
| 	logicPortUIName[22] = "Out6"; | 	logicPortUIName[22] = "Out6"; | ||||||
|  |  | ||||||
| 	logicPortType[23] = 0; | 	logicPortType[23] = 0; | ||||||
| 	logicPortPos[23] = "1 1 0"; | 	logicPortPos[23] = "1 1 0"; | ||||||
| 	logicPortDir[23] = 1; | 	logicPortDir[23] = 1; | ||||||
| 	logicPortUIName[23] = "Out7"; | 	logicPortUIName[23] = "Out7"; | ||||||
|  |  | ||||||
| 	logicPortType[24] = 0; | 	logicPortType[24] = 0; | ||||||
| 	logicPortPos[24] = "-1 1 0"; | 	logicPortPos[24] = "-1 1 0"; | ||||||
| 	logicPortDir[24] = 1; | 	logicPortDir[24] = 1; | ||||||
| 	logicPortUIName[24] = "Out8"; | 	logicPortUIName[24] = "Out8"; | ||||||
|  |  | ||||||
| 	logicPortType[25] = 0; | 	logicPortType[25] = 0; | ||||||
| 	logicPortPos[25] = "-3 1 0"; | 	logicPortPos[25] = "-3 1 0"; | ||||||
| 	logicPortDir[25] = 1; | 	logicPortDir[25] = 1; | ||||||
| 	logicPortUIName[25] = "Out9"; | 	logicPortUIName[25] = "Out9"; | ||||||
|  |  | ||||||
| 	logicPortType[26] = 0; | 	logicPortType[26] = 0; | ||||||
| 	logicPortPos[26] = "-5 1 0"; | 	logicPortPos[26] = "-5 1 0"; | ||||||
| 	logicPortDir[26] = 1; | 	logicPortDir[26] = 1; | ||||||
| 	logicPortUIName[26] = "Out10"; | 	logicPortUIName[26] = "Out10"; | ||||||
|  |  | ||||||
| 	logicPortType[27] = 0; | 	logicPortType[27] = 0; | ||||||
| 	logicPortPos[27] = "-7 1 0"; | 	logicPortPos[27] = "-7 1 0"; | ||||||
| 	logicPortDir[27] = 1; | 	logicPortDir[27] = 1; | ||||||
| 	logicPortUIName[27] = "Out11"; | 	logicPortUIName[27] = "Out11"; | ||||||
|  |  | ||||||
| 	logicPortType[28] = 0; | 	logicPortType[28] = 0; | ||||||
| 	logicPortPos[28] = "-9 1 0"; | 	logicPortPos[28] = "-9 1 0"; | ||||||
| 	logicPortDir[28] = 1; | 	logicPortDir[28] = 1; | ||||||
| 	logicPortUIName[28] = "Out12"; | 	logicPortUIName[28] = "Out12"; | ||||||
|  |  | ||||||
| 	logicPortType[29] = 0; | 	logicPortType[29] = 0; | ||||||
| 	logicPortPos[29] = "-11 1 0"; | 	logicPortPos[29] = "-11 1 0"; | ||||||
| 	logicPortDir[29] = 1; | 	logicPortDir[29] = 1; | ||||||
| 	logicPortUIName[29] = "Out13"; | 	logicPortUIName[29] = "Out13"; | ||||||
|  |  | ||||||
| 	logicPortType[30] = 0; | 	logicPortType[30] = 0; | ||||||
| 	logicPortPos[30] = "-13 1 0"; | 	logicPortPos[30] = "-13 1 0"; | ||||||
| 	logicPortDir[30] = 1; | 	logicPortDir[30] = 1; | ||||||
| 	logicPortUIName[30] = "Out14"; | 	logicPortUIName[30] = "Out14"; | ||||||
|  |  | ||||||
| 	logicPortType[31] = 0; | 	logicPortType[31] = 0; | ||||||
| 	logicPortPos[31] = "-15 1 0"; | 	logicPortPos[31] = "-15 1 0"; | ||||||
| 	logicPortDir[31] = 1; | 	logicPortDir[31] = 1; | ||||||
| 	logicPortUIName[31] = "Out15"; | 	logicPortUIName[31] = "Out15"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_8bitMultiplier_Data"); | lualogic_registergatedefinition("LogicGate_8bitMultiplier_Data"); | ||||||
|   | |||||||
| @@ -1,179 +1,179 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_8bitSubtractor_Data) | datablock fxDTSBrickData(LogicGate_8bitSubtractor_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitAdder.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/8bitAdder.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "8bit Subtractor"; | 	uiName = "8bit Subtractor"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/8bit Subtractor"; | 	iconName = $LuaLogic::Path @ "icons/8bit Subtractor"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "8bit Subtractor"; | 	logicUIName = "8bit Subtractor"; | ||||||
| 	logicUIDesc = "Subtracts B from A"; | 	logicUIDesc = "Subtracts B from A"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) local c = bool_to_int[gate.ports[17].state] " @ | 	logicUpdate = "return function(gate) local c = bool_to_int[gate.ports[17].state] " @ | ||||||
| "local a = 0 " @ | "local a = 0 " @ | ||||||
| "local b = 0 " @ | "local b = 0 " @ | ||||||
| "for i = 1, 8 do " @ | "for i = 1, 8 do " @ | ||||||
| 	"a = bool_to_int[gate.ports[i].state] " @ | 	"a = bool_to_int[gate.ports[i].state] " @ | ||||||
| 	"b = bool_to_int[gate.ports[i+8].state] " @ | 	"b = bool_to_int[gate.ports[i+8].state] " @ | ||||||
| 	"gate.ports[i+17]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | 	"gate.ports[i+17]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | ||||||
| 	"c = bit.bor(bit.bor(bit.band(bool_to_int[a == 0], b), bit.band(bool_to_int[a == 0], c)), bit.band(b, c)) " @ | 	"c = bit.bor(bit.bor(bit.band(bool_to_int[a == 0], b), bit.band(bool_to_int[a == 0], c)), bit.band(b, c)) " @ | ||||||
| "end " @ | "end " @ | ||||||
| "gate.ports[26]:setstate(c == 1) end"; | "gate.ports[26]:setstate(c == 1) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 26; | 	numLogicPorts = 26; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 -1 0"; | 	logicPortPos[0] = "-1 -1 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A0"; | 	logicPortUIName[0] = "A0"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "-3 -1 0"; | 	logicPortPos[1] = "-3 -1 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "A1"; | 	logicPortUIName[1] = "A1"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "-5 -1 0"; | 	logicPortPos[2] = "-5 -1 0"; | ||||||
| 	logicPortDir[2] = 3; | 	logicPortDir[2] = 3; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "A2"; | 	logicPortUIName[2] = "A2"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 1; | 	logicPortType[3] = 1; | ||||||
| 	logicPortPos[3] = "-7 -1 0"; | 	logicPortPos[3] = "-7 -1 0"; | ||||||
| 	logicPortDir[3] = 3; | 	logicPortDir[3] = 3; | ||||||
| 	logicPortCauseUpdate[3] = true; | 	logicPortCauseUpdate[3] = true; | ||||||
| 	logicPortUIName[3] = "A3"; | 	logicPortUIName[3] = "A3"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 1; | 	logicPortType[4] = 1; | ||||||
| 	logicPortPos[4] = "-9 -1 0"; | 	logicPortPos[4] = "-9 -1 0"; | ||||||
| 	logicPortDir[4] = 3; | 	logicPortDir[4] = 3; | ||||||
| 	logicPortCauseUpdate[4] = true; | 	logicPortCauseUpdate[4] = true; | ||||||
| 	logicPortUIName[4] = "A4"; | 	logicPortUIName[4] = "A4"; | ||||||
|  |  | ||||||
| 	logicPortType[5] = 1; | 	logicPortType[5] = 1; | ||||||
| 	logicPortPos[5] = "-11 -1 0"; | 	logicPortPos[5] = "-11 -1 0"; | ||||||
| 	logicPortDir[5] = 3; | 	logicPortDir[5] = 3; | ||||||
| 	logicPortCauseUpdate[5] = true; | 	logicPortCauseUpdate[5] = true; | ||||||
| 	logicPortUIName[5] = "A5"; | 	logicPortUIName[5] = "A5"; | ||||||
|  |  | ||||||
| 	logicPortType[6] = 1; | 	logicPortType[6] = 1; | ||||||
| 	logicPortPos[6] = "-13 -1 0"; | 	logicPortPos[6] = "-13 -1 0"; | ||||||
| 	logicPortDir[6] = 3; | 	logicPortDir[6] = 3; | ||||||
| 	logicPortCauseUpdate[6] = true; | 	logicPortCauseUpdate[6] = true; | ||||||
| 	logicPortUIName[6] = "A6"; | 	logicPortUIName[6] = "A6"; | ||||||
|  |  | ||||||
| 	logicPortType[7] = 1; | 	logicPortType[7] = 1; | ||||||
| 	logicPortPos[7] = "-15 -1 0"; | 	logicPortPos[7] = "-15 -1 0"; | ||||||
| 	logicPortDir[7] = 3; | 	logicPortDir[7] = 3; | ||||||
| 	logicPortCauseUpdate[7] = true; | 	logicPortCauseUpdate[7] = true; | ||||||
| 	logicPortUIName[7] = "A7"; | 	logicPortUIName[7] = "A7"; | ||||||
|  |  | ||||||
| 	logicPortType[8] = 1; | 	logicPortType[8] = 1; | ||||||
| 	logicPortPos[8] = "15 -1 0"; | 	logicPortPos[8] = "15 -1 0"; | ||||||
| 	logicPortDir[8] = 3; | 	logicPortDir[8] = 3; | ||||||
| 	logicPortCauseUpdate[8] = true; | 	logicPortCauseUpdate[8] = true; | ||||||
| 	logicPortUIName[8] = "B0"; | 	logicPortUIName[8] = "B0"; | ||||||
|  |  | ||||||
| 	logicPortType[9] = 1; | 	logicPortType[9] = 1; | ||||||
| 	logicPortPos[9] = "13 -1 0"; | 	logicPortPos[9] = "13 -1 0"; | ||||||
| 	logicPortDir[9] = 3; | 	logicPortDir[9] = 3; | ||||||
| 	logicPortCauseUpdate[9] = true; | 	logicPortCauseUpdate[9] = true; | ||||||
| 	logicPortUIName[9] = "B1"; | 	logicPortUIName[9] = "B1"; | ||||||
|  |  | ||||||
| 	logicPortType[10] = 1; | 	logicPortType[10] = 1; | ||||||
| 	logicPortPos[10] = "11 -1 0"; | 	logicPortPos[10] = "11 -1 0"; | ||||||
| 	logicPortDir[10] = 3; | 	logicPortDir[10] = 3; | ||||||
| 	logicPortCauseUpdate[10] = true; | 	logicPortCauseUpdate[10] = true; | ||||||
| 	logicPortUIName[10] = "B2"; | 	logicPortUIName[10] = "B2"; | ||||||
|  |  | ||||||
| 	logicPortType[11] = 1; | 	logicPortType[11] = 1; | ||||||
| 	logicPortPos[11] = "9 -1 0"; | 	logicPortPos[11] = "9 -1 0"; | ||||||
| 	logicPortDir[11] = 3; | 	logicPortDir[11] = 3; | ||||||
| 	logicPortCauseUpdate[11] = true; | 	logicPortCauseUpdate[11] = true; | ||||||
| 	logicPortUIName[11] = "B3"; | 	logicPortUIName[11] = "B3"; | ||||||
|  |  | ||||||
| 	logicPortType[12] = 1; | 	logicPortType[12] = 1; | ||||||
| 	logicPortPos[12] = "7 -1 0"; | 	logicPortPos[12] = "7 -1 0"; | ||||||
| 	logicPortDir[12] = 3; | 	logicPortDir[12] = 3; | ||||||
| 	logicPortCauseUpdate[12] = true; | 	logicPortCauseUpdate[12] = true; | ||||||
| 	logicPortUIName[12] = "B4"; | 	logicPortUIName[12] = "B4"; | ||||||
|  |  | ||||||
| 	logicPortType[13] = 1; | 	logicPortType[13] = 1; | ||||||
| 	logicPortPos[13] = "5 -1 0"; | 	logicPortPos[13] = "5 -1 0"; | ||||||
| 	logicPortDir[13] = 3; | 	logicPortDir[13] = 3; | ||||||
| 	logicPortCauseUpdate[13] = true; | 	logicPortCauseUpdate[13] = true; | ||||||
| 	logicPortUIName[13] = "B5"; | 	logicPortUIName[13] = "B5"; | ||||||
|  |  | ||||||
| 	logicPortType[14] = 1; | 	logicPortType[14] = 1; | ||||||
| 	logicPortPos[14] = "3 -1 0"; | 	logicPortPos[14] = "3 -1 0"; | ||||||
| 	logicPortDir[14] = 3; | 	logicPortDir[14] = 3; | ||||||
| 	logicPortCauseUpdate[14] = true; | 	logicPortCauseUpdate[14] = true; | ||||||
| 	logicPortUIName[14] = "B6"; | 	logicPortUIName[14] = "B6"; | ||||||
|  |  | ||||||
| 	logicPortType[15] = 1; | 	logicPortType[15] = 1; | ||||||
| 	logicPortPos[15] = "1 -1 0"; | 	logicPortPos[15] = "1 -1 0"; | ||||||
| 	logicPortDir[15] = 3; | 	logicPortDir[15] = 3; | ||||||
| 	logicPortCauseUpdate[15] = true; | 	logicPortCauseUpdate[15] = true; | ||||||
| 	logicPortUIName[15] = "B7"; | 	logicPortUIName[15] = "B7"; | ||||||
|  |  | ||||||
| 	logicPortType[16] = 1; | 	logicPortType[16] = 1; | ||||||
| 	logicPortPos[16] = "15 -1 0"; | 	logicPortPos[16] = "15 -1 0"; | ||||||
| 	logicPortDir[16] = 2; | 	logicPortDir[16] = 2; | ||||||
| 	logicPortCauseUpdate[16] = true; | 	logicPortCauseUpdate[16] = true; | ||||||
| 	logicPortUIName[16] = "Borrow In"; | 	logicPortUIName[16] = "Borrow In"; | ||||||
|  |  | ||||||
| 	logicPortType[17] = 0; | 	logicPortType[17] = 0; | ||||||
| 	logicPortPos[17] = "15 1 0"; | 	logicPortPos[17] = "15 1 0"; | ||||||
| 	logicPortDir[17] = 1; | 	logicPortDir[17] = 1; | ||||||
| 	logicPortUIName[17] = "Diff0"; | 	logicPortUIName[17] = "Diff0"; | ||||||
|  |  | ||||||
| 	logicPortType[18] = 0; | 	logicPortType[18] = 0; | ||||||
| 	logicPortPos[18] = "13 1 0"; | 	logicPortPos[18] = "13 1 0"; | ||||||
| 	logicPortDir[18] = 1; | 	logicPortDir[18] = 1; | ||||||
| 	logicPortUIName[18] = "Diff1"; | 	logicPortUIName[18] = "Diff1"; | ||||||
|  |  | ||||||
| 	logicPortType[19] = 0; | 	logicPortType[19] = 0; | ||||||
| 	logicPortPos[19] = "11 1 0"; | 	logicPortPos[19] = "11 1 0"; | ||||||
| 	logicPortDir[19] = 1; | 	logicPortDir[19] = 1; | ||||||
| 	logicPortUIName[19] = "Diff2"; | 	logicPortUIName[19] = "Diff2"; | ||||||
|  |  | ||||||
| 	logicPortType[20] = 0; | 	logicPortType[20] = 0; | ||||||
| 	logicPortPos[20] = "9 1 0"; | 	logicPortPos[20] = "9 1 0"; | ||||||
| 	logicPortDir[20] = 1; | 	logicPortDir[20] = 1; | ||||||
| 	logicPortUIName[20] = "Diff3"; | 	logicPortUIName[20] = "Diff3"; | ||||||
|  |  | ||||||
| 	logicPortType[21] = 0; | 	logicPortType[21] = 0; | ||||||
| 	logicPortPos[21] = "7 1 0"; | 	logicPortPos[21] = "7 1 0"; | ||||||
| 	logicPortDir[21] = 1; | 	logicPortDir[21] = 1; | ||||||
| 	logicPortUIName[21] = "Diff4"; | 	logicPortUIName[21] = "Diff4"; | ||||||
|  |  | ||||||
| 	logicPortType[22] = 0; | 	logicPortType[22] = 0; | ||||||
| 	logicPortPos[22] = "5 1 0"; | 	logicPortPos[22] = "5 1 0"; | ||||||
| 	logicPortDir[22] = 1; | 	logicPortDir[22] = 1; | ||||||
| 	logicPortUIName[22] = "Diff5"; | 	logicPortUIName[22] = "Diff5"; | ||||||
|  |  | ||||||
| 	logicPortType[23] = 0; | 	logicPortType[23] = 0; | ||||||
| 	logicPortPos[23] = "3 1 0"; | 	logicPortPos[23] = "3 1 0"; | ||||||
| 	logicPortDir[23] = 1; | 	logicPortDir[23] = 1; | ||||||
| 	logicPortUIName[23] = "Diff6"; | 	logicPortUIName[23] = "Diff6"; | ||||||
|  |  | ||||||
| 	logicPortType[24] = 0; | 	logicPortType[24] = 0; | ||||||
| 	logicPortPos[24] = "1 1 0"; | 	logicPortPos[24] = "1 1 0"; | ||||||
| 	logicPortDir[24] = 1; | 	logicPortDir[24] = 1; | ||||||
| 	logicPortUIName[24] = "Diff7"; | 	logicPortUIName[24] = "Diff7"; | ||||||
|  |  | ||||||
| 	logicPortType[25] = 0; | 	logicPortType[25] = 0; | ||||||
| 	logicPortPos[25] = "-15 -1 0"; | 	logicPortPos[25] = "-15 -1 0"; | ||||||
| 	logicPortDir[25] = 0; | 	logicPortDir[25] = 0; | ||||||
| 	logicPortUIName[25] = "Borrow Out"; | 	logicPortUIName[25] = "Borrow Out"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_8bitSubtractor_Data"); | lualogic_registergatedefinition("LogicGate_8bitSubtractor_Data"); | ||||||
|   | |||||||
| @@ -1,53 +1,53 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_FullAdder_Data) | datablock fxDTSBrickData(LogicGate_FullAdder_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/FullAdder.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/FullAdder.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "Full Adder"; | 	uiName = "Full Adder"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Full Adder"; | 	iconName = $LuaLogic::Path @ "icons/Full Adder"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "Full Adder"; | 	logicUIName = "Full Adder"; | ||||||
| 	logicUIDesc = "Adds A and B with carry in"; | 	logicUIDesc = "Adds A and B with carry in"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) local a, b, c = bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state], bool_to_int[gate.ports[3].state] " @ | 	logicUpdate = "return function(gate) local a, b, c = bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state], bool_to_int[gate.ports[3].state] " @ | ||||||
| "gate.ports[4]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | "gate.ports[4]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | ||||||
| "gate.ports[5]:setstate(bit.bor(bit.bor(bit.band(b, c), bit.band(a, c)), bit.band(a, b)) == 1) end"; | "gate.ports[5]:setstate(bit.bor(bit.bor(bit.band(b, c), bit.band(a, c)), bit.band(a, b)) == 1) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 5; | 	numLogicPorts = 5; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 0 0"; | 	logicPortPos[0] = "-1 0 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A"; | 	logicPortUIName[0] = "A"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "1 0 0"; | 	logicPortPos[1] = "1 0 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "B"; | 	logicPortUIName[1] = "B"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "1 0 0"; | 	logicPortPos[2] = "1 0 0"; | ||||||
| 	logicPortDir[2] = 2; | 	logicPortDir[2] = 2; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "Carry In"; | 	logicPortUIName[2] = "Carry In"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 0; | 	logicPortType[3] = 0; | ||||||
| 	logicPortPos[3] = "-1 0 0"; | 	logicPortPos[3] = "-1 0 0"; | ||||||
| 	logicPortDir[3] = 1; | 	logicPortDir[3] = 1; | ||||||
| 	logicPortUIName[3] = "Sum"; | 	logicPortUIName[3] = "Sum"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 0; | 	logicPortType[4] = 0; | ||||||
| 	logicPortPos[4] = "-1 0 0"; | 	logicPortPos[4] = "-1 0 0"; | ||||||
| 	logicPortDir[4] = 0; | 	logicPortDir[4] = 0; | ||||||
| 	logicPortUIName[4] = "Carry Out"; | 	logicPortUIName[4] = "Carry Out"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_FullAdder_Data"); | lualogic_registergatedefinition("LogicGate_FullAdder_Data"); | ||||||
|   | |||||||
| @@ -1,53 +1,53 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_FullSubtractor_Data) | datablock fxDTSBrickData(LogicGate_FullSubtractor_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/FullAdder.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/FullAdder.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "Full Subtractor"; | 	uiName = "Full Subtractor"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Full Subtractor"; | 	iconName = $LuaLogic::Path @ "icons/Full Subtractor"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "Full Subtractor"; | 	logicUIName = "Full Subtractor"; | ||||||
| 	logicUIDesc = "Subtracts B from A with borrow in"; | 	logicUIDesc = "Subtracts B from A with borrow in"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) local a, b, c = bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state], bool_to_int[gate.ports[3].state] " @ | 	logicUpdate = "return function(gate) local a, b, c = bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state], bool_to_int[gate.ports[3].state] " @ | ||||||
| "gate.ports[4]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | "gate.ports[4]:setstate(bit.bxor(bit.bxor(a, b), c) == 1) " @ | ||||||
| "gate.ports[5]:setstate(not gate.ports[1].state and gate.ports[2].state or not (bit.bxor(a, b) == 1) and gate.ports[3].state) end"; | "gate.ports[5]:setstate(not gate.ports[1].state and gate.ports[2].state or not (bit.bxor(a, b) == 1) and gate.ports[3].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 5; | 	numLogicPorts = 5; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 0 0"; | 	logicPortPos[0] = "-1 0 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A"; | 	logicPortUIName[0] = "A"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "1 0 0"; | 	logicPortPos[1] = "1 0 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "B"; | 	logicPortUIName[1] = "B"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "1 0 0"; | 	logicPortPos[2] = "1 0 0"; | ||||||
| 	logicPortDir[2] = 2; | 	logicPortDir[2] = 2; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "Borrow In"; | 	logicPortUIName[2] = "Borrow In"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 0; | 	logicPortType[3] = 0; | ||||||
| 	logicPortPos[3] = "-1 0 0"; | 	logicPortPos[3] = "-1 0 0"; | ||||||
| 	logicPortDir[3] = 1; | 	logicPortDir[3] = 1; | ||||||
| 	logicPortUIName[3] = "Difference"; | 	logicPortUIName[3] = "Difference"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 0; | 	logicPortType[4] = 0; | ||||||
| 	logicPortPos[4] = "-1 0 0"; | 	logicPortPos[4] = "-1 0 0"; | ||||||
| 	logicPortDir[4] = 0; | 	logicPortDir[4] = 0; | ||||||
| 	logicPortUIName[4] = "Borrow Out"; | 	logicPortUIName[4] = "Borrow Out"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_FullSubtractor_Data"); | lualogic_registergatedefinition("LogicGate_FullSubtractor_Data"); | ||||||
|   | |||||||
| @@ -1,46 +1,46 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_HalfAdder_Data) | datablock fxDTSBrickData(LogicGate_HalfAdder_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/HalfAdder.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/HalfAdder.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "Half Adder"; | 	uiName = "Half Adder"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Half Adder"; | 	iconName = $LuaLogic::Path @ "icons/Half Adder"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "Half Adder"; | 	logicUIName = "Half Adder"; | ||||||
| 	logicUIDesc = "Adds A and B"; | 	logicUIDesc = "Adds A and B"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[3]:setstate(bit.bxor(bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state]) == 1) " @ | 	logicUpdate = "return function(gate) gate.ports[3]:setstate(bit.bxor(bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state]) == 1) " @ | ||||||
| "gate.ports[4]:setstate(gate.ports[1].state and gate.ports[2].state) end"; | "gate.ports[4]:setstate(gate.ports[1].state and gate.ports[2].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 4; | 	numLogicPorts = 4; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 0 0"; | 	logicPortPos[0] = "-1 0 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A"; | 	logicPortUIName[0] = "A"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "1 0 0"; | 	logicPortPos[1] = "1 0 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "B"; | 	logicPortUIName[1] = "B"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 0; | 	logicPortType[2] = 0; | ||||||
| 	logicPortPos[2] = "-1 0 0"; | 	logicPortPos[2] = "-1 0 0"; | ||||||
| 	logicPortDir[2] = 1; | 	logicPortDir[2] = 1; | ||||||
| 	logicPortUIName[2] = "Sum"; | 	logicPortUIName[2] = "Sum"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 0; | 	logicPortType[3] = 0; | ||||||
| 	logicPortPos[3] = "-1 0 0"; | 	logicPortPos[3] = "-1 0 0"; | ||||||
| 	logicPortDir[3] = 0; | 	logicPortDir[3] = 0; | ||||||
| 	logicPortUIName[3] = "Carry"; | 	logicPortUIName[3] = "Carry"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_HalfAdder_Data"); | lualogic_registergatedefinition("LogicGate_HalfAdder_Data"); | ||||||
|   | |||||||
| @@ -1,46 +1,46 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_HalfSubtractor_Data) | datablock fxDTSBrickData(LogicGate_HalfSubtractor_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/HalfAdder.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/HalfAdder.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Math"; | 	subCategory = "Math"; | ||||||
| 	uiName = "Half Subtractor"; | 	uiName = "Half Subtractor"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Half Subtractor"; | 	iconName = $LuaLogic::Path @ "icons/Half Subtractor"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "Half Subtractor"; | 	logicUIName = "Half Subtractor"; | ||||||
| 	logicUIDesc = "Subtracts B from A"; | 	logicUIDesc = "Subtracts B from A"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate.ports[3]:setstate(bit.bxor(bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state]) == 1) " @ | 	logicUpdate = "return function(gate) gate.ports[3]:setstate(bit.bxor(bool_to_int[gate.ports[1].state], bool_to_int[gate.ports[2].state]) == 1) " @ | ||||||
| "gate.ports[4]:setstate(not gate.ports[1].state and gate.ports[2].state) end"; | "gate.ports[4]:setstate(not gate.ports[1].state and gate.ports[2].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 4; | 	numLogicPorts = 4; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 0 0"; | 	logicPortPos[0] = "-1 0 0"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "A"; | 	logicPortUIName[0] = "A"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "1 0 0"; | 	logicPortPos[1] = "1 0 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "B"; | 	logicPortUIName[1] = "B"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 0; | 	logicPortType[2] = 0; | ||||||
| 	logicPortPos[2] = "-1 0 0"; | 	logicPortPos[2] = "-1 0 0"; | ||||||
| 	logicPortDir[2] = 1; | 	logicPortDir[2] = 1; | ||||||
| 	logicPortUIName[2] = "Difference"; | 	logicPortUIName[2] = "Difference"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 0; | 	logicPortType[3] = 0; | ||||||
| 	logicPortPos[3] = "-1 0 0"; | 	logicPortPos[3] = "-1 0 0"; | ||||||
| 	logicPortDir[3] = 0; | 	logicPortDir[3] = 0; | ||||||
| 	logicPortUIName[3] = "Borrow"; | 	logicPortUIName[3] = "Borrow"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_HalfSubtractor_Data"); | lualogic_registergatedefinition("LogicGate_HalfSubtractor_Data"); | ||||||
|   | |||||||
| @@ -1,17 +1,17 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_DFlipFlop_Data : LogicGate_OR_Data) | datablock fxDTSBrickData(LogicGate_DFlipFlop_Data : LogicGate_OR_Data) | ||||||
| { | { | ||||||
| 	subCategory = "Memory"; | 	subCategory = "Memory"; | ||||||
| 	uiName = "D FlipFlop"; | 	uiName = "D FlipFlop"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/D FlipFlop"; | 	iconName = $LuaLogic::Path @ "icons/D FlipFlop"; | ||||||
|  |  | ||||||
| 	logicUIName = "D FlipFlop"; | 	logicUIName = "D FlipFlop"; | ||||||
| 	logicUIDesc = "Q becomes D when C rises"; | 	logicUIDesc = "Q becomes D when C rises"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) if gate.ports[1]:isrising() then gate.ports[3]:setstate(gate.ports[2].state) end end"; | 	logicUpdate = "return function(gate) if gate.ports[1]:isrising() then gate.ports[3]:setstate(gate.ports[2].state) end end"; | ||||||
|  |  | ||||||
| 	logicPortUIName[0] = "C"; | 	logicPortUIName[0] = "C"; | ||||||
| 	logicPortCauseUpdate[1] = false; | 	logicPortCauseUpdate[1] = false; | ||||||
| 	logicPortUIName[1] = "D"; | 	logicPortUIName[1] = "D"; | ||||||
| 	logicPortUIName[2] = "Q"; | 	logicPortUIName[2] = "Q"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_DFlipFlop_Data"); | lualogic_registergatedefinition("LogicGate_DFlipFlop_Data"); | ||||||
|   | |||||||
| @@ -1,60 +1,60 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_DFlipflopGridMemory2_Data) | datablock fxDTSBrickData(LogicGate_DFlipflopGridMemory2_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/DFlipflopGridMemory2.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/DFlipflopGridMemory2.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Memory"; | 	subCategory = "Memory"; | ||||||
| 	uiName = "D Flipflop Grid Memory 2"; | 	uiName = "D Flipflop Grid Memory 2"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/D Flipflop Grid Memory 2"; | 	iconName = $LuaLogic::Path @ "icons/D Flipflop Grid Memory 2"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "D Flipflop Grid Memory 2"; | 	logicUIName = "D Flipflop Grid Memory 2"; | ||||||
| 	logicUIDesc = "D Flipflop where Clk = C & A & B, R = Q & A & B"; | 	logicUIDesc = "D Flipflop where Clk = C & A & B, R = Q & A & B"; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) if gate.ports[3].state and gate.ports[4].state and gate.ports[6]:isrising() then " @ | 	logicUpdate = "return function(gate) if gate.ports[3].state and gate.ports[4].state and gate.ports[6]:isrising() then " @ | ||||||
| "	gate.ports[1]:setstate(gate.ports[5].state) " @ | "	gate.ports[1]:setstate(gate.ports[5].state) " @ | ||||||
| "end " @ | "end " @ | ||||||
| "gate.ports[2]:setstate(gate.ports[3].state and gate.ports[4].state and gate.ports[1].state) end"; | "gate.ports[2]:setstate(gate.ports[3].state and gate.ports[4].state and gate.ports[1].state) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 6; | 	numLogicPorts = 6; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 0; | 	logicPortType[0] = 0; | ||||||
| 	logicPortPos[0] = "0 0 4"; | 	logicPortPos[0] = "0 0 4"; | ||||||
| 	logicPortDir[0] = 4; | 	logicPortDir[0] = 4; | ||||||
| 	logicPortUIName[0] = "Q"; | 	logicPortUIName[0] = "Q"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 0; | 	logicPortType[1] = 0; | ||||||
| 	logicPortPos[1] = "0 0 4"; | 	logicPortPos[1] = "0 0 4"; | ||||||
| 	logicPortDir[1] = 1; | 	logicPortDir[1] = 1; | ||||||
| 	logicPortUIName[1] = "Readout"; | 	logicPortUIName[1] = "Readout"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "0 0 0"; | 	logicPortPos[2] = "0 0 0"; | ||||||
| 	logicPortDir[2] = 2; | 	logicPortDir[2] = 2; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "A"; | 	logicPortUIName[2] = "A"; | ||||||
|  |  | ||||||
| 	logicPortType[3] = 1; | 	logicPortType[3] = 1; | ||||||
| 	logicPortPos[3] = "0 0 2"; | 	logicPortPos[3] = "0 0 2"; | ||||||
| 	logicPortDir[3] = 1; | 	logicPortDir[3] = 1; | ||||||
| 	logicPortCauseUpdate[3] = true; | 	logicPortCauseUpdate[3] = true; | ||||||
| 	logicPortUIName[3] = "B"; | 	logicPortUIName[3] = "B"; | ||||||
|  |  | ||||||
| 	logicPortType[4] = 1; | 	logicPortType[4] = 1; | ||||||
| 	logicPortPos[4] = "0 0 -4"; | 	logicPortPos[4] = "0 0 -4"; | ||||||
| 	logicPortDir[4] = 1; | 	logicPortDir[4] = 1; | ||||||
| 	logicPortCauseUpdate[4] = false; | 	logicPortCauseUpdate[4] = false; | ||||||
| 	logicPortUIName[4] = "Data"; | 	logicPortUIName[4] = "Data"; | ||||||
|  |  | ||||||
| 	logicPortType[5] = 1; | 	logicPortType[5] = 1; | ||||||
| 	logicPortPos[5] = "0 0 -2"; | 	logicPortPos[5] = "0 0 -2"; | ||||||
| 	logicPortDir[5] = 1; | 	logicPortDir[5] = 1; | ||||||
| 	logicPortCauseUpdate[5] = true; | 	logicPortCauseUpdate[5] = true; | ||||||
| 	logicPortUIName[5] = "Clock"; | 	logicPortUIName[5] = "Clock"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_DFlipflopGridMemory2_Data"); | lualogic_registergatedefinition("LogicGate_DFlipflopGridMemory2_Data"); | ||||||
|   | |||||||
| @@ -1,48 +0,0 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_HorizontalPixel_Data) |  | ||||||
| { |  | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/pixels/HPixel.blb"; |  | ||||||
| 	category = "Logic Bricks"; |  | ||||||
| 	subCategory = "Outputs"; |  | ||||||
| 	uiName = "Horizontal Pixel"; |  | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Horizontal Pixel"; |  | ||||||
| 	hasPrint = 1; |  | ||||||
| 	printAspectRatio = "Logic"; |  | ||||||
| 	orientationFix = 3; |  | ||||||
|  |  | ||||||
| 	isLogic = true; |  | ||||||
| 	isLogicGate = true; |  | ||||||
| 	isLogicInput = false; |  | ||||||
|  |  | ||||||
| 	logicUIName = "Horizontal Pixel"; |  | ||||||
| 	logicUIDesc = ""; |  | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate:cb(\"3\t\" .. bool_to_int[gate.ports[1].state] .. \"\t\" .. bool_to_int[gate.ports[2].state] .. \"\t\" .. bool_to_int[gate.ports[3].state]) end"; |  | ||||||
|  |  | ||||||
| 	numLogicPorts = 3; |  | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; |  | ||||||
| 	logicPortPos[0] = "-1 1 0"; |  | ||||||
| 	logicPortDir[0] = 5; |  | ||||||
| 	logicPortCauseUpdate[0] = true; |  | ||||||
| 	logicPortUIName[0] = "R"; |  | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; |  | ||||||
| 	logicPortPos[1] = "-1 -1 0"; |  | ||||||
| 	logicPortDir[1] = 5; |  | ||||||
| 	logicPortCauseUpdate[1] = true; |  | ||||||
| 	logicPortUIName[1] = "G"; |  | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; |  | ||||||
| 	logicPortPos[2] = "1 -1 0"; |  | ||||||
| 	logicPortDir[2] = 5; |  | ||||||
| 	logicPortCauseUpdate[2] = true; |  | ||||||
| 	logicPortUIName[2] = "B"; |  | ||||||
| }; |  | ||||||
| lualogic_registergatedefinition("LogicGate_HorizontalPixel_Data"); |  | ||||||
|  |  | ||||||
| function LogicGate_HorizontalPixel_Data::LuaLogic_Callback(%this, %obj, %data) |  | ||||||
| { |  | ||||||
| 	%color = getField(%data, 0) @ getField(%data, 1) @ getField(%data, 2); |  | ||||||
| 	if(lualogic_isprint("COLOR" @ %color)) |  | ||||||
| 		%obj.setPrint(lualogic_getprint("COLOR" @ %color)); |  | ||||||
| } |  | ||||||
| @@ -1,48 +1,91 @@ | |||||||
| datablock fxDTSBrickData(LogicGate_Pixel_Data) | datablock fxDTSBrickData(LogicGate_Pixel_Data) | ||||||
| { | { | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/pixels/pixel.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/pixels/pixel.blb"; | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Outputs"; | 	subCategory = "Outputs"; | ||||||
| 	uiName = "Pixel"; | 	uiName = "Pixel"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Pixel"; | 	iconName = $LuaLogic::Path @ "icons/Pixel"; | ||||||
| 	hasPrint = 1; | 	hasPrint = 1; | ||||||
| 	printAspectRatio = "Logic"; | 	printAspectRatio = "Logic"; | ||||||
| 	orientationFix = 3; | 	orientationFix = 3; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicGate = true; | 	isLogicGate = true; | ||||||
| 	isLogicInput = false; | 	isLogicInput = false; | ||||||
|  |  | ||||||
| 	logicUIName = "Pixel"; | 	logicUIName = "Pixel"; | ||||||
| 	logicUIDesc = ""; | 	logicUIDesc = ""; | ||||||
|  |  | ||||||
| 	logicUpdate = "return function(gate) gate:cb(\"3\t\" .. bool_to_int[gate.ports[1].state] .. \"\t\" .. bool_to_int[gate.ports[2].state] .. \"\t\" .. bool_to_int[gate.ports[3].state]) end"; | 	logicUpdate = "return function(gate) gate:cb(bool_to_int[gate.ports[1].state] .. bool_to_int[gate.ports[2].state] .. bool_to_int[gate.ports[3].state]) end"; | ||||||
|  |  | ||||||
| 	numLogicPorts = 3; | 	numLogicPorts = 3; | ||||||
|  |  | ||||||
| 	logicPortType[0] = 1; | 	logicPortType[0] = 1; | ||||||
| 	logicPortPos[0] = "-1 0 -4"; | 	logicPortPos[0] = "-1 0 -4"; | ||||||
| 	logicPortDir[0] = 3; | 	logicPortDir[0] = 3; | ||||||
| 	logicPortCauseUpdate[0] = true; | 	logicPortCauseUpdate[0] = true; | ||||||
| 	logicPortUIName[0] = "R"; | 	logicPortUIName[0] = "R"; | ||||||
|  |  | ||||||
| 	logicPortType[1] = 1; | 	logicPortType[1] = 1; | ||||||
| 	logicPortPos[1] = "-1 0 0"; | 	logicPortPos[1] = "-1 0 0"; | ||||||
| 	logicPortDir[1] = 3; | 	logicPortDir[1] = 3; | ||||||
| 	logicPortCauseUpdate[1] = true; | 	logicPortCauseUpdate[1] = true; | ||||||
| 	logicPortUIName[1] = "G"; | 	logicPortUIName[1] = "G"; | ||||||
|  |  | ||||||
| 	logicPortType[2] = 1; | 	logicPortType[2] = 1; | ||||||
| 	logicPortPos[2] = "-1 0 4"; | 	logicPortPos[2] = "-1 0 4"; | ||||||
| 	logicPortDir[2] = 3; | 	logicPortDir[2] = 3; | ||||||
| 	logicPortCauseUpdate[2] = true; | 	logicPortCauseUpdate[2] = true; | ||||||
| 	logicPortUIName[2] = "B"; | 	logicPortUIName[2] = "B"; | ||||||
| }; | }; | ||||||
| lualogic_registergatedefinition("LogicGate_Pixel_Data"); | lualogic_registergatedefinition("LogicGate_Pixel_Data"); | ||||||
|  |  | ||||||
| function LogicGate_Pixel_Data::LuaLogic_Callback(%this, %obj, %data) | datablock fxDTSBrickData(LogicGate_HorizontalPixel_Data : LogicGate_Pixel_Data) | ||||||
| { | { | ||||||
| 	%color = getField(%data, 0) @ getField(%data, 1) @ getField(%data, 2); | 	brickFile = $LuaLogic::Path @ "bricks/blb/pixels/HPixel.blb"; | ||||||
| 	if(lualogic_isprint("COLOR" @ %color)) | 	category = "Logic Bricks"; | ||||||
| 		%obj.setPrint(lualogic_getprint("COLOR" @ %color)); | 	subCategory = "Outputs"; | ||||||
| } | 	uiName = "Horizontal Pixel"; | ||||||
|  | 	iconName = $LuaLogic::Path @ "icons/Horizontal Pixel"; | ||||||
|  | 	hasPrint = 1; | ||||||
|  | 	printAspectRatio = "Logic"; | ||||||
|  | 	orientationFix = 3; | ||||||
|  |  | ||||||
|  | 	isLogic = true; | ||||||
|  | 	isLogicGate = true; | ||||||
|  | 	isLogicInput = false; | ||||||
|  |  | ||||||
|  | 	logicUIName = "Horizontal Pixel"; | ||||||
|  | 	logicUIDesc = ""; | ||||||
|  |  | ||||||
|  | 	numLogicPorts = 3; | ||||||
|  |  | ||||||
|  | 	logicPortType[0] = 1; | ||||||
|  | 	logicPortPos[0] = "-1 1 0"; | ||||||
|  | 	logicPortDir[0] = 5; | ||||||
|  | 	logicPortCauseUpdate[0] = true; | ||||||
|  | 	logicPortUIName[0] = "R"; | ||||||
|  |  | ||||||
|  | 	logicPortType[1] = 1; | ||||||
|  | 	logicPortPos[1] = "-1 -1 0"; | ||||||
|  | 	logicPortDir[1] = 5; | ||||||
|  | 	logicPortCauseUpdate[1] = true; | ||||||
|  | 	logicPortUIName[1] = "G"; | ||||||
|  |  | ||||||
|  | 	logicPortType[2] = 1; | ||||||
|  | 	logicPortPos[2] = "1 -1 0"; | ||||||
|  | 	logicPortDir[2] = 5; | ||||||
|  | 	logicPortCauseUpdate[2] = true; | ||||||
|  | 	logicPortUIName[2] = "B"; | ||||||
|  | }; | ||||||
|  | lualogic_registergatedefinition("LogicGate_HorizontalPixel_Data"); | ||||||
|  |  | ||||||
|  | function LogicGate_Pixel_Data::LuaLogic_Callback(%this, %brick, %color){ | ||||||
|  | 	if(lualogic_isprint("COLOR" @ %color)) | ||||||
|  | 		%brick.setPrint(lualogic_getprint("COLOR" @ %color)); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function LogicGate_HorizontalPixel_Data::LuaLogic_Callback(%this, %obj, %data) | ||||||
|  | { | ||||||
|  | 	LogicGate_Pixel_Data::LuaLogic_Callback(%this, %obj, %data); | ||||||
|  | } | ||||||
|   | |||||||
							
								
								
									
										718
									
								
								bricks/wires.cs
									
									
									
									
									
								
							
							
						
						
									
										718
									
								
								bricks/wires.cs
									
									
									
									
									
								
							| @@ -1,359 +1,359 @@ | |||||||
| datablock fxDTSBrickData(LogicWire1x1fData : brick1x1fData) | datablock fxDTSBrickData(LogicWire1x1fData : brick1x1fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x1f"; | 	uiName = "Wire 1x1f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x2fData : brick1x2fData) | datablock fxDTSBrickData(LogicWire1x2fData : brick1x2fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x2f"; | 	uiName = "Wire 1x2f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x2f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x2f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x3fData : brick1x3fData) | datablock fxDTSBrickData(LogicWire1x3fData : brick1x3fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x3f"; | 	uiName = "Wire 1x3f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x3f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x3f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x4fData : brick1x4fData) | datablock fxDTSBrickData(LogicWire1x4fData : brick1x4fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x4f"; | 	uiName = "Wire 1x4f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x4f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x4f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x5fData : LogicWire1x4fData) | datablock fxDTSBrickData(LogicWire1x5fData : LogicWire1x4fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x5f"; | 	uiName = "Wire 1x5f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x5f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x5f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x5f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x5f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x6fData : brick1x6fData) | datablock fxDTSBrickData(LogicWire1x6fData : brick1x6fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x6f"; | 	uiName = "Wire 1x6f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x6f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x6f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x7fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x7fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x7f"; | 	uiName = "Wire 1x7f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x7f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x7f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x7f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x7f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x8fData : brick1x8fData) | datablock fxDTSBrickData(LogicWire1x8fData : brick1x8fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x8f"; | 	uiName = "Wire 1x8f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x8f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x8f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x9fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x9fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x9f"; | 	uiName = "Wire 1x9f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x9f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x9f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x9f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x9f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x10fData : brick1x10fData) | datablock fxDTSBrickData(LogicWire1x10fData : brick1x10fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x10f"; | 	uiName = "Wire 1x10f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x10f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x10f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x11fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x11fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x11f"; | 	uiName = "Wire 1x11f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x11f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x11f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x11f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x11f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x12fData : brick1x12fData) | datablock fxDTSBrickData(LogicWire1x12fData : brick1x12fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x12f"; | 	uiName = "Wire 1x12f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x12f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x12f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x13fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x13fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x13f"; | 	uiName = "Wire 1x13f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x13f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x13f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x13f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x13f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x14fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x14fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x14f"; | 	uiName = "Wire 1x14f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x14f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x14f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x14f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x14f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x15fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x15fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x15f"; | 	uiName = "Wire 1x15f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x15f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x15f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x15f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x15f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x16fData : brick1x16fData) | datablock fxDTSBrickData(LogicWire1x16fData : brick1x16fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x16f"; | 	uiName = "Wire 1x16f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x16f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x16f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x32fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x32fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x32f"; | 	uiName = "Wire 1x32f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x32f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x32f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x32f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x32f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x64fData : LogicWire1x5fData) | datablock fxDTSBrickData(LogicWire1x64fData : LogicWire1x5fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x64f"; | 	uiName = "Wire 1x64f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x64f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x64f"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x64f.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x64f.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x2Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x2Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x2"; | 	uiName = "Wire 1x1x2"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x2"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x2"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x2.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x2.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x3Data : brick1x1Data) | datablock fxDTSBrickData(LogicWire1x1x3Data : brick1x1Data) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x1x3"; | 	uiName = "Wire 1x1x3"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x3"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x3"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x4Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x4Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x4"; | 	uiName = "Wire 1x1x4"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x4"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x4"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x4.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x4.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x5Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x5Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x5"; | 	uiName = "Wire 1x1x5"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x5"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x5"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x5.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x5.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x6Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x6Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x6"; | 	uiName = "Wire 1x1x6"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x6"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x6"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x6.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x6.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x7Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x7Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x7"; | 	uiName = "Wire 1x1x7"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x7"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x7"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x7.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x7.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x8Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x8Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x8"; | 	uiName = "Wire 1x1x8"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x8"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x8"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x8.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x8.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x9Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x9Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x9"; | 	uiName = "Wire 1x1x9"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x9"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x9"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x9.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x9.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x10Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x10Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x10"; | 	uiName = "Wire 1x1x10"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x10"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x10"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x10.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x10.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x11Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x11Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x11"; | 	uiName = "Wire 1x1x11"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x11"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x11"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x11.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x11.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x12Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x12Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x12"; | 	uiName = "Wire 1x1x12"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x12"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x12"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x12.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x12.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x13Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x13Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x13"; | 	uiName = "Wire 1x1x13"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x13"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x13"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x13.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x13.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x14Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x14Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x14"; | 	uiName = "Wire 1x1x14"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x14"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x14"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x14.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x14.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x15Data : Brick1x1x5Data) | datablock fxDTSBrickData(LogicWire1x1x15Data : Brick1x1x5Data) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 1x1x15"; | 	uiName = "Wire 1x1x15"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x15"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x15"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x16Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x16Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x16"; | 	uiName = "Wire 1x1x16"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x16"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x16"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x16.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x16.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x17Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x17Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x17"; | 	uiName = "Wire 1x1x17"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x17"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x17"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x17.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x17.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x128Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x1x128Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x1x128"; | 	uiName = "Wire 1x1x128"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x128"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x1x128"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x128.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x1x128.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x2x5Data : LogicWire1x64fData) | datablock fxDTSBrickData(LogicWire1x2x5Data : LogicWire1x64fData) | ||||||
| { | { | ||||||
| 	uiName = "Wire 1x2x5"; | 	uiName = "Wire 1x2x5"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 1x2x5"; | 	iconName = $LuaLogic::Path @ "icons/Wire 1x2x5"; | ||||||
| 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x2x5.blb"; | 	brickFile = $LuaLogic::Path @ "bricks/blb/wires/1x2x5.blb"; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire64x64fData : brick64x64fData) | datablock fxDTSBrickData(LogicWire64x64fData : brick64x64fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires"; | 	subCategory = "Wires"; | ||||||
| 	uiName = "Wire 64x64f"; | 	uiName = "Wire 64x64f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Wire 64x64f"; | 	iconName = $LuaLogic::Path @ "icons/Wire 64x64f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| //VISUAL | //VISUAL | ||||||
| datablock fxDTSBrickData(LogicWire1x1fVisualData : LogicWire1x1fData) | datablock fxDTSBrickData(LogicWire1x1fVisualData : LogicWire1x1fData) | ||||||
| { | { | ||||||
| 	subCategory = "Wires - Special"; | 	subCategory = "Wires - Special"; | ||||||
| 	uiName = "Visual Wire 1x1f"; | 	uiName = "Visual Wire 1x1f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1f"; | 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1f"; | ||||||
| 	isLogicVisual = true; | 	isLogicVisual = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x2VisualData : LogicWire1x1x2Data) | datablock fxDTSBrickData(LogicWire1x1x2VisualData : LogicWire1x1x2Data) | ||||||
| { | { | ||||||
| 	subCategory = "Wires - Special"; | 	subCategory = "Wires - Special"; | ||||||
| 	uiName = "Visual Wire 1x1x2"; | 	uiName = "Visual Wire 1x1x2"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1x2"; | 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1x2"; | ||||||
| 	isLogicVisual = true; | 	isLogicVisual = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x3VisualData : LogicWire1x1x3Data) | datablock fxDTSBrickData(LogicWire1x1x3VisualData : LogicWire1x1x3Data) | ||||||
| { | { | ||||||
| 	subCategory = "Wires - Special"; | 	subCategory = "Wires - Special"; | ||||||
| 	uiName = "Visual Wire 1x1x3"; | 	uiName = "Visual Wire 1x1x3"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1x3"; | 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1x3"; | ||||||
| 	isLogicVisual = true; | 	isLogicVisual = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x1x15VisualData : LogicWire1x1x15Data) | datablock fxDTSBrickData(LogicWire1x1x15VisualData : LogicWire1x1x15Data) | ||||||
| { | { | ||||||
| 	subCategory = "Wires - Special"; | 	subCategory = "Wires - Special"; | ||||||
| 	uiName = "Visual Wire 1x1x15"; | 	uiName = "Visual Wire 1x1x15"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1x15"; | 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x1x15"; | ||||||
| 	isLogicVisual = true; | 	isLogicVisual = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire1x2x5VisualData : LogicWire1x2x5Data) | datablock fxDTSBrickData(LogicWire1x2x5VisualData : LogicWire1x2x5Data) | ||||||
| { | { | ||||||
| 	subCategory = "Wires - Special"; | 	subCategory = "Wires - Special"; | ||||||
| 	uiName = "Visual Wire 1x2x5"; | 	uiName = "Visual Wire 1x2x5"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x2x5"; | 	iconName = $LuaLogic::Path @ "icons/Visual Wire 1x2x5"; | ||||||
| 	isLogicVisual = true; | 	isLogicVisual = true; | ||||||
| }; | }; | ||||||
|  |  | ||||||
| datablock fxDTSBrickData(LogicWire2x2fVisualData : brick2x2fData) | datablock fxDTSBrickData(LogicWire2x2fVisualData : brick2x2fData) | ||||||
| { | { | ||||||
| 	category = "Logic Bricks"; | 	category = "Logic Bricks"; | ||||||
| 	subCategory = "Wires - Special"; | 	subCategory = "Wires - Special"; | ||||||
| 	uiName = "Visual Wire 2x2f"; | 	uiName = "Visual Wire 2x2f"; | ||||||
| 	iconName = $LuaLogic::Path @ "icons/Visual Wire 2x2f"; | 	iconName = $LuaLogic::Path @ "icons/Visual Wire 2x2f"; | ||||||
|  |  | ||||||
| 	isLogic = true; | 	isLogic = true; | ||||||
| 	isLogicWire = true; | 	isLogicWire = true; | ||||||
| 	isLogicVisual = true; | 	isLogicVisual = true; | ||||||
| }; | }; | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| Title: Brick_LuaLogic | Title: Brick_LuaLogic | ||||||
| Authors: Eagle517 (25351), Redo (12878), Entity (49803) | Authors: Eagle517 (25351), Redo (12878), Entity (49803) | ||||||
| https://github.com/Eagle517/BL-Lua-Logic | https://github.com/Eagle517/BL-Lua-Logic | ||||||
| Lets you simulate logic circuits in Blockland while using Lua as the backend for performance. | Lets you simulate logic circuits in Blockland while using Lua as the backend for performance. | ||||||
|   | |||||||
| @@ -20,7 +20,6 @@ exec($LuaLogic::Path @ "bricks/inputs/keyboard.cs"); | |||||||
|  |  | ||||||
| //Outputs | //Outputs | ||||||
| exec($LuaLogic::Path @ "bricks/outputs/pixel.cs"); | exec($LuaLogic::Path @ "bricks/outputs/pixel.cs"); | ||||||
| exec($LuaLogic::Path @ "bricks/outputs/HorizontalPixel.cs"); |  | ||||||
| exec($LuaLogic::Path @ "bricks/outputs/TextBrick.cs"); | exec($LuaLogic::Path @ "bricks/outputs/TextBrick.cs"); | ||||||
|  |  | ||||||
| //Math | //Math | ||||||
|   | |||||||
							
								
								
									
										164
									
								
								scripts/cmds.cs
									
									
									
									
									
								
							
							
						
						
									
										164
									
								
								scripts/cmds.cs
									
									
									
									
									
								
							| @@ -1,82 +1,82 @@ | |||||||
| function serverCmdLT(%client) | function serverCmdLT(%client) | ||||||
| { | { | ||||||
| 	if(%client.isAdmin || %client.isSuperAdmin) | 	if(%client.isAdmin || %client.isSuperAdmin) | ||||||
| 	{ | 	{ | ||||||
| 		$Pref::Server::LuaLogic::OPT_TICK_ENABLED = !$Pref::Server::LuaLogic::OPT_TICK_ENABLED; | 		$Pref::Server::LuaLogic::OPT_TICK_ENABLED = !$Pref::Server::LuaLogic::OPT_TICK_ENABLED; | ||||||
| 		messageAll('', '\c3%1\c6 has %2 the logic tick.', %client.name, $Pref::Server::LuaLogic::OPT_TICK_ENABLED ? "enabled":"disabled"); | 		messageAll('', '\c3%1\c6 has %2 the logic tick.', %client.name, $Pref::Server::LuaLogic::OPT_TICK_ENABLED ? "enabled":"disabled"); | ||||||
| 		lualogic_sendoptions(); | 		lualogic_sendoptions(); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| function serverCmdLST(%client, %time) | function serverCmdLST(%client, %time) | ||||||
| { | { | ||||||
| 	if(%client.isAdmin || %client.isSuperAdmin) | 	if(%client.isAdmin || %client.isSuperAdmin) | ||||||
| 	{ | 	{ | ||||||
| 		%time = mClamp(%time, 0, 999999); | 		%time = mClamp(%time, 0, 999999); | ||||||
| 		$Pref::Server::LuaLogic::OPT_TICK_TIME = %time/1000; | 		$Pref::Server::LuaLogic::OPT_TICK_TIME = %time/1000; | ||||||
| 		messageAll('', '\c3%1\c6 has set the logic tick time to \c3%2\c6 millisecond%3.', %client.name, %time, %time == 1 ? "":"s"); | 		messageAll('', '\c3%1\c6 has set the logic tick time to \c3%2\c6 millisecond%3.', %client.name, %time, %time == 1 ? "":"s"); | ||||||
| 		lualogic_sendoptions(); | 		lualogic_sendoptions(); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| function serverCmdLS(%client) | function serverCmdLS(%client) | ||||||
| { | { | ||||||
| 	if(%client.isAdmin || %client.isSuperAdmin) | 	if(%client.isAdmin || %client.isSuperAdmin) | ||||||
| 	{ | 	{ | ||||||
| 		commandToAll('bottomprint', "\c3" @ %client.name @ "\c6 has forced a logic tick.", 3, 1); | 		commandToAll('bottomprint', "\c3" @ %client.name @ "\c6 has forced a logic tick.", 3, 1); | ||||||
| 		lualogic_send("TICK"); | 		lualogic_send("TICK"); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| function serverCmdLFX(%client) | function serverCmdLFX(%client) | ||||||
| { | { | ||||||
| 	if(%client.isAdmin || %client.isSuperAdmin) | 	if(%client.isAdmin || %client.isSuperAdmin) | ||||||
| 	{ | 	{ | ||||||
| 		$Pref::Server::LuaLogic::OPT_FX_UPDATES = !$Pref::Server::LuaLogic::OPT_FX_UPDATES; | 		$Pref::Server::LuaLogic::OPT_FX_UPDATES = !$Pref::Server::LuaLogic::OPT_FX_UPDATES; | ||||||
| 		messageAll('', '\c3%1\c6 has %2 logic FX updates.', %client.name, $Pref::Server::LuaLogic::OPT_FX_UPDATES ? "enabled":"disabled"); | 		messageAll('', '\c3%1\c6 has %2 logic FX updates.', %client.name, $Pref::Server::LuaLogic::OPT_FX_UPDATES ? "enabled":"disabled"); | ||||||
| 		lualogic_sendoptions(); | 		lualogic_sendoptions(); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| function serverCmdLFXT(%client, %time) | function serverCmdLFXT(%client, %time) | ||||||
| { | { | ||||||
| 	if(%client.isAdmin || %client.isSuperAdmin) | 	if(%client.isAdmin || %client.isSuperAdmin) | ||||||
| 	{ | 	{ | ||||||
| 		%time = mClamp(%time, 0, 999999); | 		%time = mClamp(%time, 0, 999999); | ||||||
| 		$Pref::Server::LuaLogic::OPT_FX_TIME = %time/1000; | 		$Pref::Server::LuaLogic::OPT_FX_TIME = %time/1000; | ||||||
| 		messageAll('', '\c3%1\c6 has set the logic FX time to \c3%2\c6 millisecond%3.', %client.name, %time, %time == 1 ? "":"s"); | 		messageAll('', '\c3%1\c6 has set the logic FX time to \c3%2\c6 millisecond%3.', %client.name, %time, %time == 1 ? "":"s"); | ||||||
| 		lualogic_sendoptions(); | 		lualogic_sendoptions(); | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
| function serverCmdLTR(%client) | function serverCmdLTR(%client) | ||||||
| { | { | ||||||
| 	%client.logicLTR = !%client.logicLTR; | 	%client.logicLTR = !%client.logicLTR; | ||||||
| 	if(%client.logicLTR == false) | 	if(%client.logicLTR == false) | ||||||
| 		commandToClient(%client, 'bottomPrint', "", 0, 1); | 		commandToClient(%client, 'bottomPrint', "", 0, 1); | ||||||
| } | } | ||||||
|  |  | ||||||
| function serverCmdLI(%client) | function serverCmdLI(%client) | ||||||
| { | { | ||||||
| 	if(%client.isAdmin || %client.isSuperAdmin) | 	if(%client.isAdmin || %client.isSuperAdmin) | ||||||
| 		lualogic_send("SINFO;" @ %client); | 		lualogic_send("SINFO;" @ %client); | ||||||
| } | } | ||||||
|  |  | ||||||
| function serverCmdLG(%client, %n) | function serverCmdLG(%client, %n) | ||||||
| { | { | ||||||
| 	if(%client.isAdmin || %client.isSuperAdmin) | 	if(%client.isAdmin || %client.isSuperAdmin) | ||||||
| 	{ | 	{ | ||||||
| 		if(isObject(%player = %client.player)) | 		if(isObject(%player = %client.player)) | ||||||
| 		{ | 		{ | ||||||
| 			%eye = %player.getEyePoint(); | 			%eye = %player.getEyePoint(); | ||||||
| 			%vec = %player.getEyeVector(); | 			%vec = %player.getEyeVector(); | ||||||
| 			%ray = containerRayCast(%eye, vectorAdd(%eye, vectorScale(%vec, 5*getWord(%player.getScale(), 2))), $TypeMasks::FxBrickObjectType); | 			%ray = containerRayCast(%eye, vectorAdd(%eye, vectorScale(%vec, 5*getWord(%player.getScale(), 2))), $TypeMasks::FxBrickObjectType); | ||||||
| 			if(isObject(%hit = firstWord(%ray))) | 			if(isObject(%hit = firstWord(%ray))) | ||||||
| 			{ | 			{ | ||||||
| 				%data = %hit.getDataBlock(); | 				%data = %hit.getDataBlock(); | ||||||
| 				if(%data.isLogicGate) | 				if(%data.isLogicGate) | ||||||
| 					lualogic_send("TEST;" @ %hit @ ";" @ %n); | 					lualogic_send("TEST;" @ %hit @ ";" @ %n); | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Redo
					Redo