自動拾い機能の実装 / Object Auto-picker/Destroyer [詳細]
#include "angband.h"
データ構造 | |
struct | chain_str |
struct | text_body_type |
struct | command_menu_type |
マクロ定義 | |
#define | MAX_LINELEN 1024 |
#define | FLG_ALL 0 |
#define | FLG_UNAWARE 1 |
#define | FLG_UNIDENTIFIED 2 |
#define | FLG_IDENTIFIED 3 |
#define | FLG_STAR_IDENTIFIED 4 |
#define | FLG_COLLECTING 5 |
#define | FLG_ARTIFACT 6 |
#define | FLG_EGO 7 |
#define | FLG_GOOD 10 |
#define | FLG_NAMELESS 11 |
#define | FLG_AVERAGE 12 |
#define | FLG_WORTHLESS 13 |
#define | FLG_RARE 14 |
#define | FLG_COMMON 15 |
#define | FLG_BOOSTED 16 |
#define | FLG_MORE_DICE 17 |
#define | FLG_MORE_BONUS 18 |
#define | FLG_WANTED 19 |
#define | FLG_UNIQUE 20 |
#define | FLG_HUMAN 21 |
#define | FLG_UNREADABLE 22 |
#define | FLG_REALM1 23 |
#define | FLG_REALM2 24 |
#define | FLG_FIRST 25 |
#define | FLG_SECOND 26 |
#define | FLG_THIRD 27 |
#define | FLG_FOURTH 28 |
#define | FLG_ITEMS 30 |
#define | FLG_WEAPONS 31 |
#define | FLG_FAVORITE_WEAPONS 32 |
#define | FLG_ARMORS 33 |
#define | FLG_MISSILES 34 |
#define | FLG_DEVICES 35 |
#define | FLG_LIGHTS 36 |
#define | FLG_JUNKS 37 |
#define | FLG_CORPSES 38 |
#define | FLG_SPELLBOOKS 39 |
#define | FLG_HAFTED 40 |
#define | FLG_SHIELDS 41 |
#define | FLG_BOWS 42 |
#define | FLG_RINGS 43 |
#define | FLG_AMULETS 44 |
#define | FLG_SUITS 45 |
#define | FLG_CLOAKS 46 |
#define | FLG_HELMS 47 |
#define | FLG_GLOVES 48 |
#define | FLG_BOOTS 49 |
#define | FLG_NOUN_BEGIN FLG_ITEMS |
#define | FLG_NOUN_END FLG_BOOTS |
#define | MATCH_KEY(KEY) |
#define | MATCH_KEY2(KEY) |
#define | ADD_KEY(KEY) (strcat(ptr, KEY), strcat(ptr, " ")) |
#define | ADD_KEY2(KEY) strcat(ptr, KEY) |
#define | ADD_FLG(FLG) (entry->flag[FLG / 32] |= (1L << (FLG % 32))) |
#define | REM_FLG(FLG) (entry->flag[FLG / 32] &= ~(1L << (FLG % 32))) |
#define | ADD_FLG_NOUN(FLG) (ADD_FLG(FLG), prev_flg = FLG) |
#define | IS_FLG(FLG) (entry->flag[FLG / 32] & (1L << (FLG % 32))) |
#define | MAX_AUTOPICK_DEFAULT 200 |
#define | PT_DEFAULT 0 |
#define | PT_WITH_PNAME 1 |
#define | MAX_YANK MAX_LINELEN |
#define | MAX_LINES 3000 |
#define | MARK_MARK 0x01 |
#define | MARK_BY_SHIFT 0x02 |
#define | LSTAT_BYPASS 0x01 |
#define | LSTAT_EXPRESSION 0x02 |
#define | LSTAT_AUTOREGISTER 0x04 |
#define | QUIT_WITHOUT_SAVE 1 |
#define | QUIT_AND_SAVE 2 |
#define | DIRTY_ALL 0x0001 |
#define | DIRTY_MODE 0x0004 |
#define | DIRTY_SCREEN 0x0008 |
#define | DIRTY_NOT_FOUND 0x0010 |
#define | DIRTY_NO_SEARCH 0x0020 |
#define | DIRTY_EXPRESSION 0x0040 |
#define | DIRTY_SKIP_INACTIVE 0x0080 |
#define | DIRTY_INACTIVE 0x0100 |
#define | EC_QUIT 1 |
#define | EC_SAVEQUIT 2 |
#define | EC_REVERT 3 |
#define | EC_HELP 4 |
#define | EC_RETURN 5 |
#define | EC_LEFT 6 |
#define | EC_DOWN 7 |
#define | EC_UP 8 |
#define | EC_RIGHT 9 |
#define | EC_BOL 10 |
#define | EC_EOL 11 |
#define | EC_PGUP 12 |
#define | EC_PGDOWN 13 |
#define | EC_TOP 14 |
#define | EC_BOTTOM 15 |
#define | EC_CUT 16 |
#define | EC_COPY 17 |
#define | EC_PASTE 18 |
#define | EC_BLOCK 19 |
#define | EC_KILL_LINE 20 |
#define | EC_DELETE_CHAR 21 |
#define | EC_BACKSPACE 22 |
#define | EC_SEARCH_STR 23 |
#define | EC_SEARCH_FORW 24 |
#define | EC_SEARCH_BACK 25 |
#define | EC_SEARCH_OBJ 26 |
#define | EC_SEARCH_DESTROYED 27 |
#define | EC_INSERT_OBJECT 28 |
#define | EC_INSERT_DESTROYED 29 |
#define | EC_INSERT_BLOCK 30 |
#define | EC_INSERT_MACRO 31 |
#define | EC_INSERT_KEYMAP 32 |
#define | EC_CL_AUTOPICK 33 |
#define | EC_CL_DESTROY 34 |
#define | EC_CL_LEAVE 35 |
#define | EC_CL_QUERY 36 |
#define | EC_CL_NO_DISP 37 |
#define | EC_OK_COLLECTING 38 |
#define | EC_IK_UNAWARE 39 |
#define | EC_IK_UNIDENTIFIED 40 |
#define | EC_IK_IDENTIFIED 41 |
#define | EC_IK_STAR_IDENTIFIED 42 |
#define | EC_OK_BOOSTED 43 |
#define | EC_OK_MORE_DICE 44 |
#define | EC_OK_MORE_BONUS 45 |
#define | EC_OK_WORTHLESS 46 |
#define | EC_OK_ARTIFACT 47 |
#define | EC_OK_EGO 48 |
#define | EC_OK_GOOD 49 |
#define | EC_OK_NAMELESS 50 |
#define | EC_OK_AVERAGE 51 |
#define | EC_OK_RARE 52 |
#define | EC_OK_COMMON 53 |
#define | EC_OK_WANTED 54 |
#define | EC_OK_UNIQUE 55 |
#define | EC_OK_HUMAN 56 |
#define | EC_OK_UNREADABLE 57 |
#define | EC_OK_REALM1 58 |
#define | EC_OK_REALM2 59 |
#define | EC_OK_FIRST 60 |
#define | EC_OK_SECOND 61 |
#define | EC_OK_THIRD 62 |
#define | EC_OK_FOURTH 63 |
#define | EC_KK_WEAPONS 64 |
#define | EC_KK_FAVORITE_WEAPONS 65 |
#define | EC_KK_ARMORS 66 |
#define | EC_KK_MISSILES 67 |
#define | EC_KK_DEVICES 68 |
#define | EC_KK_LIGHTS 69 |
#define | EC_KK_JUNKS 70 |
#define | EC_KK_CORPSES 71 |
#define | EC_KK_SPELLBOOKS 72 |
#define | EC_KK_SHIELDS 73 |
#define | EC_KK_BOWS 74 |
#define | EC_KK_RINGS 75 |
#define | EC_KK_AMULETS 76 |
#define | EC_KK_SUITS 77 |
#define | EC_KK_CLOAKS 78 |
#define | EC_KK_HELMS 79 |
#define | EC_KK_GLOVES 80 |
#define | EC_KK_BOOTS 81 |
#define | DESCRIPT_HGT 3 |
型定義 | |
typedef struct chain_str | chain_str_type |
変数 | |
static char | KEY_ALL [] = "all" |
static char | KEY_UNAWARE [] = "unaware" |
static char | KEY_UNIDENTIFIED [] = "unidentified" |
static char | KEY_IDENTIFIED [] = "identified" |
static char | KEY_STAR_IDENTIFIED [] = "*identified*" |
static char | KEY_COLLECTING [] = "collecting" |
static char | KEY_ARTIFACT [] = "artifact" |
static char | KEY_EGO [] = "ego" |
static char | KEY_GOOD [] = "good" |
static char | KEY_NAMELESS [] = "nameless" |
static char | KEY_AVERAGE [] = "average" |
static char | KEY_WORTHLESS [] = "worthless" |
static char | KEY_RARE [] = "rare" |
static char | KEY_COMMON [] = "common" |
static char | KEY_BOOSTED [] = "dice boosted" |
static char | KEY_MORE_THAN [] = "more than" |
static char | KEY_DICE [] = " dice" |
static char | KEY_MORE_BONUS [] = "more bonus than" |
static char | KEY_MORE_BONUS2 [] = "" |
static char | KEY_WANTED [] = "wanted" |
static char | KEY_UNIQUE [] = "unique monster's" |
static char | KEY_HUMAN [] = "human" |
static char | KEY_UNREADABLE [] = "unreadable" |
static char | KEY_REALM1 [] = "first realm's" |
static char | KEY_REALM2 [] = "second realm's" |
static char | KEY_FIRST [] = "first" |
static char | KEY_SECOND [] = "second" |
static char | KEY_THIRD [] = "third" |
static char | KEY_FOURTH [] = "fourth" |
static char | KEY_ITEMS [] = "items" |
static char | KEY_WEAPONS [] = "weapons" |
static char | KEY_FAVORITE_WEAPONS [] = "favorite weapons" |
static char | KEY_ARMORS [] = "armors" |
static char | KEY_MISSILES [] = "missiles" |
static char | KEY_DEVICES [] = "magical devices" |
static char | KEY_LIGHTS [] = "lights" |
static char | KEY_JUNKS [] = "junks" |
static char | KEY_CORPSES [] = "corpses or skeletons" |
static char | KEY_SPELLBOOKS [] = "spellbooks" |
static char | KEY_HAFTED [] = "hafted weapons" |
static char | KEY_SHIELDS [] = "shields" |
static char | KEY_BOWS [] = "bows" |
static char | KEY_RINGS [] = "rings" |
static char | KEY_AMULETS [] = "amulets" |
static char | KEY_SUITS [] = "suits" |
static char | KEY_CLOAKS [] = "cloaks" |
static char | KEY_HELMS [] = "helms" |
static char | KEY_GLOVES [] = "gloves" |
static char | KEY_BOOTS [] = "boots" |
static object_type | autopick_last_destroyed_object |
static const char | autoregister_header [] = "?:$AUTOREGISTER" |
static char | MN_QUIT [] = "Quit without save" |
static char | MN_SAVEQUIT [] = "Save & Quit" |
static char | MN_REVERT [] = "Revert all changes" |
static char | MN_HELP [] = "Help" |
static char | MN_MOVE [] = "Move cursor" |
static char | MN_LEFT [] = "Left (Left Arrow key)" |
static char | MN_DOWN [] = "Down (Down Arrow key)" |
static char | MN_UP [] = "Up (Up Arrow key)" |
static char | MN_RIGHT [] = "Right (Right Arrow key)" |
static char | MN_BOL [] = "Beggining of line" |
static char | MN_EOL [] = "End of line" |
static char | MN_PGUP [] = "Page up (PageUp key)" |
static char | MN_PGDOWN [] = "Page down(PageDown key)" |
static char | MN_TOP [] = "Top (Home key)" |
static char | MN_BOTTOM [] = "Bottom (End key)" |
static char | MN_EDIT [] = "Edit" |
static char | MN_CUT [] = "Cut" |
static char | MN_COPY [] = "Copy" |
static char | MN_PASTE [] = "Paste" |
static char | MN_BLOCK [] = "Select block" |
static char | MN_KILL_LINE [] = "Kill rest of line" |
static char | MN_DELETE_CHAR [] = "Delete character" |
static char | MN_BACKSPACE [] = "Backspace" |
static char | MN_RETURN [] = "Return" |
static char | MN_SEARCH [] = "Search" |
static char | MN_SEARCH_STR [] = "Search by string" |
static char | MN_SEARCH_FORW [] = "Search forward" |
static char | MN_SEARCH_BACK [] = "Search backward" |
static char | MN_SEARCH_OBJ [] = "Search by inventory object" |
static char | MN_SEARCH_DESTROYED [] = "Search by destroyed object" |
static char | MN_INSERT [] = "Insert..." |
static char | MN_INSERT_OBJECT [] = "Insert name of choosen object" |
static char | MN_INSERT_DESTROYED [] = "Insert name of destroyed object" |
static char | MN_INSERT_BLOCK [] = "Insert conditional block" |
static char | MN_INSERT_MACRO [] = "Insert a macro definition" |
static char | MN_INSERT_KEYMAP [] = "Insert a keymap definition" |
static char | MN_COMMAND_LETTER [] = "Command letter" |
static char | MN_CL_AUTOPICK [] = "' ' (Auto pick)" |
static char | MN_CL_DESTROY [] = "'!' (Auto destroy)" |
static char | MN_CL_LEAVE [] = "'~' (Leave it on the floor)" |
static char | MN_CL_QUERY [] = "';' (Query to pick up)" |
static char | MN_CL_NO_DISP [] = "'(' (No display on the large map)" |
static char | MN_ADJECTIVE_GEN [] = "Adjective (general)" |
static char | MN_RARE [] = "rare (equipments)" |
static char | MN_COMMON [] = "common (equipments)" |
static char | MN_ADJECTIVE_SPECIAL [] = "Adjective (special)" |
static char | MN_BOOSTED [] = "dice boosted (weapons)" |
static char | MN_MORE_DICE [] = "more than # dice (weapons)" |
static char | MN_MORE_BONUS [] = "more bonus than # (rings etc.)" |
static char | MN_WANTED [] = "wanted (corpse)" |
static char | MN_UNIQUE [] = "unique (corpse)" |
static char | MN_HUMAN [] = "human (corpse)" |
static char | MN_UNREADABLE [] = "unreadable (spellbooks)" |
static char | MN_REALM1 [] = "realm1 (spellbooks)" |
static char | MN_REALM2 [] = "realm2 (spellbooks)" |
static char | MN_FIRST [] = "first (spellbooks)" |
static char | MN_SECOND [] = "second (spellbooks)" |
static char | MN_THIRD [] = "third (spellbooks)" |
static char | MN_FOURTH [] = "fourth (spellbooks)" |
static char | MN_NOUN [] = "Keywords (noun)" |
command_menu_type | menu_data [] |
自動拾い機能の実装 / Object Auto-picker/Destroyer
#define ADD_FLG | ( | FLG | ) | (entry->flag[FLG / 32] |= (1L << (FLG % 32))) |
#define ADD_FLG_NOUN | ( | FLG | ) | (ADD_FLG(FLG), prev_flg = FLG) |
#define ADD_KEY | ( | KEY | ) | (strcat(ptr, KEY), strcat(ptr, " ")) |
#define ADD_KEY2 | ( | KEY | ) | strcat(ptr, KEY) |
#define DESCRIPT_HGT 3 |
#define DIRTY_ALL 0x0001 |
#define DIRTY_EXPRESSION 0x0040 |
#define DIRTY_INACTIVE 0x0100 |
#define DIRTY_MODE 0x0004 |
#define DIRTY_NO_SEARCH 0x0020 |
#define DIRTY_NOT_FOUND 0x0010 |
#define DIRTY_SCREEN 0x0008 |
#define DIRTY_SKIP_INACTIVE 0x0080 |
#define EC_BACKSPACE 22 |
#define EC_BLOCK 19 |
#define EC_BOL 10 |
#define EC_BOTTOM 15 |
#define EC_CL_AUTOPICK 33 |
#define EC_CL_DESTROY 34 |
#define EC_CL_LEAVE 35 |
#define EC_CL_NO_DISP 37 |
#define EC_CL_QUERY 36 |
#define EC_COPY 17 |
#define EC_CUT 16 |
#define EC_DELETE_CHAR 21 |
#define EC_DOWN 7 |
#define EC_EOL 11 |
#define EC_HELP 4 |
#define EC_IK_IDENTIFIED 41 |
#define EC_IK_STAR_IDENTIFIED 42 |
#define EC_IK_UNAWARE 39 |
#define EC_IK_UNIDENTIFIED 40 |
#define EC_INSERT_BLOCK 30 |
#define EC_INSERT_DESTROYED 29 |
#define EC_INSERT_KEYMAP 32 |
#define EC_INSERT_MACRO 31 |
#define EC_INSERT_OBJECT 28 |
#define EC_KILL_LINE 20 |
#define EC_KK_AMULETS 76 |
#define EC_KK_ARMORS 66 |
#define EC_KK_BOOTS 81 |
#define EC_KK_BOWS 74 |
#define EC_KK_CLOAKS 78 |
#define EC_KK_CORPSES 71 |
#define EC_KK_DEVICES 68 |
#define EC_KK_FAVORITE_WEAPONS 65 |
#define EC_KK_GLOVES 80 |
#define EC_KK_HELMS 79 |
#define EC_KK_JUNKS 70 |
#define EC_KK_LIGHTS 69 |
#define EC_KK_MISSILES 67 |
#define EC_KK_RINGS 75 |
#define EC_KK_SHIELDS 73 |
#define EC_KK_SPELLBOOKS 72 |
#define EC_KK_SUITS 77 |
#define EC_KK_WEAPONS 64 |
#define EC_LEFT 6 |
#define EC_OK_ARTIFACT 47 |
#define EC_OK_AVERAGE 51 |
#define EC_OK_BOOSTED 43 |
#define EC_OK_COLLECTING 38 |
#define EC_OK_COMMON 53 |
#define EC_OK_EGO 48 |
#define EC_OK_FIRST 60 |
#define EC_OK_FOURTH 63 |
#define EC_OK_GOOD 49 |
#define EC_OK_HUMAN 56 |
#define EC_OK_MORE_BONUS 45 |
#define EC_OK_MORE_DICE 44 |
#define EC_OK_NAMELESS 50 |
#define EC_OK_RARE 52 |
#define EC_OK_REALM1 58 |
#define EC_OK_REALM2 59 |
#define EC_OK_SECOND 61 |
#define EC_OK_THIRD 62 |
#define EC_OK_UNIQUE 55 |
#define EC_OK_UNREADABLE 57 |
#define EC_OK_WANTED 54 |
#define EC_OK_WORTHLESS 46 |
#define EC_PASTE 18 |
#define EC_PGDOWN 13 |
#define EC_PGUP 12 |
#define EC_QUIT 1 |
#define EC_RETURN 5 |
#define EC_REVERT 3 |
#define EC_RIGHT 9 |
#define EC_SAVEQUIT 2 |
#define EC_SEARCH_BACK 25 |
#define EC_SEARCH_DESTROYED 27 |
#define EC_SEARCH_FORW 24 |
#define EC_SEARCH_OBJ 26 |
#define EC_SEARCH_STR 23 |
#define EC_TOP 14 |
#define EC_UP 8 |
#define FLG_ALL 0 |
#define FLG_AMULETS 44 |
#define FLG_ARMORS 33 |
#define FLG_ARTIFACT 6 |
#define FLG_AVERAGE 12 |
#define FLG_BOOSTED 16 |
#define FLG_BOOTS 49 |
#define FLG_BOWS 42 |
#define FLG_CLOAKS 46 |
#define FLG_COLLECTING 5 |
#define FLG_COMMON 15 |
#define FLG_CORPSES 38 |
#define FLG_DEVICES 35 |
#define FLG_EGO 7 |
#define FLG_FAVORITE_WEAPONS 32 |
#define FLG_FIRST 25 |
#define FLG_FOURTH 28 |
#define FLG_GLOVES 48 |
#define FLG_GOOD 10 |
#define FLG_HAFTED 40 |
#define FLG_HELMS 47 |
#define FLG_HUMAN 21 |
#define FLG_IDENTIFIED 3 |
#define FLG_ITEMS 30 |
#define FLG_JUNKS 37 |
#define FLG_LIGHTS 36 |
#define FLG_MISSILES 34 |
#define FLG_MORE_BONUS 18 |
#define FLG_MORE_DICE 17 |
#define FLG_NAMELESS 11 |
#define FLG_NOUN_BEGIN FLG_ITEMS |
#define FLG_NOUN_END FLG_BOOTS |
#define FLG_RARE 14 |
#define FLG_REALM1 23 |
#define FLG_REALM2 24 |
#define FLG_RINGS 43 |
#define FLG_SECOND 26 |
#define FLG_SHIELDS 41 |
#define FLG_SPELLBOOKS 39 |
#define FLG_STAR_IDENTIFIED 4 |
#define FLG_SUITS 45 |
#define FLG_THIRD 27 |
#define FLG_UNAWARE 1 |
#define FLG_UNIDENTIFIED 2 |
#define FLG_UNIQUE 20 |
#define FLG_UNREADABLE 22 |
#define FLG_WANTED 19 |
#define FLG_WEAPONS 31 |
#define FLG_WORTHLESS 13 |
#define IS_FLG | ( | FLG | ) | (entry->flag[FLG / 32] & (1L << (FLG % 32))) |
#define LSTAT_AUTOREGISTER 0x04 |
#define LSTAT_BYPASS 0x01 |
#define LSTAT_EXPRESSION 0x02 |
#define MARK_BY_SHIFT 0x02 |
#define MARK_MARK 0x01 |
#define MATCH_KEY | ( | KEY | ) |
#define MATCH_KEY2 | ( | KEY | ) |
#define MAX_AUTOPICK_DEFAULT 200 |
#define MAX_LINELEN 1024 |
#define MAX_LINES 3000 |
#define MAX_YANK MAX_LINELEN |
#define PT_DEFAULT 0 |
#define PT_WITH_PNAME 1 |
#define QUIT_AND_SAVE 2 |
#define QUIT_WITHOUT_SAVE 1 |
#define REM_FLG | ( | FLG | ) | (entry->flag[FLG / 32] &= ~(1L << (FLG % 32))) |
typedef struct chain_str chain_str_type |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void autopick_alter_item | ( | int | item, |
bool | destroy | ||
) |
bool autopick_autoregister | ( | object_type * | o_ptr | ) |
void autopick_delayed_alter | ( | void | ) |
|
static |
|
static |
|
static |
cptr autopick_line_from_entry | ( | autopick_type * | entry | ) |
|
static |
void autopick_load_pref | ( | bool | disp_mes | ) |
|
static |
void autopick_pickup_items | ( | cave_type * | c_ptr | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
void do_cmd_edit_autopick | ( | void | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
int is_autopick | ( | object_type * | o_ptr | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
errr process_autopick_file_command | ( | char * | buf | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
command_menu_type menu_data[] |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |