Mirai's Miscellaneous Misadventures

M30 / models / haruka.c

// copyright 2022 zamfofex
// license: AGPLv3 or later

static struct mimimi_layer mimimi_haruka_face_value =
{
	0, -6, 0, 12, 2,
	{
		{12, 12, 24, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}},
		{12, 12, 24, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}},
	},
};

static struct mimimi_layer mimimi_haruka_hair_value =
{
	0, 1, 0, 20, 14,
	{
		{4, 4, 1, {0xCB}},
		{8, 8, 1, {0xCB}},
		{10, 10, 1, {0xCB}},
		{12, 12, 24, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{14, 14, 28, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{14, 14, 28, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{14, 14, 28, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{14, 14, 28, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{14, 14, 28, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{14, 14, 28, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{16, 16, 32, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{16, 16, 32, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{16, 16, 32, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
		{14, 14, 28, {0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB, 0xCB}},
	},
};

static struct mimimi_layer mimimi_haruka_hair_lace_value =
{
	0, 2, 0, 20, 4,
	{
		{12, 12, 24, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xF5, 0x00, 0x00, 0xF5, 0xF5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}},
		{10, 10, 20, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0x00, 0x00, 0xF5, 0xF5, 0x00, 0x00, 0xF5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}},
		{10, 10, 20, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xF5, 0x00, 0x00, 0xF5, 0xF5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}},
		{10, 10, 20, {0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xF5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xF5, 0x00, 0x00, 0x00, 0x00, 0x00}},
	},
};

static struct mimimi_layer mimimi_haruka_flash_sweater_value =
{
	0, 0, 0, 10, 11,
	{
		{8, 8, 16, {0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00}},
		{10, 10, 20, {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00}},
		{10, 10, 20, {0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00}},
		{10, 10, 20, {0x00, 0x04, 0x00, 0x00, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0x00, 0x00, 0x04, 0x00}},
		{10, 10, 20, {0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD}},
		{10, 10, 20, {0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD}},
		{10, 10, 20, {0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD}},
		{10, 10, 20, {0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD, 0xFD}},
		{10, 10, 1, {0xFD}},
		{10, 10, 1, {0xFD}},
		{10, 10, 1, {0xFD}},
		{10, 10, 1, {0xFD}},
	},
};

static struct mimimi_layer mimimi_haruka_flash_skirt_value =
{
	0, -11, 0, 10, 4,
	{
		{8, 8, 16, {0x73, 0xF5, 0x73, 0x73, 0xF5, 0x73, 0x73, 0x0A, 0x0A, 0x73, 0x73, 0xF5, 0x73, 0x73, 0xF5, 0x73}},
		{8, 8, 1, {0xF5}},
		{8, 8, 1, {0xF5}},
		{8, 8, 1, {0xF5}},
	},
};

static struct mimimi_layer mimimi_haruka_flash_stocking_value =
{
	0, -1, 0, 4, 12,
	{
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{4, 4, 1, {0xC1}},
		{2, 2, 1, {0xC1}},
	},
};

static struct mimimi_layer mimimi_haruka_flash_left_sandal_value =
{
	0, -8, 0, 4, 5,
	{
		{4, 4, 1, {0x04}},
		{4, 4, 8, {0x04, 0x04, 0x00, 0x04, 0x04, 0x00, 0x04, 0x04}},
		{4, 4, 8, {0xC5, 0x00, 0x04, 0x00, 0x04, 0x04, 0x00, 0xC5}},
		{2, 2, 1, {0x04}},
	},
};

static struct mimimi_layer mimimi_haruka_flash_right_sandal_value =
{
	0, -8, 0, 4, 5,
	{
		{4, 4, 1, {0x04}},
		{4, 4, 8, {0x04, 0x04, 0x00, 0x04, 0x04, 0x00, 0x04, 0x04}},
		{4, 4, 8, {0xC5, 0x00, 0x04, 0x04, 0x00, 0x04, 0x00, 0xC5}},
		{2, 2, 1, {0x04}},
	},
};

static struct mimimi_layer mimimi_haruka_flash_sweater_sleeve_value =
{
	0, -2, 0, 10, 8,
	{
		{4, 4, 1, {0xFD}},
		{4, 4, 1, {0xFD}},
		{4, 4, 1, {0xFD}},
		{4, 4, 1, {0xFD}},
		{4, 4, 1, {0xFD}},
		{4, 4, 1, {0xFD}},
		{4, 4, 1, {0xFD}},
		{4, 4, 1, {0xFD}},
	},
};

struct mimimi_layer *mimimi_haruka_face = &mimimi_haruka_face_value;
struct mimimi_layer *mimimi_haruka_hair = &mimimi_haruka_hair_value;
struct mimimi_layer *mimimi_haruka_hair_lace = &mimimi_haruka_hair_lace_value;
struct mimimi_layer *mimimi_haruka_flash_sweater = &mimimi_haruka_flash_sweater_value;
struct mimimi_layer *mimimi_haruka_flash_skirt = &mimimi_haruka_flash_skirt_value;
struct mimimi_layer *mimimi_haruka_flash_stocking = &mimimi_haruka_flash_stocking_value;
struct mimimi_layer *mimimi_haruka_flash_left_sandal = &mimimi_haruka_flash_left_sandal_value;
struct mimimi_layer *mimimi_haruka_flash_right_sandal = &mimimi_haruka_flash_right_sandal_value;
struct mimimi_layer *mimimi_haruka_flash_sweater_sleeve = &mimimi_haruka_flash_sweater_sleeve_value;

static struct mimimi_model mimimi_haruka_flash_value =
{
	17,
	{
		{0, &mimimi_torso_value},
		{0, &mimimi_head_value},
		{0, &mimimi_left_arm_value},
		{0, &mimimi_right_arm_value},
		{0, &mimimi_left_leg_value},
		{0, &mimimi_right_leg_value},
		
		{0, &mimimi_haruka_flash_sweater_value},
		{0, &mimimi_haruka_flash_skirt_value},
		{1, &mimimi_haruka_face_value},
		{1, &mimimi_haruka_hair_value},
		{1, &mimimi_haruka_hair_lace_value},
		{2, &mimimi_haruka_flash_sweater_sleeve_value},
		{3, &mimimi_haruka_flash_sweater_sleeve_value},
		{4, &mimimi_haruka_flash_stocking_value},
		{4, &mimimi_haruka_flash_left_sandal_value},
		{5, &mimimi_haruka_flash_stocking_value},
		{5, &mimimi_haruka_flash_right_sandal_value},
	},
};

struct mimimi_model *mimimi_haruka_flash = &mimimi_haruka_flash_value;