<commit_before>﻿# include <Siv3D.hpp>
# include <HamFramework.hpp>

void Main()
{
	P2World world;
	const P2Body line = world.createLine(Vec2(0, 0), Line(-12, 0, 12, 0), P2Material(1, 0.1, 1.0), none, P2BodyType::Static);
	Array<P2Body> bodies;
	
	Array<Polygon> polys;
	Array<Texture> textures;
	HashTable<P2BodyID, size_t> table;
	
	for (const auto& animal : { U"🐘", U"🐧", U"🐐", U"🐤" })
	{
		polys << ImageProcessing::FindExternalContour(Emoji::LoadImage(animal), true)
			.moveBy(-Emoji::ImageSize / 2).simplified(0.8).scale(0.04);

		textures << Texture(Emoji(animal), TextureDesc::Mipped);
	}

	Camera2D camera(Vec2(0, -8), 20);
	size_t index = 0;

	while (System::Update())
	{
		world.update();
		camera.update();
		auto t = camera.createTransformer();

		if (MouseL.down())
		{
			bodies << world.createPolygon(Cursor::PosF(), polys[index], P2Material(0.1, 0.0, 1.0));
			table.emplace(bodies.back().id(), std::exchange(index, Random(polys.size() - 1)));
		}

		for (const auto& body : bodies)
		{
			textures[table[body.id()]].scaled(0.04).rotated(body.getAngle()).drawAt(body.getPos());
		}

		line.draw(Palette::Green);
		textures[index].scaled(0.04).drawAt(Cursor::PosF());

		camera.draw(Palette::Orange);<commit_msg>v0.2.3 リリース準備<commit_after>﻿
# include <Siv3D.hpp> // OpenSiv3D v0.2.3

void Main()
{
	Graphics::SetBackground(ColorF(0.8, 0.9, 1.0));

	const Font font(50);

	const Texture textureCat(Emoji(U"🐈"), TextureDesc::Mipped);

	while (System::Update())
	{
		font(U"Hello, Siv3D!🐣").drawAt(Window::Center(), Palette::Black);

		font(Cursor::Pos()).draw(20, 400, ColorF(0.6));

		textureCat.resized(80).draw(540, 380);

		Circle(Cursor::Pos(), 60).draw(ColorF(1, 0, 0, 0.5));
{'fraction_non_alphanumeric': 0.21179941002949854, 'fraction_numerical': 0.05132743362831858, 'mean_word_length': 5.0355871886121, 'pattern_counts': {'":': 0, '<': 16, '<?xml version=': 0, '>': 10, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2927433', 'n_tokens_mistral': 791, 'n_tokens_neox': 702, 'n_words': 115}