Changeset 933
- Timestamp:
- 05/18/08 11:36:22 (6 months ago)
- Files:
-
- trunk/lib/edit/p_class.txt (modified) (7 diffs)
- trunk/src/init1.c (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/lib/edit/p_class.txt
r923 r933 73 73 A:6:30:5 74 74 M:0:0:0:0 75 E: 75:33:1:176 E: 23:16:1:177 E: 37:4:1:175 E:potion:Berserk Strength:1:1 76 E:sword:Broad Sword~:1:1 77 E:hard armour:Chain Mail~:1:1 78 78 F:BRAVERY_30 | PSEUDO_ID_HEAVY | PSEUDO_ID_IMPROV 79 79 T:Rookie … … 95 95 A:4:40:2 96 96 M:90:1:1:300 97 E: 90:0:1:198 E: 23:4:1:199 E: 70:11:1:197 E:magic book:[Magic for Beginners]:1:1 98 E:sword:Dagger~:1:1 99 E:scroll:Word of Recall:1:1 100 100 F:CUMBER_GLOVE | ZERO_FAIL | BEAM | CHOOSE_SPELLS 101 101 T:Novice … … 180 180 A:4:35:3 181 181 M:91:2:1:350 182 E:91:0:1:1 183 E:21:5:1:1 184 E:75:37:1:1 182 E:prayer book:[Beginners Handbook]:1:1 183 E:hafted:Mace~:1:1 184 # wtf give a 300hp-healing potion to a starting character? 185 E:potion:Healing:1:1 185 186 F:BLESS_WEAPON | ZERO_FAIL | PSEUDO_ID_IMPROV 186 187 T:Believer … … 266 267 A:5:30:4 267 268 M:90:1:5:350 268 E: 90:0:1:1269 E: 23:8:1:1270 E: 36:4:1:1269 E:magic book:[Magic for Beginners]:1:1 270 E:sword:Short Sword~:1:1 271 E:soft armour:Soft Leather Armour~:1:1 271 272 F:CUMBER_GLOVE | CHOOSE_SPELLS | PSEUDO_ID_HEAVY | PSEUDO_ID_IMPROV 272 273 T:Vagabond … … 351 352 A:5:35:4 352 353 M:90:1:3:400 353 E: 90:0:1:1354 E: 23:16:1:1355 E: 19:13:1:1356 E: 17:1:15:20354 E:magic book:[Magic for Beginners]:1:1 355 E:sword:Broad Sword~:1:1 356 E:bow:Long Bow~:1:1 357 E:arrow:Arrow~:15:20 357 358 F:CUMBER_GLOVE | EXTRA_SHOT | CHOOSE_SPELLS | PSEUDO_ID_IMPROV 358 359 T:Runner … … 437 438 A:5:30:5 438 439 M:91:2:1:400 439 E: 91:0:1:1440 E: 23:16:1:1441 E: 70:37:1:1440 E:prayer book:[Beginners Handbook]:1:1 441 E:sword:Broad Sword~:1:1 442 E:scroll:Protection from Evil:1:1 442 443 F:PSEUDO_ID_HEAVY | PSEUDO_ID_IMPROV 443 444 T:Gallant … … 515 516 B:62:99:0:0:0 516 517 B:63:99:0:0:0 517 trunk/src/init1.c
r918 r933 2906 2906 if (!add_text(&pc_ptr->title[cur_title], head, s)) 2907 2907 return (PARSE_ERROR_OUT_OF_MEMORY); 2908 2908 2909 2909 /* Next title */ 2910 2910 cur_title++; … … 2918 2918 else if (buf[0] == 'E') 2919 2919 { 2920 int tval, sval, min, max; 2920 char *tval_s, *sval_s, *end_s; 2921 int tval, sval; 2922 int min, max; 2921 2923 2922 2924 start_item *e_ptr; … … 2928 2930 e_ptr = &pc_ptr->start_items[cur_equip]; 2929 2931 2932 /* Find the beginning of the tval field */ 2933 tval_s = strchr(buf, ':'); 2934 if (!tval_s) return PARSE_ERROR_MISSING_COLON; 2935 *tval_s++ = '\0'; 2936 if (!*tval_s) return PARSE_ERROR_MISSING_FIELD; 2937 2938 /* Now find the beginning of the sval field */ 2939 sval_s = strchr(tval_s, ':'); 2940 if (!sval_s) return PARSE_ERROR_MISSING_COLON; 2941 *sval_s++ = '\0'; 2942 if (!*sval_s) return PARSE_ERROR_MISSING_FIELD; 2943 2944 /* Now find the beginning of the pval field */ 2945 end_s = strchr(sval_s, ':'); 2946 if (!end_s) return PARSE_ERROR_MISSING_COLON; 2947 *end_s++ = '\0'; 2948 if (!*end_s) return PARSE_ERROR_MISSING_FIELD; 2949 2950 /* Now convert the tval into its numeric equivalent */ 2951 if (1 != sscanf(tval_s, "%d", &tval)) 2952 { 2953 tval = tval_find_idx(tval_s); 2954 if (tval == -1) return PARSE_ERROR_UNRECOGNISED_TVAL; 2955 } 2956 2957 /* Now find the sval */ 2958 if (1 != sscanf(sval_s, "%d", &sval)) 2959 { 2960 sval = lookup_sval(tval, sval_s); 2961 if (sval == -1) return PARSE_ERROR_UNRECOGNISED_SVAL; 2962 } 2963 2964 2930 2965 /* Scan for the values */ 2931 if (4 != sscanf(buf+2, "%d:%d:%d:%d", 2932 &tval, &sval, &min, &max)) return (PARSE_ERROR_GENERIC); 2966 if (2 != sscanf(end_s, "%d:%d", &min, &max)) return (PARSE_ERROR_GENERIC); 2933 2967 2934 2968 if ((min < 0) || (max < 0) || (min > 99) || (max > 99)) … … 2946 2980 /* Limit number of starting items */ 2947 2981 if (cur_equip > MAX_START_ITEMS) 2948 return (PARSE_ERROR_ GENERIC);2982 return (PARSE_ERROR_TOO_MANY_ENTRIES); 2949 2983 } 2950 2984
