Changeset 933

Show
Ignore:
Timestamp:
05/18/08 11:36:22 (5 months ago)
Author:
takkaria
Message:

(#603) Fix birth items after the object list reorder, and move to textual tval/sval names.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/lib/edit/p_class.txt

    r923 r933  
    7373A:6:30:5 
    7474M:0:0:0:0 
    75 E:75:33:1:1 
    76 E:23:16:1:1 
    77 E:37:4:1:1 
     75E:potion:Berserk Strength:1:1 
     76E:sword:Broad Sword~:1:1 
     77E:hard armour:Chain Mail~:1:1 
    7878F:BRAVERY_30 | PSEUDO_ID_HEAVY | PSEUDO_ID_IMPROV 
    7979T:Rookie 
     
    9595A:4:40:2 
    9696M:90:1:1:300 
    97 E:90:0:1:1 
    98 E:23:4:1:1 
    99 E:70:11:1:1 
     97E:magic book:[Magic for Beginners]:1:1 
     98E:sword:Dagger~:1:1 
     99E:scroll:Word of Recall:1:1 
    100100F:CUMBER_GLOVE | ZERO_FAIL | BEAM | CHOOSE_SPELLS 
    101101T:Novice 
     
    180180A:4:35:3 
    181181M:91:2:1:350 
    182 E:91:0:1:1 
    183 E:21:5:1:1 
    184 E:75:37:1:1 
     182E:prayer book:[Beginners Handbook]:1:1 
     183E:hafted:Mace~:1:1 
     184# wtf give a 300hp-healing potion to a starting character? 
     185E:potion:Healing:1:1 
    185186F:BLESS_WEAPON | ZERO_FAIL | PSEUDO_ID_IMPROV 
    186187T:Believer 
     
    266267A:5:30:4 
    267268M:90:1:5:350 
    268 E:90:0:1:1 
    269 E:23:8:1:1 
    270 E:36:4:1:1 
     269E:magic book:[Magic for Beginners]:1:1 
     270E:sword:Short Sword~:1:1 
     271E:soft armour:Soft Leather Armour~:1:1 
    271272F:CUMBER_GLOVE | CHOOSE_SPELLS | PSEUDO_ID_HEAVY | PSEUDO_ID_IMPROV 
    272273T:Vagabond 
     
    351352A:5:35:4 
    352353M:90:1:3:400 
    353 E:90:0:1:1 
    354 E:23:16:1:1 
    355 E:19:13:1:1 
    356 E:17:1:15:20 
     354E:magic book:[Magic for Beginners]:1:1 
     355E:sword:Broad Sword~:1:1 
     356E:bow:Long Bow~:1:1 
     357E:arrow:Arrow~:15:20 
    357358F:CUMBER_GLOVE | EXTRA_SHOT | CHOOSE_SPELLS | PSEUDO_ID_IMPROV 
    358359T:Runner 
     
    437438A:5:30:5 
    438439M:91:2:1:400 
    439 E:91:0:1:1 
    440 E:23:16:1:1 
    441 E:70:37:1:1 
     440E:prayer book:[Beginners Handbook]:1:1 
     441E:sword:Broad Sword~:1:1 
     442E:scroll:Protection from Evil:1:1 
    442443F:PSEUDO_ID_HEAVY | PSEUDO_ID_IMPROV 
    443444T:Gallant 
     
    515516B:62:99:0:0:0 
    516517B:63:99:0:0:0 
    517  
  • trunk/src/init1.c

    r918 r933  
    29062906                if (!add_text(&pc_ptr->title[cur_title], head, s)) 
    29072907                        return (PARSE_ERROR_OUT_OF_MEMORY); 
    2908                  
     2908 
    29092909                /* Next title */ 
    29102910                cur_title++; 
     
    29182918        else if (buf[0] == 'E') 
    29192919        { 
    2920                 int tval, sval, min, max; 
     2920                char *tval_s, *sval_s, *end_s; 
     2921                int tval, sval; 
     2922                int min, max; 
    29212923 
    29222924                start_item *e_ptr; 
     
    29282930                e_ptr = &pc_ptr->start_items[cur_equip]; 
    29292931 
     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 
    29302965                /* 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); 
    29332967 
    29342968                if ((min < 0) || (max < 0) || (min > 99) || (max > 99)) 
     
    29462980                /* Limit number of starting items */ 
    29472981                if (cur_equip > MAX_START_ITEMS) 
    2948                         return (PARSE_ERROR_GENERIC); 
     2982                        return (PARSE_ERROR_TOO_MANY_ENTRIES); 
    29492983        } 
    29502984