<ClCompile Include="..\..\src\mind\mind-mage.c" />\r
<ClCompile Include="..\..\src\mind\racial-kutar.c" />\r
<ClCompile Include="..\..\src\mind\stances-table.c" />\r
+ <ClCompile Include="..\..\src\object-hook\hook-perception.c" />\r
<ClCompile Include="..\..\src\player\bad-status-setter.c" />\r
<ClCompile Include="..\..\src\spell-kind\spells-curse-removal.c" />\r
<ClCompile Include="..\..\src\spell-kind\spells-perception.c" />\r
<ClInclude Include="..\..\src\mspell\mspells1.h" />\r
<ClInclude Include="..\..\src\mspell\mspells2.h" />\r
<ClInclude Include="..\..\src\mspell\mspells3.h" />\r
+ <ClInclude Include="..\..\src\object-hook\hook-perception.h" />\r
<ClInclude Include="..\..\src\player\bad-status-setter.h" />\r
<ClInclude Include="..\..\src\player\special-defense-types.h" />\r
<ClInclude Include="..\..\src\spell-kind\spells-curse-removal.h" />\r
<ClCompile Include="..\..\src\spell\spell-info.c">
<Filter>spell</Filter>
</ClCompile>
+ <ClCompile Include="..\..\src\object-hook\hook-perception.c">
+ <Filter>object-hook</Filter>
+ </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\src\cmd\cmd-basic.h">
<ClInclude Include="..\..\src\spell\spell-info.h">
<Filter>spell</Filter>
</ClInclude>
+ <ClInclude Include="..\..\src\object-hook\hook-perception.h">
+ <Filter>object-hook</Filter>
+ </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="..\..\src\wall.bmp" />
<Filter Include="cmd-building">
<UniqueIdentifier>{6982e0e0-d2db-422e-8e92-77b1276e4030}</UniqueIdentifier>
</Filter>
+ <Filter Include="object-hook">
+ <UniqueIdentifier>{e466c69b-eaf4-4110-bc9d-e865b36cc732}</UniqueIdentifier>
+ </Filter>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\..\src\angband.rc" />
object-enchant/trg-types.h \
object-enchant/vorpal-weapon.c object-enchant/vorpal-weapon.h \
\
+ object-hook/hook-perception.c object-hook/hook-perception.h \
+ \
perception/identification.c perception/identification.h \
perception/object-perception.c perception/object-perception.h \
perception/simple-perception.c perception/simple-perception.h \
--- /dev/null
+#include "object-hook/hook-perception.h"
+#include "object/object-hook.h"
+#include "perception/object-perception.h"
+#include "system/object-type-definition.h"
+
+/*!
+ * @brief アイテムが並の価値のアイテムかどうか判定する /
+ * Check if an object is nameless weapon or armour
+ * @param o_ptr 判定するアイテムの情報参照ポインタ
+ * @return 並ならばTRUEを返す
+ */
+bool item_tester_hook_nameless_weapon_armour(player_type *player_ptr, object_type *o_ptr)
+{
+ /* Unused */
+ (void)player_ptr;
+
+ /* Require weapon or armour */
+ if (!object_is_weapon_armour_ammo(player_ptr, o_ptr))
+ return FALSE;
+
+ /* Require nameless object if the object is well known */
+ if (object_is_known(o_ptr) && !object_is_nameless(player_ptr, o_ptr))
+ return FALSE;
+
+ return TRUE;
+}
+
+/*!
+ * @brief アイテムが鑑定済みかを判定する /
+ * @param o_ptr 判定するアイテムの情報参照ポインタ
+ * @return 実際に鑑定済みならばTRUEを返す
+ */
+bool item_tester_hook_identify(player_type *player_ptr, object_type *o_ptr)
+{
+ /* Unused */
+ (void)player_ptr;
+
+ return (bool)!object_is_known(o_ptr);
+}
+
+/*!
+ * @brief アイテムが鑑定済みの武器防具かを判定する /
+ * @param o_ptr 判定するアイテムの情報参照ポインタ
+ * @return 実際に鑑定済みならばTRUEを返す
+ */
+bool item_tester_hook_identify_weapon_armour(player_type *player_ptr, object_type *o_ptr)
+{
+ /* Unused */
+ (void)player_ptr;
+
+ if (object_is_known(o_ptr))
+
+ return FALSE;
+ return object_is_weapon_armour_ammo(player_ptr, o_ptr);
+}
+
+/*!
+ * @brief アイテムが*鑑定*済みかを判定する /
+ * @param o_ptr 判定するアイテムの情報参照ポインタ
+ * @return 実際に鑑定済みならばTRUEを返す
+ */
+bool item_tester_hook_identify_fully(player_type *player_ptr, object_type *o_ptr)
+{
+ /* Unused */
+ (void)player_ptr;
+
+ return (bool)(!object_is_known(o_ptr) || !object_is_fully_known(o_ptr));
+}
+
+/*!
+ * @brief アイテムが*鑑定*済みの武器防具かを判定する /
+ * @param o_ptr 判定するアイテムの情報参照ポインタ
+ * @return 実際に鑑定済みならばTRUEを返す
+ */
+bool item_tester_hook_identify_fully_weapon_armour(player_type *player_ptr, object_type *o_ptr)
+{
+ /* Unused */
+ (void)player_ptr;
+
+ if (!item_tester_hook_identify_fully(player_ptr, o_ptr))
+ return FALSE;
+
+ return object_is_weapon_armour_ammo(player_ptr, o_ptr);
+}
--- /dev/null
+#pragma once
+
+#include "system/angband.h"
+
+bool item_tester_hook_nameless_weapon_armour(player_type *player_ptr, object_type *o_ptr);
+bool item_tester_hook_identify(player_type *player_ptr, object_type *o_ptr);
+bool item_tester_hook_identify_weapon_armour(player_type *player_ptr, object_type *o_ptr);
+bool item_tester_hook_identify_fully(player_type *player_ptr, object_type *o_ptr);
+bool item_tester_hook_identify_fully_weapon_armour(player_type *player_ptr, object_type *o_ptr);
}
/*!
- * @brief アイテムが並の価値のアイテムかどうか判定する /
- * Check if an object is nameless weapon or armour
- * @param o_ptr 判定するアイテムの情報参照ポインタ
- * @return 並ならばTRUEを返す
- */
-bool item_tester_hook_nameless_weapon_armour(player_type *player_ptr, object_type *o_ptr)
-{
- /* Unused */
- (void)player_ptr;
-
- /* Require weapon or armour */
- if (!object_is_weapon_armour_ammo(player_ptr, o_ptr))
- return FALSE;
-
- /* Require nameless object if the object is well known */
- if (object_is_known(o_ptr) && !object_is_nameless(player_ptr, o_ptr))
- return FALSE;
-
- return TRUE;
-}
-
-/*!
- * @brief アイテムが鑑定済みかを判定する /
- * @param o_ptr 判定するアイテムの情報参照ポインタ
- * @return 実際に鑑定済みならばTRUEを返す
- */
-bool item_tester_hook_identify(player_type *player_ptr, object_type *o_ptr)
-{
- /* Unused */
- (void)player_ptr;
-
- return (bool)!object_is_known(o_ptr);
-}
-
-/*!
- * @brief アイテムが鑑定済みの武器防具かを判定する /
- * @param o_ptr 判定するアイテムの情報参照ポインタ
- * @return 実際に鑑定済みならばTRUEを返す
- */
-bool item_tester_hook_identify_weapon_armour(player_type *player_ptr, object_type *o_ptr)
-{
- /* Unused */
- (void)player_ptr;
-
- if (object_is_known(o_ptr))
-
- return FALSE;
- return object_is_weapon_armour_ammo(player_ptr, o_ptr);
-}
-
-/*!
- * @brief アイテムが*鑑定*済みかを判定する /
- * @param o_ptr 判定するアイテムの情報参照ポインタ
- * @return 実際に鑑定済みならばTRUEを返す
- */
-bool item_tester_hook_identify_fully(player_type *player_ptr, object_type *o_ptr)
-{
- /* Unused */
- (void)player_ptr;
-
- return (bool)(!object_is_known(o_ptr) || !object_is_fully_known(o_ptr));
-}
-
-/*!
- * @brief アイテムが*鑑定*済みの武器防具かを判定する /
- * @param o_ptr 判定するアイテムの情報参照ポインタ
- * @return 実際に鑑定済みならばTRUEを返す
- */
-bool item_tester_hook_identify_fully_weapon_armour(player_type *player_ptr, object_type *o_ptr)
-{
- /* Unused */
- (void)player_ptr;
-
- if (!item_tester_hook_identify_fully(player_ptr, o_ptr))
- return FALSE;
-
- return object_is_weapon_armour_ammo(player_ptr, o_ptr);
-}
-
-/*!
* @brief 魔力充填が可能なアイテムかどうか判定する /
* Hook for "get_item()". Determine if something is rechargable.
* @param o_ptr 判定するアイテムの情報参照ポインタ
bool item_tester_hook_melee_ammo(player_type *player_ptr, object_type *o_ptr);
bool item_tester_hook_weapon_except_bow(player_type *player_ptr, object_type *o_ptr);
bool item_tester_hook_cursed(player_type *player_ptr, object_type *o_ptr);
-bool item_tester_hook_nameless_weapon_armour(player_type *player_ptr, object_type *o_ptr);
-bool item_tester_hook_identify(player_type *player_ptr, object_type *o_ptr);
-bool item_tester_hook_identify_weapon_armour(player_type *player_ptr, object_type *o_ptr);
-bool item_tester_hook_identify_fully(player_type *player_ptr, object_type *o_ptr);
-bool item_tester_hook_identify_fully_weapon_armour(player_type *player_ptr, object_type *o_ptr);
bool item_tester_learn_spell(player_type *player_ptr, object_type *o_ptr);
bool item_tester_high_level_book(object_type *o_ptr);
#include "inventory/player-inventory.h"
#include "io/write-diary.h"
#include "object-enchant/special-object-flags.h"
+#include "object-hook/hook-perception.h"
#include "object/item-use-flags.h"
#include "object/object-flavor.h"
#include "object/object-hook.h"
#include "object-enchant/special-object-flags.h"
#include "object-enchant/tr-types.h"
#include "object-enchant/trc-types.h"
+#include "object-hook/hook-perception.h"
#include "object/item-use-flags.h"
#include "object/object-flavor.h"
#include "object/object-generator.h"