<commit_before>#include "Game/Pickups.h"

using namespace Wulf;

std::map<Pickup, PickupData> pickups;

PickupData::PickupData(StaticSprites::StaticSprite s)
	: Sprite(s)
	, Health(0), Ammo(0), Score(0), Weapon(Weapon::None)
{
}

Pickup Wulf::SpriteToPickup(StaticSprites::StaticSprite s)
{
	switch (s) {
	case StaticSprites::FOOD_TURKEY:
		return Pickup::Food;
	case StaticSprites::GUN_AMMO:
		return Pickup::Ammo;
	// TODO - Everything else
	default:
		return Pickup::None;
	}
}

void setupSprites()
{
	// Serious hate.
	{
		PickupData p(StaticSprites::FOOD_TURKEY);
		p.Health = 10;
		pickups.emplace(
			Pickup::Food,
			p
		);
	}
	{
		PickupData p(StaticSprites::GUN_AMMO);
		p.Ammo = 10;
		pickups.emplace(
			Pickup::Ammo,
			p
		);
	}
}

PickupData* Wulf::GetPickup(Pickup pickup)
{
	static bool setup = false;
	if (!setup) {
		setup = true;
		setupSprites();
	}
	auto& ret = pickups.find(pickup);
	if (ret != pickups.end())
		return &ret->second;
	return nullptr;
}<commit_msg>throw a few more pickups in there<commit_after>#include "Game/Pickups.h"

using namespace Wulf;

std::map<Pickup, PickupData> pickups;

PickupData::PickupData(StaticSprites::StaticSprite s)
	: Sprite(s)
	, Health(0), Ammo(0), Score(0), Weapon(Weapon::None)
{
}

Pickup Wulf::SpriteToPickup(StaticSprites::StaticSprite s)
{
	switch (s) {
	case StaticSprites::FOOD_TURKEY:
		return Pickup::Food;
	case StaticSprites::GUN_AMMO:
		return Pickup::Ammo;
	// TODO - Everything else
	default:
		return Pickup::None;
	}
}

void setupSprites()
{
	// Serious hate.
	{
		PickupData p(StaticSprites::FOOD_TURKEY);
		p.Health = 10;
		pickups.emplace(
			Pickup::Food,
			p
		);
	}
	{
		PickupData p(StaticSprites::GUN_AMMO);
		p.Ammo = 8;
		pickups.emplace(
			Pickup::Ammo,
			p
		);
	}
	{
		PickupData p(StaticSprites::GUN_SMG);
		p.Weapon = Weapon::Smg;
		pickups.emplace(
			Pickup::Smg,
			p
		);
	}
	{
		PickupData p(StaticSprites::TREASURE_CHEST);
		p.Score = 1000;
		pickups.emplace(
			Pickup::Chest,
			p
		);
	}
	{
		PickupData p(StaticSprites::TREASURE_CHALICE);
		p.Score = 100;
		pickups.emplace(
			Pickup::Chalice,
			p
		);
	}
	// gruel is 4hp
	// blood is 1hp if < 11hp
	// medkit is 25 hp
	95 - 70
}

PickupData* Wulf::GetPickup(Pickup pickup)
{
	static bool setup = false;
	if (!setup) {
		setup = true;
		setupSprites();
	}
	auto& ret = pickups.find(pickup);
	if (ret != pickups.end())
		return &ret->second;
	return nullptr;
}
{'fraction_non_alphanumeric': 0.14834710743801652, 'fraction_numerical': 0.012396694214876033, 'mean_word_length': 3.9610655737704916, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 7, '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': '2057050', 'n_tokens_mistral': 1182, 'n_tokens_neox': 1035, 'n_words': 189}