ACTOR BDPlayer : DoomPlayer
{
	// BorderDoom inventory items
	const int MAX_INVENTORY_ITEMS = 10;
	var int user_inventoryInUse[MAX_INVENTORY_ITEMS];
	var int user_inventoryItemType[MAX_INVENTORY_ITEMS];
	var int user_inventoryDamage[MAX_INVENTORY_ITEMS];
	var int user_inventoryAccuracy[MAX_INVENTORY_ITEMS];
	var int user_inventoryBulletCount[MAX_INVENTORY_ITEMS];
	var int user_inventoryFirerate[MAX_INVENTORY_ITEMS];
	var int user_inventoryClipSize[MAX_INVENTORY_ITEMS];
	var int user_inventoryRecoil[MAX_INVENTORY_ITEMS];
	var int user_inventoryLevel[MAX_INVENTORY_ITEMS];
	var int user_inventoryValue[MAX_INVENTORY_ITEMS];

	// BorderDoom equipped items
	const int MAX_EQUIPPED_ITEMS = 3;
	var int user_equippedInUse[MAX_EQUIPPED_ITEMS];
	var int user_equippedItemType[MAX_EQUIPPED_ITEMS];
	var int user_equippedDamage[MAX_EQUIPPED_ITEMS];
	var int user_equippedAccuracy[MAX_EQUIPPED_ITEMS];
	var int user_equippedBulletCount[MAX_EQUIPPED_ITEMS];
	var int user_equippedFirerate[MAX_EQUIPPED_ITEMS];
	var int user_equippedClipSize[MAX_EQUIPPED_ITEMS];
	var int user_equippedRecoil[MAX_EQUIPPED_ITEMS];
	var int user_equippedLevel[MAX_EQUIPPED_ITEMS];
	var int user_equippedValue[MAX_EQUIPPED_ITEMS];

	// BorderDoom equipped shield
	var int user_shieldEquipped;	// if player has a shield equipped
	var int user_shieldCapacity;	// maximum shield value
	var int user_shieldChargePerSecond;	// how many shield points are restored per second
	var int user_shieldReloadDelay;	// pause in seconds after shield was damaged before recharge begins
	var int user_shieldLevel;
	var int user_shieldValue;

	Player.StartItem "BDFist"
	Player.StartItem "Clip", 100

	States
	{
		// info about player melee/missile states: https://forum.zdoom.org/viewtopic.php?p=759626#p759626
		// basically: Melee: flash state, Missile: non flash state.
		Melee:
			PLAY F 1	// small wait is necessary to receive light helper item (if applicable)
			TNT1 A 0 A_JumpIfInventory("BDDemonStaffSuckLight", 1, "MeleeDemonStuffSuck")
			PLAY F 2 BRIGHT Light("ZOMBIEATK")
			Goto Missile
		MeleeDemonStuffSuck:
			PLAY E 12 Light("DEMONSTAFFSUCK")
			Goto Missile
	}
}
