コード例 #1
0
ファイル: inventory.cpp プロジェクト: ChunHungLiu/FreeFT
	ActorInventory::ActorInventory(const XMLNode &node)
		:Inventory(node), m_weapon(Item::dummyWeapon()), m_dummy_weapon(Item::dummyWeapon()), m_armour(Item::dummyArmour()), m_ammo{Item::dummyAmmo(), 0} {
		if(!node)
			return;

		XMLNode weapon_node = node.child("weapon");
		XMLNode armour_node = node.child("armour");
		XMLNode ammo_node = node.child("ammo");

		if(weapon_node)
			m_weapon = Item(findProto(weapon_node.attrib("proto_id"), ProtoId::item_weapon));
		if(armour_node)
			m_armour = Item(findProto(armour_node.attrib("proto_id"), ProtoId::item_armour));
		if(ammo_node) {
			Item ammo(findProto(ammo_node.attrib("proto_id"), ProtoId::item_ammo));
			int count = ammo_node.attrib<int>("count");
			int id = add(ammo, count);
			equip(id, count);
		}
	}
コード例 #2
0
ファイル: item.cpp プロジェクト: dreamsxin/FreeFT
	const Item Item::dummyWeapon() {
		return Item(findProto("_dummy_weapon", ProtoId::item_weapon));
	}
コード例 #3
0
ファイル: item.cpp プロジェクト: dreamsxin/FreeFT
	const Item Item::dummyAmmo() {
		return Item(findProto("_dummy_ammo", ProtoId::item_ammo));
	}
コード例 #4
0
ファイル: item.cpp プロジェクト: dreamsxin/FreeFT
	const Item Item::dummyArmour() {
		return Item(findProto("_dummy_armour", ProtoId::item_armour));
	}
コード例 #5
0
ファイル: item.cpp プロジェクト: dreamsxin/FreeFT
	const Item Item::dummy() {
		return Item(findProto("_dummy_item", ProtoId::item));
	}