Mirai's Miscellaneous Misadventures

M47 / models / pepper.c

/* license: AGPLv3 or later */
/* copyright 2023 zamfofex */

/* character design by Esare */

static struct mimimi_layer mimimi_pepper_face_value =
{
	0, -6, 0, 12, 32, 2,
	{
		{12, 12, 24, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x47, 0x00, 0x00, 0x47, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}},
		{12, 12, 24, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x47, 0x00, 0x00, 0x47, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}},
	},
};

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

static struct mimimi_layer mimimi_pepper_shirt_value =
{
	0, 0, 0, 6, 32, 9,
	{
		{8, 4, 16, {0x00, 0x00, 0x05, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x05, 0x00, 0x00}},
		{10, 6, 20, {0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x05, 0x05, 0x00, 0x00, 0x05, 0x05, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00}},
		{10, 6, 1, {0x05}},
		{10, 6, 1, {0x05}},
		{10, 6, 1, {0x05}},
		{10, 6, 1, {0x05}},
		{10, 6, 1, {0x05}},
		{10, 6, 1, {0x05}},
		{10, 6, 1, {0x05}},
	},
};

static struct mimimi_layer mimimi_pepper_jacket_value =
{
	0, 0, 0, 6, 32, 12,
	{
		{8, 4, 16, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
		{10, 6, 20, {0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48, 0x48}},
	},
};

static struct mimimi_layer mimimi_pepper_skirt_value =
{
	0, -11, 0, 6, 32, 4,
	{
		{10, 6, 1, {0x04}},
		{10, 6, 1, {0x04}},
		{10, 8, 1, {0xDE}},
		{10, 8, 1, {0x04}},
	},
};

static struct mimimi_layer mimimi_pepper_upper_sock_value =
{
	0, -5, 0, 4, 32, 2,
	{
		{4, 4, 1, {0x05}},
		{2, 2, 1, {0x05}},
	},
};

static struct mimimi_layer mimimi_pepper_lower_sock_value =
{
	0, 0, 0, 4, 32, 7,
	{
		{2, 2, 1, {0x05}},
		{4, 4, 1, {0x05}},
		{4, 4, 1, {0x05}},
		{4, 4, 1, {0x05}},
		{4, 4, 1, {0x05}},
		{4, 4, 1, {0x05}},
		{2, 2, 1, {0x05}},
	},
};

static struct mimimi_layer mimimi_pepper_shoe_value =
{
	0, -4, 0, 4, 32, 4,
	{
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
		{4, 4, 1, {0x03}},
		{2, 2, 1, {0x03}},
	},
};

static struct mimimi_layer mimimi_pepper_jacket_upper_sleeve_value =
{
	0, 0, 0, 4, 32, 7,
	{
		{2, 2, 1, {0x48}},
		{4, 4, 1, {0x48}},
		{4, 4, 1, {0x48}},
		{4, 4, 8, {0x4D, 0x48, 0x48, 0x48, 0x4D, 0x48, 0x48, 0x48}},
		{4, 4, 8, {0x4D, 0x4D, 0x48, 0x4D, 0x4D, 0x4D, 0x48, 0x4D}},
		{4, 4, 1, {0x4D}},
		{2, 2, 1, {0x4D}},
	},
};

static struct mimimi_layer mimimi_pepper_jacket_lower_sleeve_value =
{
	0, 0, 0, 4, 32, 4,
	{
		{2, 2, 1, {0x4D}},
		{4, 4, 1, {0x4D}},
		{4, 4, 1, {0x4D}},
		{4, 4, 1, {0x4D}},
	},
};

static struct mimimi_layer mimimi_pepper_left_ear_value =
{
	2, 3, -5, 12, 32, 6,
	{
		{2, 2, 1, {0x03}},
		{4, 4, 1, {0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
	},
};

static struct mimimi_layer mimimi_pepper_right_ear_value =
{
	2, 3, 5, 12, 32, 6,
	{
		{2, 2, 1, {0x03}},
		{4, 4, 1, {0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
		{4, 4, 8, {0x03, 0x03, 0x03, 0x08, 0x08, 0x03, 0x03, 0x03}},
	},
};

static struct mimimi_model mimimi_pepper_value =
{
	28,
	{
		/* 0 */ {0, &mimimi_torso_value},
		/* 1 */ {0, &mimimi_head_origin},
		/* 2 */ {0, &mimimi_upper_left_arm_value},
		/* 3 */ {0, &mimimi_upper_right_arm_value},
		/* 4 */ {0, &mimimi_upper_left_leg_value},
		/* 5 */ {0, &mimimi_upper_right_leg_value},
		/* 6 */ {2, &mimimi_lower_left_arm_value},
		/* 7 */ {3, &mimimi_lower_right_arm_value},
		/* 8 */ {4, &mimimi_lower_left_leg_value},
		/* 9 */ {5, &mimimi_lower_right_leg_value},
		/* 10 */ {1, &mimimi_head_value},
		
		/* 11 */ {0, &mimimi_pepper_skirt_value},
		/* 12 */ {0, &mimimi_pepper_shirt_value},
		/* 13 */ {0, &mimimi_pepper_jacket_value},
		/* 14 */ {10, &mimimi_pepper_face_value},
		/* 15 */ {10, &mimimi_pepper_hair_value},
		/* 16 */ {10, &mimimi_pepper_left_ear_value},
		/* 17 */ {10, &mimimi_pepper_right_ear_value},
		/* 18 */ {2, &mimimi_pepper_jacket_upper_sleeve_value},
		/* 19 */ {3, &mimimi_pepper_jacket_upper_sleeve_value},
		/* 20 */ {6, &mimimi_pepper_jacket_lower_sleeve_value},
		/* 21 */ {7, &mimimi_pepper_jacket_lower_sleeve_value},
		/* 22 */ {4, &mimimi_pepper_upper_sock_value},
		/* 23 */ {5, &mimimi_pepper_upper_sock_value},
		/* 24 */ {8, &mimimi_pepper_lower_sock_value},
		/* 25 */ {9, &mimimi_pepper_lower_sock_value},
		/* 26 */ {8, &mimimi_pepper_shoe_value},
		/* 27 */ {9, &mimimi_pepper_shoe_value},
	},
};

struct mimimi_model *mimimi_pepper = &mimimi_pepper_value;